summaryrefslogtreecommitdiffstats
path: root/xmonad.hs
diff options
context:
space:
mode:
Diffstat (limited to 'xmonad.hs')
-rw-r--r--xmonad.hs23
1 files changed, 5 insertions, 18 deletions
diff --git a/xmonad.hs b/xmonad.hs
index c1f7605..560a77b 100644
--- a/xmonad.hs
+++ b/xmonad.hs
@@ -21,6 +21,7 @@ import Ratio((%))
--import ConfigurableBorders
import FullscreenManager
import NoBorders
+import ProcessWorkspaces
modm = mod4Mask
@@ -44,8 +45,7 @@ main = xmonad $ gnomeConfig
, ("M-<F1>", viewOrWarp 0)
, ("M-<F2>", viewOrWarp 1)
, ("M-<F3>", viewOrWarp 2)
- , ("M-p", spawn "exe=`dmenu_path | /home/neoraider/bin/dmemu -b` && eval \"exec $exe\"")
-
+ , ("M-p", spawnOnCurrent "exe=`dmenu_path | /home/neoraider/bin/dmemu -b` && eval \"exec $exe\"")
]
`additionalMouseBindings`
[ ((modm, button4), \_ -> sendMessage Shrink)
@@ -75,25 +75,11 @@ myStartupHook = do
startupHook gnomeConfig
setWMName "LG3D"
-isDialogWindow :: Query Bool
-isDialogWindow = do
- atom__NET_WM_WINDOW_TYPE_DIALOG <- liftX $ getAtom "_NET_WM_WINDOW_TYPE_DIALOG"
- atomProperty "_NET_WM_WINDOW_TYPE" =? atom__NET_WM_WINDOW_TYPE_DIALOG
-
-atomProperty :: String -> Query Atom
-atomProperty p = ask >>= (\w -> liftX $ withDisplay $ \d -> fmap (fromMaybe 0) $ getAtomProperty d w p)
-
-getAtomProperty :: Display -> Window -> String -> X (Maybe Atom)
-getAtomProperty d w p = do
- a <- getAtom p
- md <- io $ getWindowProperty32 d a w
- return $ fmap fromIntegral $ listToMaybe $ fromMaybe [] md
-
myManageHook :: ManageHook
myManageHook = composeAll
[ composeOne
- [ isDialogWindow -?> doFloat
+ [ isDialog -?> doFloat
, className =? "Guake.py" -?> doFloatMaybeFullscreen -- <+> doConfigBorderOff)
--, className =? "Do" -?> (doFloat <+> doConfigBorderOff)
, className =? "MPlayer" -?> doCenterFloat
@@ -104,11 +90,12 @@ myManageHook = composeAll
, stringProperty "WM_ICON_NAME" =? "ZeroGS" -?> doFloat
, isFullscreen -?> doFullscreen
]
+ , moveWindowHook
, manageHook gnomeConfig
]
-myLayoutHook = manageFullscreen $ smartBorders (Full ||| tiled ||| Mirror tiled)
+myLayoutHook = processWorkspaceStorage $ manageFullscreen $ smartBorders (Full ||| tiled ||| Mirror tiled)
where
-- default tiling algorithm partitions the screen into two panes
tiled = ResizableTall nmaster delta ratio []