From 31d5db467ae510b75f2e815eab7042f03e8e37c6 Mon Sep 17 00:00:00 2001 From: Daniel Schoepe Date: Mon, 28 Sep 2009 11:19:46 +0200 Subject: Fix for issue 315 Ignore-this: 7de748d6cbd143b073451ba92ecec659 darcs-hash:20090928091946-7f603-5b282d63ae1aab1911f7735c3b6a16ab53525321.gz --- XMonad/Prompt.hs | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'XMonad/Prompt.hs') diff --git a/XMonad/Prompt.hs b/XMonad/Prompt.hs index 07f80c0..fa0c8f4 100644 --- a/XMonad/Prompt.hs +++ b/XMonad/Prompt.hs @@ -345,7 +345,7 @@ handle ks@(sym,_) e@(KeyEvent {ev_event_type = t, ev_state = m}) = do when (length c > 1) $ modify (\s -> s { showComplWin = True }) if complKey == sym then completionHandle c ks e - else when (t == keyPress) $ cleanMask m >>= flip keyPressHandle ks + else when (t == keyPress) $ keyPressHandle m ks handle _ (ExposeEvent {ev_window = w}) = do st <- get when (win st == w) updateWindows @@ -424,8 +424,9 @@ defaultXPKeymap = M.fromList $ ] keyPressHandle :: KeyMask -> KeyStroke -> XP () -keyPressHandle mask (ks,str) = do +keyPressHandle m (ks,str) = do km <- gets (promptKeymap . config) + mask <- cleanMask m case M.lookup (mask,ks) km of Just action -> action >> updateWindows Nothing -> case str of -- cgit v1.2.3