From 33617af8145b6fadfe41d48968a728ff57b3064b Mon Sep 17 00:00:00 2001 From: Jinoh Kang Date: Mon, 31 Oct 2022 22:30:20 +0900 Subject: [PATCH] server: Don't invalidate the newly exposed child region on the parent if it doesn't clip children. This partly reverts e42eaaaf3a873d29b14f8f3a3617df2d0d4210ca. Signed-off-by: Jinoh Kang --- dlls/user32/tests/msg.c | 4 ---- server/window.c | 6 ++---- 2 files changed, 2 insertions(+), 8 deletions(-) diff --git a/dlls/user32/tests/msg.c b/dlls/user32/tests/msg.c index fb22f6042fe..e36eb7125e6 100644 --- a/dlls/user32/tests/msg.c +++ b/dlls/user32/tests/msg.c @@ -9302,8 +9302,6 @@ static void subtest_swp_paint_regions_( int line, int wrap_toplevel, LPCSTR pare } else { - todo_wine_if( !EqualRect( &rect_old, &rect_new ) && - (extest->style & WS_CLIPCHILDREN) == 0 && !is_composited ) ok( !!rgn_ok, "Parent update region shall match expected region\n" ); } @@ -9365,8 +9363,6 @@ static void subtest_swp_paint_regions_( int line, int wrap_toplevel, LPCSTR pare } else { - todo_wine_if( !EqualRect( &rect_old, &rect_new ) && - (extest->style & WS_CLIPCHILDREN) == 0 && !is_composited ) ok( !!rgn_ok, "Child update region shall match expected region\n" ); } diff --git a/server/window.c b/server/window.c index 5dbe1cd1eb2..f713ed224aa 100644 --- a/server/window.c +++ b/server/window.c @@ -1766,10 +1766,8 @@ static struct region *expose_window( struct window *win, const rectangle_t *old_ offset_region( new_vis_rgn, win->window_rect.left - old_window_rect->left, win->window_rect.top - old_window_rect->top ); - if (is_composited ? union_region( new_vis_rgn, old_vis_rgn, new_vis_rgn ) : - (win->parent->style & WS_CLIPCHILDREN) ? - subtract_region( new_vis_rgn, old_vis_rgn, new_vis_rgn ) : - xor_region( new_vis_rgn, old_vis_rgn, new_vis_rgn )) + if (is_composited ? union_region( new_vis_rgn, old_vis_rgn, new_vis_rgn ) + : subtract_region( new_vis_rgn, old_vis_rgn, new_vis_rgn )) { if (!is_region_empty( new_vis_rgn )) { -- 2.11.4.GIT