From 7141da81104fae9e1892f580192a44713d52efe5 Mon Sep 17 00:00:00 2001 From: Daniel Schoepe Date: Thu, 22 Oct 2009 00:34:04 +0200 Subject: Clean keymask in GridSelect(solves issue 318) Ignore-this: 2c315539bf1ae8c427b7856b5fdb2e49 darcs-hash:20091021223404-7f603-1e20667b6fbcc50ada28c9de6059b13914b7357d.gz --- XMonad/Actions/GridSelect.hs | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'XMonad/Actions/GridSelect.hs') 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 -- cgit v1.2.3