From 348c91015fac1b086abe8a950987835943172e60 Mon Sep 17 00:00:00 2001 From: Daiki Ueno Date: Mon, 16 Apr 2012 18:05:22 +0900 Subject: libcaribou: Ignore level 3 keysyms when looking up keycode https://bugzilla.gnome.org/show_bug.cgi?id=673579 --- libcaribou/xadapter.vala | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/libcaribou/xadapter.vala b/libcaribou/xadapter.vala index d22e2d4..4d5c7c1 100644 --- a/libcaribou/xadapter.vala +++ b/libcaribou/xadapter.vala @@ -184,12 +184,15 @@ namespace Caribou { if (!kmap.get_entries_for_keyval (keyval, out kmk)) return false; - Gdk.KeymapKey best_match = kmk[0]; + Gdk.KeymapKey? best_match = null; foreach (KeymapKey km in kmk) - if (km.group == this.group) + if (km.group == this.group && km.level <= 1) best_match = km; + if (best_match == null) + return false; + keycode = (uchar) best_match.keycode; modmask = (best_match.level == 1) ? Gdk.ModifierType.SHIFT_MASK : 0; -- cgit v1.2.1