[gtk/wip/chergert/quartz4u: 96/146] macos: use grab-broken events



commit 74e8eaed1f3c93be66f6b84e8c9e31c60a807856
Author: Christian Hergert <chergert redhat com>
Date:   Wed May 20 11:47:28 2020 -0700

    macos: use grab-broken events

 gdk/macos/gdkmacosdisplay.c | 15 ++++++++++-----
 1 file changed, 10 insertions(+), 5 deletions(-)
---
diff --git a/gdk/macos/gdkmacosdisplay.c b/gdk/macos/gdkmacosdisplay.c
index 0f13304087..7b83504fb0 100644
--- a/gdk/macos/gdkmacosdisplay.c
+++ b/gdk/macos/gdkmacosdisplay.c
@@ -802,12 +802,17 @@ _gdk_macos_display_break_all_grabs (GdkMacosDisplay *self,
 
       if (grab != NULL)
         {
-          grab->serial_end = 0;
-          grab->implicit_ungrab = TRUE;
+          GdkEvent *event;
+          GList *node;
+
+          event = gdk_grab_broken_event_new (grab->surface,
+                                             device,
+                                             NULL,
+                                             grab->surface,
+                                             TRUE);
+          node = _gdk_event_queue_append (GDK_DISPLAY (self), event);
+          _gdk_windowing_got_event (GDK_DISPLAY (self), node, event, 0);
         }
-
-      _gdk_display_end_device_grab (GDK_DISPLAY (self), device, 0, NULL, TRUE);
-      _gdk_display_device_grab_update (GDK_DISPLAY (self), device, NULL, 0);
     }
 }
 


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