Alexandre Julliard : winex11: Don' t update the normal size hints when a window is minimized or maximized.
Alexandre Julliard
julliard at winehq.org
Fri Apr 4 06:21:50 CDT 2008
Module: wine
Branch: master
Commit: cf9d3e3a0030b952f487549ae0429c85c6daf4df
URL: http://source.winehq.org/git/wine.git/?a=commit;h=cf9d3e3a0030b952f487549ae0429c85c6daf4df
Author: Alexandre Julliard <julliard at winehq.org>
Date: Fri Apr 4 11:28:30 2008 +0200
winex11: Don't update the normal size hints when a window is minimized or maximized.
---
dlls/winex11.drv/window.c | 11 ++++++-----
1 files changed, 6 insertions(+), 5 deletions(-)
diff --git a/dlls/winex11.drv/window.c b/dlls/winex11.drv/window.c
index 2953337..e035041 100644
--- a/dlls/winex11.drv/window.c
+++ b/dlls/winex11.drv/window.c
@@ -800,10 +800,11 @@ static void set_size_hints( Display *display, struct x11drv_win_data *data, DWOR
{
XSizeHints* size_hints;
- if ((size_hints = XAllocSizeHints()))
- {
- size_hints->flags = 0;
+ if (!(size_hints = XAllocSizeHints())) return;
+ /* don't update size hints if window is not in normal state */
+ if (!(style & (WS_MINIMIZE | WS_MAXIMIZE)))
+ {
if (data->hwnd != GetDesktopWindow()) /* don't force position of desktop */
{
size_hints->win_gravity = StaticGravity;
@@ -820,9 +821,9 @@ static void set_size_hints( Display *display, struct x11drv_win_data *data, DWOR
size_hints->min_height = size_hints->max_height;
size_hints->flags |= PMinSize | PMaxSize;
}
- XSetWMNormalHints( display, data->whole_window, size_hints );
- XFree( size_hints );
}
+ XSetWMNormalHints( display, data->whole_window, size_hints );
+ XFree( size_hints );
}
More information about the wine-cvs
mailing list