summaryrefslogtreecommitdiffstats
path: root/XMonad
diff options
context:
space:
mode:
Diffstat (limited to 'XMonad')
-rw-r--r--XMonad/Config.hs9
-rw-r--r--XMonad/Core.hs1
-rw-r--r--XMonad/Main.hs2
3 files changed, 10 insertions, 2 deletions
diff --git a/XMonad/Config.hs b/XMonad/Config.hs
index 677248d..98ec02a 100644
--- a/XMonad/Config.hs
+++ b/XMonad/Config.hs
@@ -25,11 +25,11 @@ module XMonad.Config (defaultConfig) where
-- Useful imports
--
import XMonad.Core as XMonad hiding
- (workspaces,manageHook,numlockMask,keys,logHook,borderWidth,mouseBindings
+ (workspaces,manageHook,numlockMask,keys,logHook,startupHook,borderWidth,mouseBindings
,defaultGaps,layoutHook,modMask,terminal,normalBorderColor,focusedBorderColor
,focusFollowsMouse)
import qualified XMonad.Core as XMonad
- (workspaces,manageHook,numlockMask,keys,logHook,borderWidth,mouseBindings
+ (workspaces,manageHook,numlockMask,keys,logHook,startupHook,borderWidth,mouseBindings
,defaultGaps,layoutHook,modMask,terminal,normalBorderColor,focusedBorderColor
,focusFollowsMouse)
@@ -134,6 +134,10 @@ manageHook = composeAll
logHook :: X ()
logHook = return ()
+-- | Perform an arbitrary action at xmonad startup.
+startupHook :: X ()
+startupHook = return ()
+
------------------------------------------------------------------------
-- Extensible layouts
--
@@ -256,6 +260,7 @@ defaultConfig = XConfig
, XMonad.modMask = defaultModMask
, XMonad.keys = keys
, XMonad.logHook = logHook
+ , XMonad.startupHook = startupHook
, XMonad.mouseBindings = mouseBindings
, XMonad.manageHook = manageHook
, XMonad.focusFollowsMouse = focusFollowsMouse }
diff --git a/XMonad/Core.hs b/XMonad/Core.hs
index ea84bd6..89e6ab2 100644
--- a/XMonad/Core.hs
+++ b/XMonad/Core.hs
@@ -88,6 +88,7 @@ data XConfig l = XConfig
-- ^ The mouse bindings
, borderWidth :: !Dimension -- ^ The border width
, logHook :: !(X ()) -- ^ The action to perform when the windows set is changed
+ , startupHook :: !(X ()) -- ^ The action to perform on startup
, focusFollowsMouse :: !Bool -- ^ Whether window entry events can change focus
}
diff --git a/XMonad/Main.hs b/XMonad/Main.hs
index 7557ad6..405caec 100644
--- a/XMonad/Main.hs
+++ b/XMonad/Main.hs
@@ -116,6 +116,8 @@ xmonad initxmc = do
-- manage the as-yet-unmanaged windows
mapM_ manage (ws \\ W.allWindows winset)
+ startupHook initxmc
+
-- main loop, for all you HOF/recursion fans out there.
forever_ $ handle =<< io (nextEvent dpy e >> getEvent e)