Commit Graph

66 Commits

Author SHA1 Message Date
Alexandre Julliard 700b6182a4 user32: Switch to the window DPI awareness for non-client painting.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-24 20:12:05 +02:00
Alexandre Julliard 3735f36dc9 user32: Fetch client and window rectangles in a single call.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-18 10:09:55 +02:00
Alexandre Julliard 766287ad6a server: Return the surface rect as top clipping rect.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-11 15:45:11 +02:00
Alexandre Julliard b73a50a35e user32: Update RedrawWindow behavior with explicit desktop window handle.
Newer Windows versions behave differently.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-06 20:51:26 +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 3eb0d2868c user32: Consistently print the HDC value in DCE traces.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-08-31 19:13:26 +02:00
Alexandre Julliard e7f30014c3 user32: Always update the visible region for cross-process DCEs.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-24 18:58:30 +02:00
Alexandre Julliard bcbc84e214 user32: Don't exclude clipped children from the copied window bits since they may be up to date.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-20 10:41:43 +02:00
Alexandre Julliard 2999123fed user32: Also disable the DC if the window is destroyed without a ReleaseDC.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-18 20:43:31 +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
Huw Davies a60144ee74 user32: Disable cached DCs once they are released.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-01-26 10:46:22 +01:00
Lauri Kenttä 1d3b9448f6 user32: Fix caret disappearing after scrolling.
The caret needs to be moved along with scrolling even if it's
outside the visible area. Otherwise, when the caret is scrolled
out from the view, the position won't get updated anymore and
the caret will never scroll back again.

The idea is based on the patch by André Hentschel.

Signed-off-by: Lauri Kenttä <lauri.kentta@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-12-02 21:10:12 +01:00
Alexandre Julliard d104891433 user32: Only start reusing DCEs after the cache reached its limit.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-21 09:55:18 +09:00
Alexandre Julliard d341b0c381 user32: Completely free owned DCEs when the corresponding window/class is destroyed.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-21 09:55:03 +09:00
Alexandre Julliard 5f7e4ce642 user32: Fix refcounting of window DCEs.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-21 09:54:01 +09:00
Vincent Povirk 1383012395 user32: Also change rcUpdate when scrolling by more than the window size.
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-21 00:53:51 +09:00
Alistair Leslie-Hughes 5fa0422227 user32: Don't leak region on error.
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-04 18:43:01 +09:00
Alex Henrie 5b53c0b88b user32: Avoid double initialization.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-06 21:59:08 +09:00
Sebastian Lackner b43f13f892 user32: Fix invalid argument passed to ExtCreateRegion. 2014-11-03 20:31:10 +09:00
André Hentschel bdc9b147b9 user32: Use boolean return values in boolean functions. 2014-02-04 11:15:37 +01:00
Alexandre Julliard 04ad06353d user32: Move the common parts of ScrollDC into user32 and the null driver. 2013-04-19 16:16:16 +02:00
Alexandre Julliard 0cc78d97c1 user32: Don't paint to the surface if the window has a pixel format, regardless of the state of the top parent. 2013-02-11 17:49:22 +01:00
Alexandre Julliard ab2cac4815 user32: Fix handling of NULL paint struct in BeginPaint. 2012-11-27 20:52:25 +01:00
Alexandre Julliard 4396a79ede gdi32: Add a DC hook flag to reset the DC state. 2012-10-24 18:24:03 +02:00
Alexandre Julliard 6cda76fd99 user32: Don't free a clip region twice. 2012-10-17 21:40:18 +02:00
Alexandre Julliard 77b9ec8cd6 user32: Don't use the window surface when the pixel format was set. 2012-10-10 12:46:56 +02:00
Alexandre Julliard 72337011db user32: Create a dummy window surface for windows that shouldn't be painted to. 2012-10-01 13:08:51 +02:00
Alexandre Julliard 1a4a1e5323 user32: Check for the need to flush window surfaces every time a window finishes painting. 2012-09-11 20:56:35 +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
Alexandre Julliard 27b0b88a0b gdi32: Add a graphics driver to render windows contents through the DIB engine. 2012-09-06 12:24:25 +02:00
Alexandre Julliard 01c9c1cbc2 gdi32: Let user32 specify the device rectangle when setting the visible region. 2012-09-05 21:56:56 +02:00
Alexandre Julliard 85fed5b194 user32: Invalidate the DCEs while still holding the window lock in SetWindowPos. 2012-08-29 20:10:56 +02:00
Alexandre Julliard f71be05ba7 user32: ScrollWindow should not use a cached DC, unlike ScrollWindowEx. 2012-08-29 12:22:58 +02:00
Marcus Meissner 3fb8a42638 user32: Free the correct dce (Coverity). 2012-08-20 10:54:40 +02:00
Alexandre Julliard f1bf4ea3fc gdi32: Move DC hook private definitions out of wingdi.h. 2012-05-31 12:37:15 +02:00
Alexandre Julliard 1dba866e61 user32: Don't invalidate DCEs for sibling top-level windows since they are not clipped. 2012-04-19 16:34:37 +02:00
Alexandre Julliard 30554d4ef1 user32: Check structure size in GetGUIThreadInfo. 2010-11-16 21:54:03 +01:00
Louis Lenders 6e4e8fb07f user32: UpdateWindow doesn't accept a NULL hwnd. 2010-09-29 11:23:57 +02:00
Alexandre Julliard 9bbfcb5b07 user32: Add support for RTL window layouts in GetUpdateRgn and GetUpdateRect. 2010-09-23 17:50:11 +02:00
Alexandre Julliard 9b693ddadb user32: Use WIN_GetRectangles where possible instead of mapping coordinates explicitly. 2010-09-07 15:11:24 +02:00
Alexandre Julliard 141defbd54 user32: Use WIN_GetRectangles where possible instead of accessing the window structure. 2010-09-07 14:55:42 +02:00
Alexandre Julliard 30d2079574 user32: Set the DC layout to mirrored when the window has the WS_EX_LAYOUTRTL style. 2010-09-02 15:16:39 +02:00
Alexandre Julliard 1472f35e82 gdi32: Replace the SelectVisRgn Wine-specific export by a private entry point. 2010-07-26 18:38:31 +02:00
Alexandre Julliard bde57f0e64 user32: Don't make constants static to avoid compile error without optimization. 2010-07-24 11:17:05 +02:00
Alexandre Julliard f1ea06375d user32: DCX_NORESETATTRS should be applied at DC release time. 2010-07-22 20:00:35 +02:00
Henri Verbeet 2c2e3f8665 user32: Verify we got a valid window handle in GetDCEx(). 2010-05-19 16:57:59 +02:00
Dmitry Timoshkov d6cfc3223e user32: DeleteDC() should allow to delete a DC returned by GetDC(). 2010-02-24 16:03:02 +01:00
Alexandre Julliard 993de4d82f user32: Remove a useless comment. 2010-01-06 09:54:35 +01:00