[gtk/gtk-3-24] [GdkQuartz] Fix two build issues



commit 024cb267dd412a9e1ae6fd63a4f8675d38a60892
Author: John Ralls <jralls ceridwen us>
Date:   Thu Mar 21 16:01:51 2019 -0700

    [GdkQuartz] Fix two build issues
    
    1. NSRect and CGRect aren't toll-free bridged in 32 bit builds.
    2. NSWindowCollectionBehavior(Dis)AllowTiling is defined beginning in 10.11.

 gdk/quartz/gdkdisplay-quartz.c |  2 +-
 gdk/quartz/gdkwindow-quartz.c  | 19 ++++++++++++++-----
 2 files changed, 15 insertions(+), 6 deletions(-)
---
diff --git a/gdk/quartz/gdkdisplay-quartz.c b/gdk/quartz/gdkdisplay-quartz.c
index 30ba921317..ed81f9cc48 100644
--- a/gdk/quartz/gdkdisplay-quartz.c
+++ b/gdk/quartz/gdkdisplay-quartz.c
@@ -469,7 +469,7 @@ gdk_quartz_display_get_monitor_at_window (GdkDisplay *display,
   }
   if (!monitor)
     {
-      GdkRectangle rect = cgrect_to_gdkrect ([nswindow frame]);
+      GdkRectangle rect = cgrect_to_gdkrect (NSRectToCGRect ([nswindow frame]));
       monitor = gdk_display_get_monitor_at_point (display,
                                                  rect.x + rect.width/2,
                                                  rect.y + rect.height /2);
diff --git a/gdk/quartz/gdkwindow-quartz.c b/gdk/quartz/gdkwindow-quartz.c
index 5918fc5fc1..3b0b565de2 100644
--- a/gdk/quartz/gdkwindow-quartz.c
+++ b/gdk/quartz/gdkwindow-quartz.c
@@ -2183,7 +2183,14 @@ _gdk_quartz_window_set_collection_behavior (NSWindow *nswindow,
                                             GdkWindowTypeHint hint)
 {
 #if MAC_OS_X_VERSION_MAX_ALLOWED >= 1070
-     if (gdk_quartz_osx_version() >= GDK_OSX_LION)
+#if MAC_OS_X_VERSION_MAX_ALLOWED >= 10110
+#define GDK_QUARTZ_ALLOWS_TILING NSWindowCollectionBehaviorFullScreenAllowsTiling
+#define GDK_QUARTZ_DISALLOWS_TILING NSWindowCollectionBehaviorFullScreenDisallowsTiling
+#else
+#define GDK_QUARTZ_ALLOWS_TILING 1 << 11
+#define GDK_QUARTZ_DISALLOWS_TILING 1 << 12
+#endif
+  if (gdk_quartz_osx_version() >= GDK_OSX_LION)
     {
       /* Fullscreen Collection Behavior */
       NSWindowCollectionBehavior behavior = [nswindow collectionBehavior];
@@ -2192,20 +2199,22 @@ _gdk_quartz_window_set_collection_behavior (NSWindow *nswindow,
         case GDK_WINDOW_TYPE_HINT_NORMAL:
         case GDK_WINDOW_TYPE_HINT_SPLASHSCREEN:
           behavior &= ~(NSWindowCollectionBehaviorFullScreenAuxiliary &
-                        NSWindowCollectionBehaviorFullScreenDisallowsTiling);
+                        GDK_QUARTZ_DISALLOWS_TILING);
           behavior |= (NSWindowCollectionBehaviorFullScreenPrimary |
-                       NSWindowCollectionBehaviorFullScreenAllowsTiling);
+                       GDK_QUARTZ_ALLOWS_TILING);
 
           break;
         default:
           behavior &= ~(NSWindowCollectionBehaviorFullScreenPrimary &
-                        NSWindowCollectionBehaviorFullScreenAllowsTiling);
+                        GDK_QUARTZ_ALLOWS_TILING);
           behavior |= (NSWindowCollectionBehaviorFullScreenAuxiliary |
-                       NSWindowCollectionBehaviorFullScreenDisallowsTiling);
+                       GDK_QUARTZ_DISALLOWS_TILING);
           break;
         }
       [nswindow setCollectionBehavior:behavior];
     }
+#undef GDK_QUARTZ_ALLOWS_TILING
+#undef GDK_QUARTZ_DISALLOWS_TILING
 #endif
 }
 


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]