[gtk+/xi2: 1032/1239] GdkDisplay: Rename pointer grabs API to be more generic.
- From: Carlos Garnacho <carlosg src gnome org>
- To: svn-commits-list gnome org
- Cc:
- Subject: [gtk+/xi2: 1032/1239] GdkDisplay: Rename pointer grabs API to be more generic.
- Date: Tue, 29 Sep 2009 10:55:18 +0000 (UTC)
commit 1bd62b0c5f742d997382107754aa72f108bfa742
Author: Carlos Garnacho <carlos gnome org>
Date: Fri Sep 4 19:26:54 2009 +0200
GdkDisplay: Rename pointer grabs API to be more generic.
gdk/gdkdevice.c | 20 ++++----
gdk/gdkdisplay.c | 108 ++++++++++++++++++++++----------------------
gdk/gdkinternals.h | 19 ++++----
gdk/gdkwindow.c | 110 +++++++++++++++++++++++-----------------------
gdk/x11/gdkdisplay-x11.c | 6 +-
gdk/x11/gdkmain-x11.c | 8 ++--
6 files changed, 135 insertions(+), 136 deletions(-)
---
diff --git a/gdk/gdkdevice.c b/gdk/gdkdevice.c
index 83c3faf..5106e52 100644
--- a/gdk/gdkdevice.c
+++ b/gdk/gdkdevice.c
@@ -532,16 +532,16 @@ gdk_device_grab (GdkDevice *device,
display = gdk_drawable_get_display (window);
serial = _gdk_windowing_window_get_next_serial (display);
- _gdk_display_add_pointer_grab (display,
- device,
- window,
- native,
- GDK_OWNERSHIP_NONE,
- owner_events,
- event_mask,
- serial,
- time_,
- FALSE);
+ _gdk_display_add_device_grab (display,
+ device,
+ window,
+ native,
+ GDK_OWNERSHIP_NONE,
+ owner_events,
+ event_mask,
+ serial,
+ time_,
+ FALSE);
}
return res;
diff --git a/gdk/gdkdisplay.c b/gdk/gdkdisplay.c
index 32da14a..09a2004 100644
--- a/gdk/gdkdisplay.c
+++ b/gdk/gdkdisplay.c
@@ -180,7 +180,7 @@ free_pointer_info (GdkPointerWindowInfo *info)
}
static void
-free_pointer_grab (GdkPointerGrabInfo *info)
+free_device_grab (GdkDeviceGrabInfo *info)
{
g_object_unref (info->window);
g_object_unref (info->native_window);
@@ -188,13 +188,13 @@ free_pointer_grab (GdkPointerGrabInfo *info)
}
static gboolean
-free_pointer_grabs_foreach (gpointer key,
- gpointer value,
- gpointer user_data)
+free_device_grabs_foreach (gpointer key,
+ gpointer value,
+ gpointer user_data)
{
GList *list = value;
- g_list_foreach (list, (GFunc) free_pointer_grab, NULL);
+ g_list_foreach (list, (GFunc) free_device_grab, NULL);
g_list_free (list);
return TRUE;
@@ -250,7 +250,7 @@ gdk_display_finalize (GObject *object)
GdkDisplay *display = GDK_DISPLAY_OBJECT (object);
g_hash_table_foreach_remove (display->device_grabs,
- free_pointer_grabs_foreach,
+ free_device_grabs_foreach,
NULL);
g_hash_table_destroy (display->device_grabs);
@@ -991,9 +991,9 @@ generate_grab_broken_event (GdkWindow *window,
}
}
-GdkPointerGrabInfo *
-_gdk_display_get_last_pointer_grab (GdkDisplay *display,
- GdkDevice *device)
+GdkDeviceGrabInfo *
+_gdk_display_get_last_device_grab (GdkDisplay *display,
+ GdkDevice *device)
{
GList *l;
@@ -1008,22 +1008,22 @@ _gdk_display_get_last_pointer_grab (GdkDisplay *display,
return NULL;
}
-GdkPointerGrabInfo *
-_gdk_display_add_pointer_grab (GdkDisplay *display,
- GdkDevice *device,
- GdkWindow *window,
- GdkWindow *native_window,
- GdkGrabOwnership grab_ownership,
- gboolean owner_events,
- GdkEventMask event_mask,
- unsigned long serial_start,
- guint32 time,
- gboolean implicit)
+GdkDeviceGrabInfo *
+_gdk_display_add_device_grab (GdkDisplay *display,
+ GdkDevice *device,
+ GdkWindow *window,
+ GdkWindow *native_window,
+ GdkGrabOwnership grab_ownership,
+ gboolean owner_events,
+ GdkEventMask event_mask,
+ unsigned long serial_start,
+ guint32 time,
+ gboolean implicit)
{
- GdkPointerGrabInfo *info, *other_info;
+ GdkDeviceGrabInfo *info, *other_info;
GList *grabs, *l;
- info = g_new0 (GdkPointerGrabInfo, 1);
+ info = g_new0 (GdkDeviceGrabInfo, 1);
info->window = g_object_ref (window);
info->native_window = g_object_ref (native_window);
@@ -1201,12 +1201,12 @@ get_current_toplevel (GdkDisplay *display,
}
static void
-switch_to_pointer_grab (GdkDisplay *display,
- GdkDevice *device,
- GdkPointerGrabInfo *grab,
- GdkPointerGrabInfo *last_grab,
- guint32 time,
- gulong serial)
+switch_to_pointer_grab (GdkDisplay *display,
+ GdkDevice *device,
+ GdkDeviceGrabInfo *grab,
+ GdkDeviceGrabInfo *last_grab,
+ guint32 time,
+ gulong serial)
{
GdkWindow *src_window, *pointer_window, *new_toplevel;
GdkPointerWindowInfo *info;
@@ -1308,11 +1308,11 @@ switch_to_pointer_grab (GdkDisplay *display,
}
void
-_gdk_display_pointer_grab_update (GdkDisplay *display,
- GdkDevice *device,
- gulong current_serial)
+_gdk_display_device_grab_update (GdkDisplay *display,
+ GdkDevice *device,
+ gulong current_serial)
{
- GdkPointerGrabInfo *current_grab, *next_grab;
+ GdkDeviceGrabInfo *current_grab, *next_grab;
GList *grabs;
guint32 time;
@@ -1364,7 +1364,7 @@ _gdk_display_pointer_grab_update (GdkDisplay *display,
next_grab, current_grab,
time, current_serial);
- free_pointer_grab (current_grab);
+ free_device_grab (current_grab);
}
}
@@ -1372,7 +1372,7 @@ static GList *
grab_list_find (GList *grabs,
gulong serial)
{
- GdkPointerGrabInfo *grab;
+ GdkDeviceGrabInfo *grab;
while (grabs)
{
@@ -1388,7 +1388,7 @@ grab_list_find (GList *grabs,
}
static GList *
-find_pointer_grab (GdkDisplay *display,
+find_device_grab (GdkDisplay *display,
GdkDevice *device,
gulong serial)
{
@@ -1398,14 +1398,14 @@ find_pointer_grab (GdkDisplay *display,
return grab_list_find (l, serial);
}
-GdkPointerGrabInfo *
-_gdk_display_has_pointer_grab (GdkDisplay *display,
- GdkDevice *device,
- gulong serial)
+GdkDeviceGrabInfo *
+_gdk_display_has_device_grab (GdkDisplay *display,
+ GdkDevice *device,
+ gulong serial)
{
GList *l;
- l = find_pointer_grab (display, device, serial);
+ l = find_device_grab (display, device, serial);
if (l)
return l->data;
@@ -1414,16 +1414,16 @@ _gdk_display_has_pointer_grab (GdkDisplay *display,
/* Returns true if last grab was ended */
gboolean
-_gdk_display_end_pointer_grab (GdkDisplay *display,
- GdkDevice *device,
- gulong serial,
- GdkWindow *if_child,
- gboolean implicit)
+_gdk_display_end_device_grab (GdkDisplay *display,
+ GdkDevice *device,
+ gulong serial,
+ GdkWindow *if_child,
+ gboolean implicit)
{
- GdkPointerGrabInfo *grab;
+ GdkDeviceGrabInfo *grab;
GList *l;
- l = find_pointer_grab (display, device, serial);
+ l = find_device_grab (display, device, serial);
if (l == NULL)
return FALSE;
@@ -1456,7 +1456,7 @@ _gdk_display_check_grab_ownership (GdkDisplay *display,
while (g_hash_table_iter_next (&iter, &key, &value))
{
- GdkPointerGrabInfo *grab;
+ GdkDeviceGrabInfo *grab;
GdkDevice *dev;
GList *grabs;
@@ -1611,16 +1611,16 @@ gdk_pointer_grab_info_libgtk_only (GdkDisplay *display,
GdkWindow **grab_window,
gboolean *owner_events)
{
- GdkPointerGrabInfo *info;
-
+ GdkDeviceGrabInfo *info;
+
g_return_val_if_fail (GDK_IS_DISPLAY (display), FALSE);
/* What we're interested in is the steady state (ie last grab),
because we're interested e.g. if we grabbed so that we
can ungrab, even if our grab is not active just yet. */
/* FIXME: which device? */
- info = _gdk_display_get_last_pointer_grab (display, display->core_pointer);
-
+ info = _gdk_display_get_last_device_grab (display, display->core_pointer);
+
if (info)
{
if (grab_window)
@@ -1673,7 +1673,7 @@ gboolean
gdk_display_device_is_grabbed (GdkDisplay *display,
GdkDevice *device)
{
- GdkPointerGrabInfo *info;
+ GdkDeviceGrabInfo *info;
g_return_val_if_fail (GDK_IS_DISPLAY (display), TRUE);
g_return_val_if_fail (GDK_IS_DEVICE (device), TRUE);
@@ -1681,7 +1681,7 @@ gdk_display_device_is_grabbed (GdkDisplay *display,
/* What we're interested in is the steady state (ie last grab),
because we're interested e.g. if we grabbed so that we
can ungrab, even if our grab is not active just yet. */
- info = _gdk_display_get_last_pointer_grab (display, device);
+ info = _gdk_display_get_last_device_grab (display, device);
return (info && !info->implicit);
}
diff --git a/gdk/gdkinternals.h b/gdk/gdkinternals.h
index 7065f74..18601c8 100644
--- a/gdk/gdkinternals.h
+++ b/gdk/gdkinternals.h
@@ -184,10 +184,10 @@ typedef struct
guint32 time;
GdkGrabOwnership ownership;
- gboolean activated;
- gboolean implicit_ungrab;
- gboolean grab_one_pointer_release_event;
-} GdkPointerGrabInfo;
+ guint activated : 1;
+ guint implicit_ungrab : 1;
+ guint grab_one_pointer_release_event : 1;
+} GdkDeviceGrabInfo;
typedef struct _GdkInputWindow GdkInputWindow;
@@ -592,13 +592,12 @@ char *_gdk_windowing_get_startup_notify_id (GAppLaunchContext *context,
void _gdk_windowing_launch_failed (GAppLaunchContext *context,
const char *startup_notify_id);
-GdkPointerGrabInfo *_gdk_display_get_active_pointer_grab (GdkDisplay *display);
-void _gdk_display_pointer_grab_update (GdkDisplay *display,
+void _gdk_display_device_grab_update (GdkDisplay *display,
GdkDevice *device,
gulong current_serial);
-GdkPointerGrabInfo *_gdk_display_get_last_pointer_grab (GdkDisplay *display,
+GdkDeviceGrabInfo *_gdk_display_get_last_device_grab (GdkDisplay *display,
GdkDevice *device);
-GdkPointerGrabInfo *_gdk_display_add_pointer_grab (GdkDisplay *display,
+GdkDeviceGrabInfo *_gdk_display_add_device_grab (GdkDisplay *display,
GdkDevice *device,
GdkWindow *window,
GdkWindow *native_window,
@@ -608,10 +607,10 @@ GdkPointerGrabInfo *_gdk_display_add_pointer_grab (GdkDisplay *display,
unsigned long serial_start,
guint32 time,
gboolean implicit);
-GdkPointerGrabInfo * _gdk_display_has_pointer_grab (GdkDisplay *display,
+GdkDeviceGrabInfo * _gdk_display_has_device_grab (GdkDisplay *display,
GdkDevice *device,
gulong serial);
-gboolean _gdk_display_end_pointer_grab (GdkDisplay *display,
+gboolean _gdk_display_end_device_grab (GdkDisplay *display,
GdkDevice *device,
gulong serial,
GdkWindow *if_child,
diff --git a/gdk/gdkwindow.c b/gdk/gdkwindow.c
index d431557..5f13646 100644
--- a/gdk/gdkwindow.c
+++ b/gdk/gdkwindow.c
@@ -6438,11 +6438,11 @@ gdk_window_hide (GdkWindow *window)
display = gdk_drawable_get_display (window);
/* FIXME: which device(s)? */
- if (_gdk_display_end_pointer_grab (display,
- display->core_pointer,
- _gdk_windowing_window_get_next_serial (display),
- window,
- TRUE))
+ if (_gdk_display_end_device_grab (display,
+ display->core_pointer,
+ _gdk_windowing_window_get_next_serial (display),
+ window,
+ TRUE))
gdk_display_pointer_ungrab (display, GDK_CURRENT_TIME);
if (display->keyboard_grab.window != NULL)
@@ -8407,7 +8407,7 @@ update_cursor (GdkDisplay *display,
{
GdkWindowObject *pointer_window, *cursor_window, *parent, *toplevel;
GdkPointerWindowInfo *pointer_info;
- GdkPointerGrabInfo *grab;
+ GdkDeviceGrabInfo *grab;
pointer_info = _gdk_display_get_pointer_info (display, device);
pointer_window = (GdkWindowObject *) pointer_info->window_under_pointer;
@@ -8420,7 +8420,7 @@ update_cursor (GdkDisplay *display,
/* We ignore the serials here and just pick the last grab
we've sent, as that would shortly be used anyway. */
- grab = _gdk_display_get_last_pointer_grab (display, device);
+ grab = _gdk_display_get_last_device_grab (display, device);
if (grab != NULL &&
!_gdk_window_event_parent_of (grab->window, (GdkWindow *)cursor_window))
cursor_window = (GdkWindowObject *)grab->window;
@@ -8956,10 +8956,10 @@ send_crossing_event (GdkDisplay *display,
{
GdkEvent *event;
guint32 event_mask;
- GdkPointerGrabInfo *grab;
+ GdkDeviceGrabInfo *grab;
gboolean block_event = FALSE;
- grab = _gdk_display_has_pointer_grab (display, device, serial);
+ grab = _gdk_display_has_device_grab (display, device, serial);
if (grab != NULL &&
!grab->owner_events &&
@@ -9184,7 +9184,7 @@ get_pointer_window (GdkDisplay *display,
gulong serial)
{
GdkWindow *pointer_window;
- GdkPointerGrabInfo *grab;
+ GdkDeviceGrabInfo *grab;
GdkPointerWindowInfo *pointer_info;
pointer_info = _gdk_display_get_pointer_info (display, device);
@@ -9197,7 +9197,7 @@ get_pointer_window (GdkDisplay *display,
else
pointer_window = NULL;
- grab = _gdk_display_has_pointer_grab (display, device, serial);
+ grab = _gdk_display_has_device_grab (display, device, serial);
if (grab != NULL &&
!grab->owner_events &&
pointer_window != grab->window)
@@ -9334,16 +9334,16 @@ gdk_pointer_grab (GdkWindow * window,
time);
if (res == GDK_GRAB_SUCCESS)
- _gdk_display_add_pointer_grab (display,
- device,
- window,
- native,
- GDK_OWNERSHIP_NONE,
- owner_events,
- event_mask,
- serial,
- time,
- FALSE);
+ _gdk_display_add_device_grab (display,
+ device,
+ window,
+ native,
+ GDK_OWNERSHIP_NONE,
+ owner_events,
+ event_mask,
+ serial,
+ time,
+ FALSE);
}
/* FIXME: handle errors when grabbing */
@@ -9462,9 +9462,9 @@ get_event_window (GdkDisplay *display,
guint evmask;
GdkWindow *grab_window;
GdkWindowObject *w;
- GdkPointerGrabInfo *grab;
+ GdkDeviceGrabInfo *grab;
- grab = _gdk_display_has_pointer_grab (display, device, serial);
+ grab = _gdk_display_has_device_grab (display, device, serial);
if (grab != NULL && !grab->owner_events)
{
@@ -9740,7 +9740,7 @@ proxy_button_event (GdkEvent *source_event,
&toplevel_x, &toplevel_y);
if (type == GDK_BUTTON_PRESS &&
- _gdk_display_has_pointer_grab (display, device, serial) == NULL)
+ _gdk_display_has_device_grab (display, device, serial) == NULL)
{
pointer_window =
_gdk_window_find_descendant_at (toplevel_window,
@@ -9759,17 +9759,17 @@ proxy_button_event (GdkEvent *source_event,
}
pointer_window = (GdkWindow *)w;
- _gdk_display_add_pointer_grab (display,
- device,
- pointer_window,
- toplevel_window,
- GDK_OWNERSHIP_NONE,
- FALSE,
- gdk_window_get_events (pointer_window),
- serial,
+ _gdk_display_add_device_grab (display,
+ device,
+ pointer_window,
+ toplevel_window,
+ GDK_OWNERSHIP_NONE,
+ FALSE,
+ gdk_window_get_events (pointer_window),
+ serial,
time_,
- TRUE);
- _gdk_display_pointer_grab_update (display, device, serial);
+ TRUE);
+ _gdk_display_device_grab_update (display, device, serial);
}
pointer_window = get_pointer_window (display, toplevel_window, device,
@@ -9911,7 +9911,7 @@ _gdk_windowing_got_event (GdkDisplay *display,
gdouble x, y;
gboolean unlink_event;
guint old_state, old_button;
- GdkPointerGrabInfo *button_release_grab;
+ GdkDeviceGrabInfo *button_release_grab;
GdkPointerWindowInfo *pointer_info;
GdkDevice *device;
gboolean is_toplevel;
@@ -9923,7 +9923,7 @@ _gdk_windowing_got_event (GdkDisplay *display,
if (device)
{
- _gdk_display_pointer_grab_update (display, device, serial);
+ _gdk_display_device_grab_update (display, device, serial);
if (!_gdk_display_check_grab_ownership (display, device, serial))
{
@@ -9940,31 +9940,31 @@ _gdk_windowing_got_event (GdkDisplay *display,
if (_gdk_native_windows)
{
if (event->type == GDK_BUTTON_PRESS &&
- _gdk_display_has_pointer_grab (display, device, serial) == NULL)
+ _gdk_display_has_device_grab (display, device, serial) == NULL)
{
- _gdk_display_add_pointer_grab (display,
- device,
- event_window,
- event_window,
- GDK_OWNERSHIP_NONE,
- FALSE,
- gdk_window_get_events (event_window),
- serial,
- gdk_event_get_time (event),
- TRUE);
- _gdk_display_pointer_grab_update (display, device, serial);
+ _gdk_display_add_device_grab (display,
+ device,
+ event_window,
+ event_window,
+ GDK_OWNERSHIP_NONE,
+ FALSE,
+ gdk_window_get_events (event_window),
+ serial,
+ gdk_event_get_time (event),
+ TRUE);
+ _gdk_display_device_grab_update (display, device, serial);
}
if (event->type == GDK_BUTTON_RELEASE)
{
button_release_grab =
- _gdk_display_has_pointer_grab (display, device, serial);
+ _gdk_display_has_device_grab (display, device, serial);
if (button_release_grab &&
button_release_grab->implicit &&
(event->button.state & GDK_ANY_BUTTON_MASK & ~(GDK_BUTTON1_MASK << (event->button.button - 1))) == 0)
{
button_release_grab->serial_end = serial;
button_release_grab->implicit_ungrab = TRUE;
- _gdk_display_pointer_grab_update (display, device, serial);
+ _gdk_display_device_grab_update (display, device, serial);
}
}
@@ -10013,7 +10013,7 @@ _gdk_windowing_got_event (GdkDisplay *display,
event->type == GDK_LEAVE_NOTIFY) &&
(event->crossing.mode == GDK_CROSSING_GRAB ||
event->crossing.mode == GDK_CROSSING_UNGRAB) &&
- (_gdk_display_has_pointer_grab (display, device, serial) ||
+ (_gdk_display_has_device_grab (display, device, serial) ||
event->crossing.detail == GDK_NOTIFY_INFERIOR))
{
/* We synthesize all crossing events due to grabs ourselves,
@@ -10097,14 +10097,14 @@ _gdk_windowing_got_event (GdkDisplay *display,
if (event->type == GDK_BUTTON_RELEASE)
{
button_release_grab =
- _gdk_display_has_pointer_grab (display, device, serial);
+ _gdk_display_has_device_grab (display, device, serial);
if (button_release_grab &&
button_release_grab->implicit &&
(event->button.state & GDK_ANY_BUTTON_MASK & ~(GDK_BUTTON1_MASK << (event->button.button - 1))) == 0)
{
button_release_grab->serial_end = serial;
button_release_grab->implicit_ungrab = TRUE;
- _gdk_display_pointer_grab_update (display, device, serial);
+ _gdk_display_device_grab_update (display, device, serial);
}
}
@@ -10127,10 +10127,10 @@ get_extension_event_window (GdkDisplay *display,
guint evmask;
GdkWindow *grab_window;
GdkWindowObject *w;
- GdkPointerGrabInfo *grab;
+ GdkDeviceGrabInfo *grab;
/* FIXME: which device? */
- grab = _gdk_display_has_pointer_grab (display, display->core_pointer, serial);
+ grab = _gdk_display_has_device_grab (display, display->core_pointer, serial);
if (grab != NULL && !grab->owner_events)
{
diff --git a/gdk/x11/gdkdisplay-x11.c b/gdk/x11/gdkdisplay-x11.c
index c42f5eb..2af4ac5 100644
--- a/gdk/x11/gdkdisplay-x11.c
+++ b/gdk/x11/gdkdisplay-x11.c
@@ -1591,7 +1591,7 @@ device_ungrab_callback (GdkDisplay *display,
{
GdkDevice *device = data;
- _gdk_display_pointer_grab_update (display, device, serial);
+ _gdk_display_device_grab_update (display, device, serial);
}
@@ -1616,7 +1616,7 @@ gdk_display_device_ungrab (GdkDisplay *display,
{
Display *xdisplay;
GdkDisplayX11 *display_x11;
- GdkPointerGrabInfo *grab;
+ GdkDeviceGrabInfo *grab;
unsigned long serial;
g_return_if_fail (GDK_IS_DISPLAY (display));
@@ -1630,7 +1630,7 @@ gdk_display_device_ungrab (GdkDisplay *display,
GDK_DEVICE_GET_CLASS (device)->ungrab (device, time_);
XFlush (xdisplay);
- grab = _gdk_display_get_last_pointer_grab (display, device);
+ grab = _gdk_display_get_last_device_grab (display, device);
if (grab &&
(time_ == GDK_CURRENT_TIME ||
grab->time == GDK_CURRENT_TIME ||
diff --git a/gdk/x11/gdkmain-x11.c b/gdk/x11/gdkmain-x11.c
index ffda4ae..dc37100 100644
--- a/gdk/x11/gdkmain-x11.c
+++ b/gdk/x11/gdkmain-x11.c
@@ -147,7 +147,7 @@ has_pointer_grab_callback (GdkDisplay *display,
{
GdkDevice *device = data;
- _gdk_display_pointer_grab_update (display, device, serial);
+ _gdk_display_device_grab_update (display, device, serial);
}
GdkGrabStatus
@@ -278,7 +278,7 @@ _gdk_xgrab_check_unmap (GdkWindow *window,
GdkDisplay *display = gdk_drawable_get_display (window);
/* FIXME: which device? */
- _gdk_display_end_pointer_grab (display, display->core_pointer, serial, window, TRUE);
+ _gdk_display_end_device_grab (display, display->core_pointer, serial, window, TRUE);
if (display->keyboard_grab.window &&
serial >= display->keyboard_grab.serial)
@@ -305,12 +305,12 @@ void
_gdk_xgrab_check_destroy (GdkWindow *window)
{
GdkDisplay *display = gdk_drawable_get_display (window);
- GdkPointerGrabInfo *grab;
+ GdkDeviceGrabInfo *grab;
/* Make sure there is no lasting grab in this native
window */
/* FIXME: which device? */
- grab = _gdk_display_get_last_pointer_grab (display, display->core_pointer);
+ grab = _gdk_display_get_last_device_grab (display, display->core_pointer);
if (grab && grab->native_window == window)
{
/* We don't know the actual serial to end, but it
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]