diff options
author | Alexander Larsson <alexl@redhat.com> | 2008-12-15 10:24:54 +0100 |
---|---|---|
committer | Alexander Larsson <alex@localhost.localdomain> | 2009-04-02 10:15:11 +0200 |
commit | b771c9924d63259bc38f46349230ce48dda953e6 (patch) | |
tree | 1be63cee4db45cb6aa75d277c4660f3babb1967c /gdk/gdkdisplay.h | |
parent | afc81c9e64ad45054c84ea386edfb4ff360f0de2 (diff) | |
download | gtk+-b771c9924d63259bc38f46349230ce48dda953e6.tar.gz |
New approach to motion event handling
Diffstat (limited to 'gdk/gdkdisplay.h')
-rw-r--r-- | gdk/gdkdisplay.h | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/gdk/gdkdisplay.h b/gdk/gdkdisplay.h index 790bc0b7f3..e4ca845ebc 100644 --- a/gdk/gdkdisplay.h +++ b/gdk/gdkdisplay.h @@ -58,14 +58,18 @@ typedef struct GdkWindow *grab_one_pointer_release_event; } GdkPointerGrabInfo; -/* Tracks information about which window the pointer is in and - * at what position the mouse is. This is useful when we need - * to synthesize events later. +/* 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, + * so in the case of a grab, either with owner_events==FALSE or with the + * pointer in no clients window the x/y coordinates may actually be outside + * the window. */ typedef struct { - GdkWindow *window_under_pointer; - gdouble toplevel_x, toplevel_y; + GdkWindow *toplevel_under_pointer; /* The toplevel window with mouse inside, tracked via native events */ + GdkWindow *window_under_pointer; /* The window that last got sent a normal enter event */ + gdouble toplevel_x, toplevel_y; guint32 state; } GdkPointerWindowInfo; |