From: Dmitry Timoshkov Subject: [1/2] user32/tests: Add some tests to show that WS_CLIPCHILDREN doesn't exclude children from update region. Message-Id: <20150629175352.c0c78b8b.dmitry@baikal.ru> Date: Mon, 29 Jun 2015 17:53:52 +0800 --- dlls/user32/tests/msg.c | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/dlls/user32/tests/msg.c b/dlls/user32/tests/msg.c index a515550..bc9a932 100644 --- a/dlls/user32/tests/msg.c +++ b/dlls/user32/tests/msg.c @@ -6646,6 +6646,20 @@ static void test_paint_messages(void) RedrawWindow( hparent, NULL, 0, RDW_ERASENOW ); ok_sequence( WmEmptySeq, "WmChildPaintNc3", FALSE ); + /* WS_CLIPCHILDREN doesn't exclude children from update region */ + flush_sequence(); + RedrawWindow( hparent, NULL, 0, RDW_INVALIDATE | RDW_ERASE | RDW_NOCHILDREN ); + GetClientRect( hparent, &rect ); + SetRectRgn( hrgn, rect.left, rect.top, rect.right, rect.bottom ); + check_update_rgn( hparent, hrgn ); + flush_events(); + + RedrawWindow( hparent, NULL, 0, RDW_INVALIDATE | RDW_ERASE | RDW_ALLCHILDREN ); + GetClientRect( hparent, &rect ); + SetRectRgn( hrgn, rect.left, rect.top, rect.right, rect.bottom ); + check_update_rgn( hparent, hrgn ); + flush_events(); + /* test RDW_INTERNALPAINT behavior */ flush_sequence(); -- 2.4.5