diff options
author | Devin Mullins <me@twifkak.com> | 2007-10-06 09:09:59 +0200 |
---|---|---|
committer | Devin Mullins <me@twifkak.com> | 2007-10-06 09:09:59 +0200 |
commit | fcec780f4bf68073bfad76998b05bf8663e9b83f (patch) | |
tree | 7259dd31f4ec7a516ee63310bfbedb0bef6e9094 /Commands.hs | |
parent | 6ee3d30ce497d673bdc25592b846c14b4b660a17 (diff) | |
download | XMonadContrib-fcec780f4bf68073bfad76998b05bf8663e9b83f.tar.gz XMonadContrib-fcec780f4bf68073bfad76998b05bf8663e9b83f.tar.xz XMonadContrib-fcec780f4bf68073bfad76998b05bf8663e9b83f.zip |
change Dmenu functions to return IO/X (Maybe String)
dmenu exits with code 1 when you hit Escape, and I wanna create a contrib that
takes advantage of that.
This required changes in four contribs (Commands, DirectoryPrompt, ShellPrompt,
and WorkspaceDir), and might require changes in users' Configs. Also, I'm not
sure some of the changes I made to the client code are very Haskelly. Would
appreciate input there.
darcs-hash:20071006070959-78224-eeefb4300d6d3de7b199f2b1ad37ba43384e03f1.gz
Diffstat (limited to '')
-rw-r--r-- | Commands.hs | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/Commands.hs b/Commands.hs index ccb8c55..dcab544 100644 --- a/Commands.hs +++ b/Commands.hs @@ -102,7 +102,9 @@ runCommand :: [(String, X ())] -> X () runCommand cl = do let m = commandMap cl choice <- dmenu (M.keys m) - fromMaybe (return ()) (M.lookup choice m) + case choice of + Just selection -> fromMaybe (return ()) (M.lookup selection m) + Nothing -> return () runCommand' :: String -> X () runCommand' c = do |