[gtk/gbsneto/shortcuts-rebased: 18/19] shortcuttrigger: Filter legacy X11 events out
- From: Georges Basile Stavracas Neto <gbsneto src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gtk/gbsneto/shortcuts-rebased: 18/19] shortcuttrigger: Filter legacy X11 events out
- Date: Tue, 14 May 2019 01:46:52 +0000 (UTC)
commit ddab18e9a9b6ae84309844b82a033e960428c24e
Author: Georges Basile Stavracas Neto <georges stavracas gmail com>
Date: Mon May 13 22:35:16 2019 -0300
shortcuttrigger: Filter legacy X11 events out
Copying the code from GtkKeyHash, filter out X11 modifiers
from events. Unfortunately, they can be present even when
running full Wayland, due to XKB.
gtk/gtkshortcuttrigger.c | 4 ++++
1 file changed, 4 insertions(+)
---
diff --git a/gtk/gtkshortcuttrigger.c b/gtk/gtkshortcuttrigger.c
index 43a9e77c1e..f45ad2c219 100644
--- a/gtk/gtkshortcuttrigger.c
+++ b/gtk/gtkshortcuttrigger.c
@@ -499,6 +499,7 @@ gtk_keyval_trigger_trigger (GtkShortcutTrigger *trigger,
const GdkEvent *event,
gboolean enable_mnemonics)
{
+ const GdkModifierType x11_mods = GDK_MOD2_MASK | GDK_MOD3_MASK | GDK_MOD4_MASK | GDK_MOD5_MASK;
GtkKeyvalTrigger *self = (GtkKeyvalTrigger *) trigger;
GdkModifierType modifiers;
guint keyval;
@@ -515,6 +516,9 @@ gtk_keyval_trigger_trigger (GtkShortcutTrigger *trigger,
else
keyval = gdk_keyval_to_lower (keyval);
+ /* Filter legacy X11 modifiers out */
+ modifiers &= ~x11_mods;
+
return keyval == self->keyval && modifiers == self->modifiers;
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]