https://git.reactos.org/?p=reactos.git;a=commitdiff;h=0f29b3faa7770c441d084e...
commit 0f29b3faa7770c441d084e4b41ceba555d4181ab Author: jimtabor james.tabor@reactos.org AuthorDate: Tue May 21 16:24:52 2019 -0500 Commit: jimtabor james.tabor@reactos.org CommitDate: Tue May 21 16:24:52 2019 -0500
[NtUser] Fix setting screen size.
Back set change size to the server information metrics.
Fixes CORE-15477. Still more work is required.
Patch based on reactosfanboy original patch. --- win32ss/user/ntuser/display.c | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-)
diff --git a/win32ss/user/ntuser/display.c b/win32ss/user/ntuser/display.c index 6abe5c84a5c..25b1f947014 100644 --- a/win32ss/user/ntuser/display.c +++ b/win32ss/user/ntuser/display.c @@ -830,6 +830,8 @@ UserChangeDisplaySettings( gpsi->Planes = ppdev->gdiinfo.cPlanes; gpsi->BitsPixel = ppdev->gdiinfo.cBitsPixel; gpsi->BitCount = gpsi->Planes * gpsi->BitsPixel; + gpsi->aiSysMet[SM_CXSCREEN] = ppdev->gdiinfo.ulHorzRes; + gpsi->aiSysMet[SM_CYSCREEN] = ppdev->gdiinfo.ulVertRes; if (ppdev->gdiinfo.flRaster & RC_PALETTE) { gpsi->PUSIFlags |= PUSIF_PALETTEDISPLAY; @@ -855,10 +857,13 @@ UserChangeDisplaySettings( //IntHideDesktop(pdesk);
/* Send WM_DISPLAYCHANGE to all toplevel windows */ - UserSendNotifyMessage(HWND_BROADCAST, - WM_DISPLAYCHANGE, - gpsi->BitCount, - MAKELONG(gpsi->aiSysMet[SM_CXSCREEN], gpsi->aiSysMet[SM_CYSCREEN])); + co_IntSendMessageTimeout( HWND_BROADCAST, + WM_DISPLAYCHANGE, + gpsi->BitCount, + MAKELONG(gpsi->aiSysMet[SM_CXSCREEN], gpsi->aiSysMet[SM_CYSCREEN]), + SMTO_NORMAL, + 100, + &ulResult );
ERR("BitCount New %d Orig %d ChkNew %d\n",gpsi->BitCount,OrigBC,ppdev->gdiinfo.cBitsPixel);