summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorOlivier Fourdan <ofourdan@redhat.com>2017-11-20 17:40:15 +0100
committerOlivier Fourdan <ofourdan@redhat.com>2017-12-21 09:08:41 +0100
commit49f029571cc425a878e520310a8db616fa5c4b70 (patch)
treeef886f2a1338c81954ac132b4eb03303bd0b4c50
parent290b25728899d1f606f125f2a74faf7c59371350 (diff)
downloadmutter-49f029571cc425a878e520310a8db616fa5c4b70.tar.gz
keybindings: Super should be inhibitable
When a Wayland client issues a shortcut inhibit request which is granted by the user, the Super key should be passed to the surface instead of being handled by the compositor. https://bugzilla.gnome.org/show_bug.cgi?id=790627
-rw-r--r--src/core/keybindings.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/core/keybindings.c b/src/core/keybindings.c
index 5c2f8a1c3..fd9bdb391 100644
--- a/src/core/keybindings.c
+++ b/src/core/keybindings.c
@@ -1949,6 +1949,15 @@ process_overlay_key (MetaDisplay *display,
MetaBackend *backend = keys->backend;
Display *xdisplay;
+ if (display->focus_window && !keys->overlay_key_only_pressed)
+ {
+ ClutterInputDevice *source;
+
+ source = clutter_event_get_source_device ((ClutterEvent *) event);
+ if (meta_window_shortcuts_inhibited (display->focus_window, source))
+ return FALSE;
+ }
+
if (META_IS_BACKEND_X11 (backend))
xdisplay = meta_backend_x11_get_xdisplay (META_BACKEND_X11 (backend));
else