Module: wine Branch: master Commit: 6b9517a70a18553f588b584826cd9e9b9accfb2a URL: http://source.winehq.org/git/wine.git/?a=commit;h=6b9517a70a18553f588b584826...
Author: Alexandre Julliard julliard@winehq.org Date: Thu May 1 17:45:17 2008 +0200
winex11: Only unmap a window when explicitly hidden, not just when WS_VISIBLE is cleared.
---
dlls/winex11.drv/window.c | 9 ++++++--- 1 files changed, 6 insertions(+), 3 deletions(-)
diff --git a/dlls/winex11.drv/window.c b/dlls/winex11.drv/window.c index 81aa989..f4eb82e 100644 --- a/dlls/winex11.drv/window.c +++ b/dlls/winex11.drv/window.c @@ -2011,9 +2011,12 @@ void X11DRV_SetWindowPos( HWND hwnd, HWND insert_after, UINT swp_flags, if (event_type != ConfigureNotify && event_type != PropertyNotify) event_type = 0; /* ignore other events */
- if (data->mapped && (!(new_style & WS_VISIBLE) || - (!event_type && !is_window_rect_mapped( rectWindow )))) - unmap_window( display, data ); + if (data->mapped) + { + if (((swp_flags & SWP_HIDEWINDOW) && !(new_style & WS_VISIBLE)) || + (!event_type && !is_window_rect_mapped( rectWindow ))) + unmap_window( display, data ); + }
/* don't change position if we are about to minimize or maximize a managed window */ if (!event_type &&