_no_offscreen_device_grabbing
authorDebian GNOME Maintainers <pkg-gnome-maintainers@lists.alioth.debian.org>
Sun, 29 Oct 2017 17:21:51 +0000 (17:21 +0000)
committerSimon McVittie <smcv@debian.org>
Sun, 29 Oct 2017 17:21:51 +0000 (17:21 +0000)
Gbp-Pq: Name 017_no_offscreen_device_grabbing.patch

gtk/gtkmain.c

index 56d598988500004c0af41cec18f64883345f4d6b..6d032059f58a63d1310b898589db81bc1837bd88 100644 (file)
@@ -2317,9 +2317,14 @@ gtk_device_grab_add (GtkWidget *widget,
 {
   GtkWindowGroup *group;
   GtkWidget *old_grab_widget;
+  GdkWindow *toplevel;
 
   g_return_if_fail (GTK_IS_WIDGET (widget));
   g_return_if_fail (GDK_IS_DEVICE (device));
+  
+  toplevel = gdk_window_get_toplevel (gtk_widget_get_window (widget));
+  if (toplevel && gdk_window_get_window_type (toplevel) == GDK_WINDOW_OFFSCREEN)
+    return;
 
   group = gtk_main_get_window_group (widget);
   old_grab_widget = gtk_window_group_get_current_device_grab (group, device);