[gtk+] Don't return GDK_GRAB_SUCCESS on failure



commit 4c69dabb6e86410868b61409bc2f549618d52fc4
Author: Matthias Clasen <mclasen redhat com>
Date:   Tue Oct 28 00:51:32 2014 -0400

    Don't return GDK_GRAB_SUCCESS on failure
    
    That seems ... counterproductive.

 gdk/gdkdevice.c |    4 ++--
 gdk/gdktypes.h  |    4 +++-
 gdk/gdkwindow.c |    8 ++++----
 3 files changed, 9 insertions(+), 7 deletions(-)
---
diff --git a/gdk/gdkdevice.c b/gdk/gdkdevice.c
index 0647d9f..3c9cf67 100644
--- a/gdk/gdkdevice.c
+++ b/gdk/gdkdevice.c
@@ -1291,8 +1291,8 @@ gdk_device_grab (GdkDevice        *device,
   GdkGrabStatus res;
   GdkWindow *native;
 
-  g_return_val_if_fail (GDK_IS_DEVICE (device), GDK_GRAB_SUCCESS);
-  g_return_val_if_fail (GDK_IS_WINDOW (window), GDK_GRAB_SUCCESS);
+  g_return_val_if_fail (GDK_IS_DEVICE (device), GDK_GRAB_FAILED);
+  g_return_val_if_fail (GDK_IS_WINDOW (window), GDK_GRAB_FAILED);
 
   native = gdk_window_get_toplevel (window);
 
diff --git a/gdk/gdktypes.h b/gdk/gdktypes.h
index 2b04c10..5b0a656 100644
--- a/gdk/gdktypes.h
+++ b/gdk/gdktypes.h
@@ -310,6 +310,7 @@ typedef enum
  * @GDK_GRAB_NOT_VIEWABLE: the grab window or the @confine_to window are not
  *  viewable.
  * @GDK_GRAB_FROZEN: the resource is frozen by an active grab of another client.
+ * @GDK_GRAB_FAILED: the grab failed for some other reason.
  *
  * Returned by gdk_device_grab(), gdk_pointer_grab() and gdk_keyboard_grab() to
  * indicate success or the reason for the failure of the grab attempt.
@@ -320,7 +321,8 @@ typedef enum
   GDK_GRAB_ALREADY_GRABBED = 1,
   GDK_GRAB_INVALID_TIME    = 2,
   GDK_GRAB_NOT_VIEWABLE    = 3,
-  GDK_GRAB_FROZEN          = 4
+  GDK_GRAB_FROZEN          = 4,
+  GDK_GRAB_FAILED          = 5
 } GdkGrabStatus;
 
 /**
diff --git a/gdk/gdkwindow.c b/gdk/gdkwindow.c
index bc10dd5..60401a3 100644
--- a/gdk/gdkwindow.c
+++ b/gdk/gdkwindow.c
@@ -8000,9 +8000,9 @@ gdk_pointer_grab (GdkWindow *       window,
   gulong serial;
   GList *devices, *dev;
 
-  g_return_val_if_fail (window != NULL, 0);
-  g_return_val_if_fail (GDK_IS_WINDOW (window), 0);
-  g_return_val_if_fail (confine_to == NULL || GDK_IS_WINDOW (confine_to), 0);
+  g_return_val_if_fail (window != NULL, GDK_GRAB_FAILED);
+  g_return_val_if_fail (GDK_IS_WINDOW (window), GDK_GRAB_FAILED);
+  g_return_val_if_fail (confine_to == NULL || GDK_IS_WINDOW (confine_to), GDK_GRAB_FAILED);
 
   /* We need a native window for confine to to work, ensure we have one */
   if (confine_to)
@@ -8112,7 +8112,7 @@ gdk_keyboard_grab (GdkWindow *window,
   gulong serial;
   GList *devices, *dev;
 
-  g_return_val_if_fail (GDK_IS_WINDOW (window), 0);
+  g_return_val_if_fail (GDK_IS_WINDOW (window), GDK_GRAB_FAILED);
 
   /* Non-viewable client side window => fail */
   if (!_gdk_window_has_impl (window) &&


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