comctl32/listview: Don't invalidate when new style is same as old.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com> Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
parent
a602405efd
commit
8e9ea7a8a1
|
@ -11108,14 +11108,13 @@ static void LISTVIEW_UpdateSize(LISTVIEW_INFO *infoPtr)
|
|||
static INT LISTVIEW_StyleChanged(LISTVIEW_INFO *infoPtr, WPARAM wStyleType,
|
||||
const STYLESTRUCT *lpss)
|
||||
{
|
||||
UINT uNewView = lpss->styleNew & LVS_TYPEMASK;
|
||||
UINT uOldView = lpss->styleOld & LVS_TYPEMASK;
|
||||
UINT uNewView, uOldView;
|
||||
UINT style;
|
||||
|
||||
TRACE("(styletype=%lx, styleOld=0x%08x, styleNew=0x%08x)\n",
|
||||
wStyleType, lpss->styleOld, lpss->styleNew);
|
||||
|
||||
if (wStyleType != GWL_STYLE) return 0;
|
||||
if (wStyleType != GWL_STYLE || lpss->styleNew == infoPtr->dwStyle) return 0;
|
||||
|
||||
infoPtr->dwStyle = lpss->styleNew;
|
||||
|
||||
|
@ -11127,6 +11126,9 @@ static INT LISTVIEW_StyleChanged(LISTVIEW_INFO *infoPtr, WPARAM wStyleType,
|
|||
((lpss->styleNew & WS_VSCROLL) == 0))
|
||||
ShowScrollBar(infoPtr->hwndSelf, SB_VERT, FALSE);
|
||||
|
||||
uNewView = lpss->styleNew & LVS_TYPEMASK;
|
||||
uOldView = lpss->styleOld & LVS_TYPEMASK;
|
||||
|
||||
if (uNewView != uOldView)
|
||||
{
|
||||
HIMAGELIST himl;
|
||||
|
|
|
@ -1781,6 +1781,7 @@ static void test_redraw(void)
|
|||
HDC hdc;
|
||||
BOOL res;
|
||||
DWORD r;
|
||||
RECT rect;
|
||||
|
||||
hwnd = create_listview_control(LVS_REPORT);
|
||||
subclass_header(hwnd);
|
||||
|
@ -1838,6 +1839,13 @@ static void test_redraw(void)
|
|||
|
||||
ReleaseDC(hwndparent, hdc);
|
||||
|
||||
/* test setting the window style to what it already was */
|
||||
UpdateWindow(hwnd);
|
||||
SetWindowLongA(hwnd, GWL_STYLE, GetWindowLongA(hwnd, GWL_STYLE));
|
||||
GetUpdateRect(hwnd, &rect, FALSE);
|
||||
ok(rect.left == 0 && rect.top == 0 && rect.right == 0 && rect.bottom == 0,
|
||||
"Expected empty update rect, got %s\n", wine_dbgstr_rect(&rect));
|
||||
|
||||
DestroyWindow(hwnd);
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue