[gtk+/xi2: 1194/1239] GdkWindow: Block events from disabled devices.



commit e0aed95adaa689ecc8984aab2d708b7cc2d6def4
Author: Carlos Garnacho <carlos gnome org>
Date:   Sat Sep 19 17:13:01 2009 +0200

    GdkWindow: Block events from disabled devices.

 gdk/gdkwindow.c |   10 ++++++++--
 1 files changed, 8 insertions(+), 2 deletions(-)
---
diff --git a/gdk/gdkwindow.c b/gdk/gdkwindow.c
index 6dd54a6..67bda2e 100644
--- a/gdk/gdkwindow.c
+++ b/gdk/gdkwindow.c
@@ -10217,11 +10217,17 @@ _gdk_windowing_got_event (GdkDisplay *display,
 
   if (device)
     {
+      GdkInputMode mode;
+
+      g_object_get (device, "input-mode", &mode, NULL);
       _gdk_display_device_grab_update (display, device, serial);
 
-      if (!_gdk_display_check_grab_ownership (display, device, serial))
+      if (mode == GDK_MODE_DISABLED ||
+          !_gdk_display_check_grab_ownership (display, device, serial))
         {
-          /* Device events are blocked by another device grab */
+          /* Device events are blocked by another
+           * device grab, or the device is disabled
+           */
           unlink_event = TRUE;
           goto out;
         }



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