winex11: Don't send SC_RESTORE when a maximized window switches to fullscreen.
authorHenri Verbeet <hverbeet@codeweavers.com>
Thu, 4 Oct 2012 11:53:29 +0000 (13:53 +0200)
committerAlexandre Julliard <julliard@winehq.org>
Thu, 4 Oct 2012 12:11:29 +0000 (14:11 +0200)
dlls/winex11.drv/event.c

index 9eedbc5..f908413 100644 (file)
@@ -1065,19 +1065,19 @@ void X11DRV_ConfigureNotify( HWND hwnd, XEvent *xev )
                data->window_rect.bottom - data->window_rect.top, cx, cy );
 
     style = GetWindowLongW( data->hwnd, GWL_STYLE );
-    if ((style & WS_CAPTION) == WS_CAPTION && is_net_wm_state_maximized( event->display, data ))
+    if ((style & WS_CAPTION) == WS_CAPTION)
     {
-        if (!(style & WS_MAXIMIZE))
+        if (is_net_wm_state_maximized( event->display, data ))
         {
-            TRACE( "win %p/%lx is maximized\n", data->hwnd, data->whole_window );
-            release_win_data( data );
-            SendMessageW( data->hwnd, WM_SYSCOMMAND, SC_MAXIMIZE, 0 );
-            return;
+            if (!(style & WS_MAXIMIZE))
+            {
+                TRACE( "win %p/%lx is maximized\n", data->hwnd, data->whole_window );
+                release_win_data( data );
+                SendMessageW( data->hwnd, WM_SYSCOMMAND, SC_MAXIMIZE, 0 );
+                return;
+            }
         }
-    }
-    else
-    {
-        if (style & WS_MAXIMIZE)
+        else if (style & WS_MAXIMIZE)
         {
             TRACE( "window %p/%lx is no longer maximized\n", data->hwnd, data->whole_window );
             release_win_data( data );