From: Józef Kucia jkucia@codeweavers.com
This fixes a regression introduced by commit fc14753dc0188a52a05243d5d82c4062b93daaff.
WM_NCCALCSIZE is not handled yet because it initiates loading the driver again.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=45485 Signed-off-by: Józef Kucia jkucia@codeweavers.com ---
Hopefully more acceptable fix.
We could fix WM_NCCALCSIZE by using one the following solutions: * call SystemParametersInfoW() only when strictly necessary in AdjustWindowRectEx(), * avoid calling user drivers in SystemParametersInfo(); the call to user driver is only necessary for SPI_GETSCREENSAVEACTIVE and SPI_SETSCREENSAVEACTIVE.
I'm not sure if there are other better, preferable ways to fix WM_NCCALCSIZE.
--- dlls/user32/desktop.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/dlls/user32/desktop.c b/dlls/user32/desktop.c index d22e732fd5b9..f53b3f6ec0dd 100644 --- a/dlls/user32/desktop.c +++ b/dlls/user32/desktop.c @@ -127,8 +127,9 @@ LRESULT WINAPI DesktopWndProc( HWND hwnd, UINT message, WPARAM wParam, LPARAM lP } return TRUE; } + case WM_NCCALCSIZE: return 0; default: - return 0; /* all other messages are ignored */ + return DefWindowProcW( hwnd, message, wParam, lParam ); } }