134 Commits

Author SHA1 Message Date
Alexandre Julliard
87d1a4a329 server: Scale coordinates in get_window_children_from_point based on DPI awareness.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-27 13:32:57 +02:00
Alexandre Julliard
72644bb603 user32: Switch to the window DPI awareness to process WM_GETMINMAXINFO.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-24 20:12:05 +02:00
Alexandre Julliard
0da23418ab user32: Switch to the window DPI awareness in ShowWindow().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-24 20:12:05 +02:00
Alexandre Julliard
87e49000a1 user32: Scale coordinates in Get/SetWindowPlacement() based on DPI awareness.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-24 20:12:05 +02:00
Alexandre Julliard
8de1b2c2ce user32: Scale coordinates in MapWindowPoints() based on DPI awareness.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-24 20:12:05 +02:00
Alexandre Julliard
7068a85604 user32: Scale window dimensions in DeferWindowPos() based on DPI awareness.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-23 12:17:06 +02:00
Alexandre Julliard
4233caa7b8 user32: Scale window dimensions in SetWindowPos() based on DPI awareness.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-23 12:16:48 +02:00
Alexandre Julliard
1373e00400 user32: Return the full MINMAXINFO data from WINPOS_GetMinMaxInfo().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-16 10:38:46 +02:00
Alexandre Julliard
ae7acbfe4b user32: Remove FIXMEs from physical<->logical mapping functions.
Also group them with the other DPI functions.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-13 19:03:27 +02:00
Alexandre Julliard
85f81948de server: Store the surface rectangle in the server.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-11 15:44:15 +02:00
Alexandre Julliard
3cd66cf7b1 user32: Don't copy window bits to or from the dummy surface.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-04 16:07:50 +02:00
Alexandre Julliard
026309888c user32: Only pass the new valid rectangle to the server.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-05 17:19:53 +02:00
Alexandre Julliard
52be6f0ecc user32: Rename rectWindow to window_rect for consistency.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-05 17:03:16 +02:00
Alexandre Julliard
0a75a1b62b user32: Rename rectClient to client_rect for consistency.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-05 17:00:38 +02:00
Alexandre Julliard
e95d0c6849 user32: Take into account the offset between old and new parent in SetParent().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-07 12:00:17 +02:00
Alexandre Julliard
bc956d8aa6 user32: Avoid repeatedly fetching the window rectangles in SetWindowPos.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-07 11:49:17 +02:00
Alexandre Julliard
1f17051028 Revert "user32: SetWindowPos() should check the final window position in screen coords before adding SWP_NOMOVE."
This reverts commit 38a76ecb0386d37d30b06b7947ed52be77ec9f1e.
It has no effect, the coordinates are identical either way.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-06 11:21:57 +02:00
Zebediah Figura
9b2dd2db6a user32: Kill focus before minimizing a window.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-02 14:42:39 +01:00
Huw Davies
9933a0fc86 user32: Initialize length before calling GetWindowPlacement().
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-30 21:30:45 +01:00
Zebediah Figura
292450b07f user32: Calculate a window's minimized size even if it's already minimized.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-18 20:43:35 +02:00
Alexandre Julliard
5b9c69b93f user32: Copy the bits of child windows when the parent has a surface.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-13 11:05:16 +02:00
Alexandre Julliard
4e13c06f3b user32: Add a helper function for copying bits from a window surface.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-13 11:05:15 +02:00
Alexandre Julliard
4f88a57ce7 server: Return the top surface window even when not using OpenGL.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-13 11:05:15 +02:00
Austin English
3b9e49b4d8 user32: Add LogicalToPhysicalPoint/PhysicalToLogicalPoint stubs.
Signed-off-by: Austin English <austinenglish@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-05-19 20:26:34 +02:00
Fabian Maurer
d594ba3322 user32: Only send position-change messages when needed.
Signed-off-by: Fabian Maurer <dark.shadow4@web.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-20 10:43:15 +01:00
Fabian Maurer
997d4ef44f user32: Send WM_NCPAINT and WM_ERASEBKGND when window is shown.
Signed-off-by: Fabian Maurer <dark.shadow4@web.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-20 10:42:37 +01:00
Rodrigo Rivas Costa
fbd9ed0dee user32: Fix error handling in EndDeferWindowPos.
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-17 20:53:53 +01:00
Michael Stefaniuc
bca5acb5ca user32: Use EqualRect() instead of memcmp() to compare RECTs.
Signed-off-by: Michael Stefaniuc <mstefani@redhat.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-21 00:23:55 +09:00
Alexandre Julliard
fb6304119a user32: Add helper functions to get and set the window internal flags.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-13 19:46:30 +09:00
Alexandre Julliard
b4bccfee05 user32: Use the monitor rectangle to position icons on the desktop.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-26 16:56:15 +09:00
Alexandre Julliard
100239d90f user32: Take the arrange flags into account when positioning icon windows.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-26 16:56:15 +09:00
Rodrigo Rivas Costa
5e65b65219 user32: Make DeferWindowPos() fail on invalid window handles.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-11 19:32:12 +09:00
Jacek Caban
da72de967b user32: Allow making window visible by WM_SETREDRAW message. 2015-03-13 21:53:19 +09:00
Drew Ronneberg
f271634296 user32: Do not call SendMessage() to hide a window that is already hidden. 2014-11-21 20:08:33 +09:00
Sebastian Lackner
b43f13f892 user32: Fix invalid argument passed to ExtCreateRegion. 2014-11-03 20:31:10 +09:00
Piotr Caban
7257b62bd1 user32: Try to activate topmost activable window in WINPOS_ActivateOtherWindow. 2014-06-11 16:09:01 +02:00
Ken Thomases
b423532f94 user32: In WINPOS_SysCommandSizeMove(), fix constraining a point to a rect's right and bottom edges. 2013-12-17 16:36:45 +01:00
Ken Thomases
03f8f85dda user32: Respect monitor work area when sizing or moving a top-level window.
This prevents dragging a window's title bar behind a menu bar across the top
of a screen, for example.
2013-12-13 12:36:08 +01:00
Ken Thomases
c7d2bcfb61 user32: Fix mouseRect computation for starting position when sizing window.
The mouseRect is the limit of the mouse position to keep the window between
its minimum and maximum sizes.  The computation was correct if the mouse
started precisely on the window border.  But if the mouse is not exactly at
the border, then the mouse limit has to account for that, because the window
will be resized based on the distance from the starting point.
2013-09-12 11:07:50 +02:00
Alexandre Julliard
e2c61baba0 user32: Send WM_MOVING instead of WM_SIZING when moving a window. 2012-11-26 16:01:30 +01:00
Alexandre Julliard
7fc61f6fea user32: Add some error checking in ScreenToClient and ClientToScreen. 2012-11-14 16:29:49 +01:00
Alexandre Julliard
5dea654317 user32: Properly set last error in MapWindowPoints. 2012-11-14 16:29:48 +01:00
Alexandre Julliard
d2607ff6c9 user32: Force refreshing the non-client area when the window surface is changed. 2012-11-06 16:02:43 +01:00
Alexandre Julliard
49a5db3869 user32: Don't show the icon title for off-screen icons. 2012-10-15 16:17:46 +02:00
Alexandre Julliard
cc7bf355c5 user32: Add support for setting the window surface visible region. 2012-10-09 15:22:56 +02:00
Alexandre Julliard
20768173ba server: Add flags in the set_window_pos request to inform the server about the window surface. 2012-10-09 15:22:14 +02:00
Alexandre Julliard
ddf41276e1 user32: Invalid DCEs when the window surface changes. 2012-10-01 13:17:53 +02:00
Alexandre Julliard
91b0ee56cf user32: Default to the dummy surface if the driver doesn't provide something else. 2012-10-01 13:09:27 +02:00
Alexandre Julliard
7304445a7e user32: Maintain a list of active window surfaces and flush them periodically. 2012-09-06 12:38:13 +02:00
Alexandre Julliard
a5ef549c6e user32: Add support for managing a DIB surface for a window. 2012-09-06 12:35:32 +02:00