diff options
author | Daniel Schoepe <daniel.schoepe@gmail.com> | 2009-10-22 00:34:04 +0200 |
---|---|---|
committer | Daniel Schoepe <daniel.schoepe@gmail.com> | 2009-10-22 00:34:04 +0200 |
commit | 7141da81104fae9e1892f580192a44713d52efe5 (patch) | |
tree | d79ffa42e1540ab104cc081c85b3bf825260f27d | |
parent | 739184db607b9fe1b1ffe0c7dcf10149e875eba4 (diff) | |
download | XMonadContrib-7141da81104fae9e1892f580192a44713d52efe5.tar.gz XMonadContrib-7141da81104fae9e1892f580192a44713d52efe5.tar.xz XMonadContrib-7141da81104fae9e1892f580192a44713d52efe5.zip |
Clean keymask in GridSelect(solves issue 318)
Ignore-this: 2c315539bf1ae8c427b7856b5fdb2e49
darcs-hash:20091021223404-7f603-1e20667b6fbcc50ada28c9de6059b13914b7357d.gz
-rw-r--r-- | XMonad/Actions/GridSelect.hs | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/XMonad/Actions/GridSelect.hs b/XMonad/Actions/GridSelect.hs index 86ef379..989e453 100644 --- a/XMonad/Actions/GridSelect.hs +++ b/XMonad/Actions/GridSelect.hs @@ -312,8 +312,10 @@ handle (ks,_) (KeyEvent {ev_event_type = t, ev_state = m }) | t == keyPress && ks == xK_Return = do (TwoDState { td_curpos = pos, td_elementmap = elmap }) <- get return $ fmap (snd . snd) $ findInElementMap pos elmap - | t == keyPress = maybe eventLoop diffAndRefresh . M.lookup (m,ks) - =<< gets (gs_navigate . td_gsconfig) + | t == keyPress = do + m' <- liftX (cleanMask m) + keymap <- gets (gs_navigate . td_gsconfig) + maybe eventLoop diffAndRefresh . M.lookup (m',ks) $ keymap where diffAndRefresh diff = do state <- get let elmap = td_elementmap state |