Filter extra modifier bits some layouts set in XMonad.Prompt

This commit is contained in:
Daniel Schoepe 2009-10-12 13:28:14 +00:00
parent 1edc2752c7
commit 064f117018

View File

@ -75,7 +75,7 @@ import Control.Monad.Reader
import Control.Monad.State import Control.Monad.State
import Control.Applicative ((<$>)) import Control.Applicative ((<$>))
import Data.Char import Data.Char
import Data.Bits ((.&.),complement) import Data.Bits
import Data.Maybe import Data.Maybe
import Data.List import Data.List
import Data.Set (fromList, toList) import Data.Set (fromList, toList)
@ -335,7 +335,8 @@ eventLoop action = do
cleanMask :: KeyMask -> XP KeyMask cleanMask :: KeyMask -> XP KeyMask
cleanMask msk = do cleanMask msk = do
numlock <- gets numlockMask numlock <- gets numlockMask
return (complement (numlock .|. lockMask) .&. msk) let highMasks = 1 `shiftL` 12 - 1
return (complement (numlock .|. lockMask) .&. msk .&. highMasks)
-- Main event handler -- Main event handler
handle :: KeyStroke -> Event -> XP () handle :: KeyStroke -> Event -> XP ()