http://bugs.winehq.org/show_bug.cgi?id=26736
Summary: SIV window size change does not work Product: Wine Version: 1.3.17 Platform: x86 URL: http://rh-software.com OS/Version: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: -unknown AssignedTo: wine-bugs@winehq.org ReportedBy: ray@pobox.co.uk
When I change the size of a window the size changed is not notified to the program by WM_ENTERSIZEMOVE and WM_EXITSIZEMOVE messages which means the window does not get updated to reflect the size change.
http://bugs.winehq.org/show_bug.cgi?id=26736
--- Comment #1 from ray@pobox.co.uk 2011-04-12 06:48:48 CDT --- Created an attachment (id=34058) --> (http://bugs.winehq.org/attachment.cgi?id=34058) What the window should look like
http://bugs.winehq.org/show_bug.cgi?id=26736
--- Comment #2 from ray@pobox.co.uk 2011-04-12 06:51:38 CDT --- Created an attachment (id=34059) --> (http://bugs.winehq.org/attachment.cgi?id=34059) What it looks line with Wine
http://bugs.winehq.org/show_bug.cgi?id=26736
--- Comment #3 from Alexandre Julliard julliard@winehq.org 2011-04-12 06:54:31 CDT --- You should handle WM_WINDOWPOSCHANGED. We can't send enter/exit notifications when the change is done by the window manager.
http://bugs.winehq.org/show_bug.cgi?id=26736
--- Comment #4 from ray@pobox.co.uk 2011-04-12 10:23:12 CDT --- (In reply to comment #3)
You should handle WM_WINDOWPOSCHANGED. We can't send enter/exit notifications when the change is done by the window manager.
Thank you. I will look into changing this. It looks like he same also the case for WM_SIZING? Looking at http://bugs.winehq.org/show_bug.cgi?id=5941 this seems to have been the case for a long time. WIll it ever get fixed?
There seems to be a problem with AdjustWindowRect(). When I try and process WM_WINDOWPOSCHANGED on Wine the values returned look to be off-by-one and to make it work at all I had to change the code to be as below.
ar->top = 0; ar->left = 0; ar->bottom = 0; ar->right = 0;
if( AdjustWindowRect( ar, svb->style, FALSE ) ) { if( mode & MODE_WINE ) { dr->top -= ar->top + 1; // Client Area positions dr->left -= ar->left + 1; // dr->bottom -= ar->bottom + 1; // dr->right -= ar->right + 1; // } else { dr->top -= ar->top; // Client Area positions dr->left -= ar->left; // dr->bottom -= ar->bottom; // dr->right -= ar->right; // }
http://bugs.winehq.org/show_bug.cgi?id=26736
--- Comment #5 from Alexandre Julliard julliard@winehq.org 2011-04-12 10:32:22 CDT --- (In reply to comment #4)
(In reply to comment #3)
You should handle WM_WINDOWPOSCHANGED. We can't send enter/exit notifications when the change is done by the window manager.
Thank you. I will look into changing this. It looks like he same also the case for WM_SIZING? Looking at http://bugs.winehq.org/show_bug.cgi?id=5941 this seems to have been the case for a long time. WIll it ever get fixed?
It's already fixed in the sense that if you resize the window through Wine, for instance in desktop mode, you get the messages. When the window manager resizes the window we don't get any notice of that fact, so there's no way we can send the messages.
There seems to be a problem with AdjustWindowRect(). When I try and process WM_WINDOWPOSCHANGED on Wine the values returned look to be off-by-one and to make it work at all I had to change the code to be as below.
Please file a separate bug for this, and specify the exact window styles you are using.
http://bugs.winehq.org/show_bug.cgi?id=26736
--- Comment #6 from ray@pobox.co.uk 2011-04-12 13:01:43 CDT ---
Please file a separate bug for this, and specify the exact window styles you are using.
OK I have logged http://bugs.winehq.org/show_bug.cgi?id=26747
http://bugs.winehq.org/show_bug.cgi?id=26736
--- Comment #7 from ray@pobox.co.uk 2011-04-12 13:18:12 CDT ---
It's already fixed in the sense that if you resize the window through Wine, for instance in desktop mode, you get the messages. When the window manager resizes the window we don't get any notice of that fact, so there's no way we can send the messages.
OK about getting the messages when I disable window manager control, but when I do this I don't seem able to get Linux windows to be above Wine windows in the Z order.
Given the WM_WINDOWPOSCHANGED arrives and the program has not requested a size change would it be possible to infer window manager has changed the size and action the delivery of WM_ENTERSIZEMOVE, WM_SIZING and WM_EXITSIZEMOVE messages?
http://bugs.winehq.org/show_bug.cgi?id=26736
--- Comment #8 from Austin English austinenglish@gmail.com 2013-11-13 16:50:56 CST --- This is your friendly reminder that there has been no bug activity for 2 years. Is this still an issue in current (1.7.6 or newer) wine? If so, please attach the terminal output in 1.7.6 (see http://wiki.winehq.org/FAQ#get_log).
https://bugs.winehq.org/show_bug.cgi?id=26736
Austin English austinenglish@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |RESOLVED Resolution|--- |ABANDONED
--- Comment #9 from Austin English austinenglish@gmail.com --- Abandoned.
https://bugs.winehq.org/show_bug.cgi?id=26736
Austin English austinenglish@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #10 from Austin English austinenglish@gmail.com --- Closing.