mirror of
https://github.com/reactos/reactos.git
synced 2025-02-22 16:36:33 +00:00
[0.4.12][COMCTL32] Workaround v6 button redraw regressions CORE-13278 & CORE-16093
Most likely not correct, as it breaks comctl32:buttonv6 tests https://reactos.org/testman/compare.php?ids=68146,68147 But greatly improves perceived flickering when hovering with the mouse about buttons in unthemed mode. We still fear that this workaround could break buttons that intend to change their appearance when being hovered. We workaround only the RC, but will leave master affected for now.
This commit is contained in:
parent
ab7f77a021
commit
9513c9bf12
1 changed files with 6 additions and 2 deletions
|
@ -842,7 +842,9 @@ static LRESULT CALLBACK BUTTON_WindowProc(HWND hWnd, UINT uMsg, WPARAM wParam, L
|
||||||
nmhotitem.dwFlags = HICF_ENTERING;
|
nmhotitem.dwFlags = HICF_ENTERING;
|
||||||
SendMessageW(GetParent(hWnd), WM_NOTIFY, nmhotitem.hdr.idFrom, (LPARAM)&nmhotitem);
|
SendMessageW(GetParent(hWnd), WM_NOTIFY, nmhotitem.hdr.idFrom, (LPARAM)&nmhotitem);
|
||||||
|
|
||||||
InvalidateRect(hWnd, NULL, TRUE);
|
theme = GetWindowTheme( hWnd );
|
||||||
|
if (theme)
|
||||||
|
InvalidateRect(hWnd, NULL, TRUE);
|
||||||
}
|
}
|
||||||
|
|
||||||
if(!TrackMouseEvent(&mouse_event) || !(mouse_event.dwFlags&TME_LEAVE))
|
if(!TrackMouseEvent(&mouse_event) || !(mouse_event.dwFlags&TME_LEAVE))
|
||||||
|
@ -896,7 +898,9 @@ static LRESULT CALLBACK BUTTON_WindowProc(HWND hWnd, UINT uMsg, WPARAM wParam, L
|
||||||
nmhotitem.dwFlags = HICF_LEAVING;
|
nmhotitem.dwFlags = HICF_LEAVING;
|
||||||
SendMessageW(GetParent(hWnd), WM_NOTIFY, nmhotitem.hdr.idFrom, (LPARAM)&nmhotitem);
|
SendMessageW(GetParent(hWnd), WM_NOTIFY, nmhotitem.hdr.idFrom, (LPARAM)&nmhotitem);
|
||||||
|
|
||||||
InvalidateRect(hWnd, NULL, TRUE);
|
theme = GetWindowTheme( hWnd );
|
||||||
|
if (theme)
|
||||||
|
InvalidateRect(hWnd, NULL, TRUE);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
#else
|
#else
|
||||||
|
|
Loading…
Reference in a new issue