From d17afea70f318a43042f6168518a88ce4cbf4af6 Mon Sep 17 00:00:00 2001 From: Nikolay Sivov Date: Wed, 20 May 2009 22:34:48 +0400 Subject: [PATCH] comctl32/tests: A basic test for ListView WM_SETREDRAW. --- dlls/comctl32/tests/listview.c | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/dlls/comctl32/tests/listview.c b/dlls/comctl32/tests/listview.c index 0c6b1390931..1c002d9de35 100644 --- a/dlls/comctl32/tests/listview.c +++ b/dlls/comctl32/tests/listview.c @@ -2215,6 +2215,32 @@ static void test_nosortheader(void) DestroyWindow(hwnd); } +static void test_setredraw(void) +{ + HWND hwnd; + DWORD_PTR style; + DWORD ret; + + hwnd = create_listview_control(0); + ok(hwnd != NULL, "failed to create a listview window\n"); + + /* Passing WM_SETREDRAW to DefWinProc removes WS_VISIBLE. + ListView seems to handle it internally without DefWinProc */ + + /* default value first */ + ret = SendMessage(hwnd, WM_SETREDRAW, TRUE, 0); + expect(0, ret); + /* disable */ + style = GetWindowLongPtr(hwnd, GWL_STYLE); + ok(style & WS_VISIBLE, "Expected WS_VISIBLE to be set\n"); + ret = SendMessage(hwnd, WM_SETREDRAW, FALSE, 0); + expect(0, ret); + style = GetWindowLongPtr(hwnd, GWL_STYLE); + ok(style & WS_VISIBLE, "Expected WS_VISIBLE to be set\n"); + + DestroyWindow(hwnd); +} + START_TEST(listview) { HMODULE hComctl32; @@ -2257,4 +2283,7 @@ START_TEST(listview) test_ownerdata(); test_norecompute(); test_nosortheader(); + test_setredraw(); + + DestroyWindow(hwndparent); } -- 2.11.4.GIT