winex11: Only unmap a window when explicitly hidden, not just when WS_VISIBLE is cleared.

This commit is contained in:
Alexandre Julliard 2008-05-01 17:45:17 +02:00
parent 8a5f578223
commit 6b9517a70a
1 changed files with 6 additions and 3 deletions

View File

@ -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 &&