diff options
author | Jason Creighton <jcreigh@gmail.com> | 2007-04-24 03:33:57 +0200 |
---|---|---|
committer | Jason Creighton <jcreigh@gmail.com> | 2007-04-24 03:33:57 +0200 |
commit | 4a5377c57108dc9cf21e5a86945c6f1e6288b294 (patch) | |
tree | 16f498371ee6cdc00c8b94b966edf933cf27af0c | |
parent | 2d421c8ecf2e5a8c813dccfa78da6515d7d76784 (diff) | |
download | metatile-4a5377c57108dc9cf21e5a86945c6f1e6288b294.tar metatile-4a5377c57108dc9cf21e5a86945c6f1e6288b294.zip |
Ignore numlock and capslock in keybindings
darcs-hash:20070424013357-b9aa7-aed2e5623aa5d0f804d131974fc9b6c21c7a2ce1
-rw-r--r-- | Config.hs | 4 | ||||
-rw-r--r-- | Main.hs | 4 |
2 files changed, 5 insertions, 3 deletions
@@ -101,8 +101,10 @@ defaultDelta :: Rational defaultDelta = 3%100 -- The mask for the numlock key. You may need to change this on some systems. +-- You can find the numlock modifier by running "xmodmap" and looking for a +-- modifier with Num_Lock bound to it. numlockMask :: KeyMask -numlockMask = lockMask +numlockMask = mod2Mask -- What layout to start in, and what the default proportion for the -- left pane should be in the tiled layout. See LayoutDesc and @@ -94,7 +94,7 @@ grabKeys dpy rootw = do ungrabKey dpy '\0' {-AnyKey-} anyModifier rootw flip mapM_ (M.keys keys) $ \(mask,sym) -> do kc <- keysymToKeycode dpy sym - mapM_ (grab kc) [mask, mask .|. numlockMask] -- note: no numlock + mapM_ (grab kc) [mask, mask .|. numlockMask, mask .|. lockMask, mask .|. numlockMask .|. lockMask] where grab kc m = grabKey dpy kc m rootw True grabModeAsync grabModeAsync @@ -128,7 +128,7 @@ handle (KeyEvent {ev_event_type = t, ev_state = m, ev_keycode = code}) | t == keyPress = withDisplay $ \dpy -> do s <- io $ keycodeToKeysym dpy code 0 - whenJust (M.lookup (complement numlockMask .&. m,s) keys) id + whenJust (M.lookup (complement (numlockMask .|. lockMask) .&. m,s) keys) id -- manage a new window handle (MapRequestEvent {ev_window = w}) = withDisplay $ \dpy -> do |