Ken Thomases : winemac: Call sync_window_position() before show_window() since window frame affects whether it shows.

Alexandre Julliard julliard at winehq.org
Tue Feb 19 13:33:03 CST 2013


Module: wine
Branch: master
Commit: 1561fa41267c9605d304f0b9aaf836769cc63203
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=1561fa41267c9605d304f0b9aaf836769cc63203

Author: Ken Thomases <ken at codeweavers.com>
Date:   Mon Feb 18 21:50:22 2013 -0600

winemac: Call sync_window_position() before show_window() since window frame affects whether it shows.

---

 dlls/winemac.drv/window.c |   22 +++++++++++-----------
 1 files changed, 11 insertions(+), 11 deletions(-)

diff --git a/dlls/winemac.drv/window.c b/dlls/winemac.drv/window.c
index e7ec6c5..3429e7d 100644
--- a/dlls/winemac.drv/window.c
+++ b/dlls/winemac.drv/window.c
@@ -1369,17 +1369,6 @@ void CDECL macdrv_WindowPosChanged(HWND hwnd, HWND insert_after, UINT swp_flags,
             hide_window(data);
     }
 
-    if (new_style & WS_VISIBLE)
-    {
-        if (!data->on_screen || (swp_flags & (SWP_FRAMECHANGED|SWP_STATECHANGED)))
-            set_cocoa_window_properties(data);
-
-        /* layered windows are not shown until their attributes are set */
-        if (!data->on_screen &&
-            (data->layered || !(GetWindowLongW( hwnd, GWL_EXSTYLE ) & WS_EX_LAYERED)))
-            show_window(data);
-    }
-
     /* check if we are currently processing an event relevant to this window */
     if (!thread_data || !thread_data->current_event ||
         thread_data->current_event->window != data->cocoa_window ||
@@ -1391,6 +1380,17 @@ void CDECL macdrv_WindowPosChanged(HWND hwnd, HWND insert_after, UINT swp_flags,
         set_cocoa_window_properties(data);
     }
 
+    if (new_style & WS_VISIBLE)
+    {
+        if (!data->on_screen || (swp_flags & (SWP_FRAMECHANGED|SWP_STATECHANGED)))
+            set_cocoa_window_properties(data);
+
+        /* layered windows are not shown until their attributes are set */
+        if (!data->on_screen &&
+            (data->layered || !(GetWindowLongW( hwnd, GWL_EXSTYLE ) & WS_EX_LAYERED)))
+            show_window(data);
+    }
+
 done:
     release_win_data(data);
 }




More information about the wine-cvs mailing list