[Bug 52442] New: WM_SIZING not handled correctly

WineHQ Bugzilla wine-bugs at winehq.org
Sat Jan 22 09:02:11 CST 2022


https://bugs.winehq.org/show_bug.cgi?id=52442

            Bug ID: 52442
           Summary: WM_SIZING not handled correctly
           Product: Wine
           Version: 7.0
          Hardware: x86-64
                OS: Linux
            Status: UNCONFIRMED
          Severity: normal
          Priority: P2
         Component: user32
          Assignee: wine-bugs at winehq.org
          Reporter: hjkl at quantentunnel.de
      Distribution: ---

Created attachment 71714
  --> https://bugs.winehq.org/attachment.cgi?id=71714
Example to reproduce the issue

In case of using the WM_SIZING message to create a "raster" when resizing a
window, resizing is completely prevented.

I attached an example to reproduce the issue. The .zip file contains a Visual
C++ 2019 solution. When running the EXE (x64\Release\Example.exe), it creates a
parent and a child window. The child window has the WS_THICKFRAME style to be
resizable.
Furthermore, it overwrites the WM_SIZING message and manipulates the right
border of the passed RECT to have a raster for the resizing (window width can
only be a multiple of 16 pixels). The example only does this when dragging the
bottom right corner of the child window with the mouse.
In Windows it works fine. In Wine resizing the window doesn't work correctly.

This is the critical code part:

    case WM_SIZING:
        if(wParam==WMSZ_BOTTOMRIGHT) //dragging bottom right corner?
        {
            //create a raster of 16 pixels in X direction by manipulating
RECT::right
            RECT* pRect=(RECT*)lParam;

            pRect->right=pRect->left + ((pRect->right - pRect->left) &
0xfffffff0);
            return TRUE;
        }

-- 
Do not reply to this email, post in Bugzilla using the
above URL to reply.
You are receiving this mail because:
You are watching all bug changes.



More information about the wine-bugs mailing list