diff options
author | Alexander Larsson <alexl@redhat.com> | 2009-01-31 19:42:44 +0100 |
---|---|---|
committer | Alexander Larsson <alex@localhost.localdomain> | 2009-04-02 10:15:30 +0200 |
commit | 26cbf87d7d70e9eae4dea4667aee40c9d154184f (patch) | |
tree | 1c1c236e6fe515cd2dc2183fe50d614ccb9b3886 /gdk/gdkdisplay.h | |
parent | 526ff6dd68316e67f4b5570c934c7a729d5db35a (diff) | |
download | gtk+-26cbf87d7d70e9eae4dea4667aee40c9d154184f.tar.gz |
New approach for grab tracking code
We try to track the exact grab state, i.e. whats valid on the client
now and whats comming soon via the xserver roundtrip (and when).
Diffstat (limited to 'gdk/gdkdisplay.h')
-rw-r--r-- | gdk/gdkdisplay.h | 21 |
1 files changed, 4 insertions, 17 deletions
diff --git a/gdk/gdkdisplay.h b/gdk/gdkdisplay.h index c3a7d62a66..3c7bde322f 100644 --- a/gdk/gdkdisplay.h +++ b/gdk/gdkdisplay.h @@ -43,21 +43,6 @@ typedef struct _GdkDisplayPointerHooks GdkDisplayPointerHooks; #define GDK_IS_DISPLAY_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GDK_TYPE_DISPLAY)) #define GDK_DISPLAY_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GDK_TYPE_DISPLAY, GdkDisplayClass)) -/* Tracks information about the pointer grab on this display */ -typedef struct -{ - GdkWindow *window; - GdkWindow *native_window; - gulong serial; - gboolean owner_events; - guint event_mask; - gboolean implicit; - gboolean converted_implicit; - guint32 time; - - GdkWindow *grab_one_pointer_release_event; -} GdkPointerGrabInfo; - /* Tracks information about the keyboard grab on this display */ typedef struct { @@ -68,7 +53,6 @@ typedef struct guint32 time; } GdkKeyboardGrabInfo; - /* Tracks information about which window and position the pointer last was in. * This is useful when we need to synthesize events later. * Note that we track toplevel_under_pointer using enter/leave events, @@ -112,9 +96,12 @@ struct _GdkDisplay gint button_x[2]; /* The last 2 button click positions. */ gint button_y[2]; - GdkPointerGrabInfo pointer_grab; + GList *pointer_grabs; GdkKeyboardGrabInfo keyboard_grab; GdkPointerWindowInfo pointer_info; + + /* Last reported event time from server */ + guint32 last_event_time; }; struct _GdkDisplayClass |