diff options
author | Alexander Larsson <alexl@redhat.com> | 2015-06-08 15:36:43 +0200 |
---|---|---|
committer | Alexander Larsson <alexl@redhat.com> | 2015-06-15 10:56:45 +0200 |
commit | 4c3eece6638aa36fbcd8379109dcb4e27323a306 (patch) | |
tree | c84c9e853bef2325b9402253423f9960bab88610 /gdk/gdkinternals.h | |
parent | ccc4b192ec994ee06817fbf19ff8c662be8d995a (diff) | |
download | gtk+-4c3eece6638aa36fbcd8379109dcb4e27323a306.tar.gz |
gdk: Add gdk_window_set_pass_through
An pass_through window is something you can draw in but does not
affect event handling. Normally if a window has with no event mask set
for a particular event then input events in it go to its parent window
(X11 semantics), whereas if pass_through is enabled the window below
the window will get the event. The later mode is useful when the
window is partially transparent. Note that an pass-through windows can
have child windows that are not pass-through so they can still get events
on some parts.
Semantically, this behaves the same as an regular window with
gdk_window_set_child_input_shapes() called on it (and re-called any
time a child is changed), but its far more efficient and easy to use.
This allows us to fix the testoverlay input stacking test.
https://bugzilla.gnome.org/show_bug.cgi?id=750568
https://bugs.freedesktop.org/show_bug.cgi?id=90917
Diffstat (limited to 'gdk/gdkinternals.h')
-rw-r--r-- | gdk/gdkinternals.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/gdk/gdkinternals.h b/gdk/gdkinternals.h index d1d1e4d167..e5ec4b204d 100644 --- a/gdk/gdkinternals.h +++ b/gdk/gdkinternals.h @@ -314,6 +314,7 @@ struct _GdkWindow guint8 fullscreen_mode; guint input_only : 1; + guint pass_through : 1; guint modal_hint : 1; guint composited : 1; guint has_alpha_background : 1; |