diff options
-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 |