rather than making you hit both Key_L and Key_R if they are bound to different things, make Key_L take precidence. But if only Key_R is bound then use that. If Key_L is bound to multiple masks it'll use them all, but that won't work for Key_R right now.
This commit is contained in:
parent
94140a4b35
commit
a97f6faba5
1 changed files with 8 additions and 4 deletions
|
@ -135,13 +135,17 @@ static void set_modkey_mask(guchar mask, KeySym sym)
|
|||
modkeys_keys[OB_MODKEY_KEY_NUMLOCK] |= mask;
|
||||
else if (sym == XK_Scroll_Lock)
|
||||
modkeys_keys[OB_MODKEY_KEY_SCROLLLOCK] |= mask;
|
||||
else if (sym == XK_Super_L || sym == XK_Super_R)
|
||||
else if (sym == XK_Super_L ||
|
||||
(sym == XK_Super_R && !modkeys_keys[OB_MODKEY_KEY_SUPER]))
|
||||
modkeys_keys[OB_MODKEY_KEY_SUPER] |= mask;
|
||||
else if (sym == XK_Hyper_L || sym == XK_Hyper_R)
|
||||
else if (sym == XK_Hyper_L ||
|
||||
(sym == XK_Hyper_R && !modkeys_keys[OB_MODKEY_KEY_HYPER]))
|
||||
modkeys_keys[OB_MODKEY_KEY_HYPER] |= mask;
|
||||
else if (sym == XK_Alt_L || sym == XK_Alt_R)
|
||||
else if (sym == XK_Alt_L ||
|
||||
(sym == XK_Alt_R && !modkeys_keys[OB_MODKEY_KEY_ALT]))
|
||||
modkeys_keys[OB_MODKEY_KEY_ALT] |= mask;
|
||||
else if (sym == XK_Meta_L || sym == XK_Meta_R)
|
||||
else if (sym == XK_Meta_L ||
|
||||
(sym == XK_Meta_R && !modkeys_keys[OB_MODKEY_KEY_META]))
|
||||
modkeys_keys[OB_MODKEY_KEY_META] |= mask;
|
||||
/* CapsLock, Shift, and Control are special and hard-coded */
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue