I'm pretty sure the user32 patch fixes a bug, but there may be a reason I'm not aware of for not saving/restoring in win32u `process_mouse_message()`.
-- v2: https://gitlab.winehq.org/wine/wine/-/merge_requests/8035
This merge request was approved by Rémi Bernon.
From: Conor McCarthy cmccarthy@codeweavers.com
--- dlls/user32/mdi.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/dlls/user32/mdi.c b/dlls/user32/mdi.c index 05725a29914..f023eb5e39d 100644 --- a/dlls/user32/mdi.c +++ b/dlls/user32/mdi.c @@ -1658,7 +1658,7 @@ void WINAPI CalcChildScroll( HWND hwnd, INT scroll ) { HeapFree( GetProcessHeap(), 0, list ); NtUserShowScrollBar( hwnd, SB_BOTH, FALSE ); - return; + goto done; } if (style & WS_VISIBLE) { @@ -1700,6 +1700,8 @@ void WINAPI CalcChildScroll( HWND hwnd, INT scroll ) } break; } + +done: SetThreadDpiAwarenessContext( context ); }