From cdae01dfdb06e64eefd352e1af6541c23ac6f1c9 Mon Sep 17 00:00:00 2001
From: Spencer Janssen <spencerjanssen@gmail.com>
Date: Tue, 3 Nov 2009 22:26:21 +0000
Subject: [PATCH] Update Prompt for numlockMask changes

---
 XMonad/Prompt.hs | 13 ++++++-------
 1 file changed, 6 insertions(+), 7 deletions(-)

diff --git a/XMonad/Prompt.hs b/XMonad/Prompt.hs
index 3e02639d..a8646e1f 100644
--- a/XMonad/Prompt.hs
+++ b/XMonad/Prompt.hs
@@ -64,7 +64,7 @@ module XMonad.Prompt
 import Prelude hiding (catch)
 
 import XMonad  hiding (config, numlockMask, cleanMask)
-import qualified XMonad as X (numlockMask,config)
+import qualified XMonad as X (numlockMask)
 import qualified XMonad.StackSet as W
 import XMonad.Util.Font
 import XMonad.Util.Types
@@ -219,8 +219,8 @@ amberXPConfig = defaultXPConfig { fgColor = "#ca8f2d", bgColor = "black", fgHLig
 type ComplFunction = String -> IO [String]
 
 initState :: XPrompt p => Display -> Window -> Window -> Rectangle -> ComplFunction
-          -> GC -> XMonadFont -> p -> [String] -> XPConfig -> XPState
-initState d rw w s compl gc fonts pt h c =
+          -> GC -> XMonadFont -> p -> [String] -> XPConfig -> KeyMask -> XPState
+initState d rw w s compl gc fonts pt h c nm =
     XPS { dpy                = d
         , rootw              = rw
         , win                = w
@@ -239,7 +239,7 @@ initState d rw w s compl gc fonts pt h c =
         , config             = c
         , successful         = False
         , done               = False
-        , numlockMask        = X.numlockMask defaultConfig
+        , numlockMask        = nm
         }
 
 -- this would be much easier with functional references
@@ -274,10 +274,9 @@ mkXPromptWithReturn t conf compl action = do
   gc <- io $ createGC d w
   io $ setGraphicsExposures d gc False
   fs <- initXMF (font conf)
-  numlock <- asks $ X.numlockMask . X.config
+  numlock <- gets $ X.numlockMask
   let hs = fromMaybe [] $ M.lookup (showXPrompt t) hist
-      st = (initState d rw w s compl gc fs (XPT t) hs conf)
-           { numlockMask = numlock }
+      st = initState d rw w s compl gc fs (XPT t) hs conf numlock
   st' <- io $ execStateT runXP st
 
   releaseXMF fs