always check both shift levels when looking up key

See github issue #73
This commit is contained in:
Sascha Kruse 2012-10-19 09:13:09 +02:00
parent 76e9f5b7a9
commit de4394ada8

View File

@ -1089,10 +1089,9 @@ void init_shortcut(keyboard_shortcut * ks)
ks->code = NoSymbol;
int level = ks->mask & ShiftMask ? 1 : 0;
for (int i = min_keysym; i <= max_keysym; i++) {
if (XkbKeycodeToKeysym(dc->dpy, i, 0, level) == ks->sym) {
if (XkbKeycodeToKeysym(dc->dpy, i, 0, 0) == ks->sym
|| XkbKeycodeToKeysym(dc->dpy, i, 0, 1) == ks->sym) {
ks->code = i;
break;
}