aboutsummaryrefslogtreecommitdiffstats
path: root/HintedTile.hs
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--HintedTile.hs10
1 files changed, 6 insertions, 4 deletions
diff --git a/HintedTile.hs b/HintedTile.hs
index f3a811a..22ea946 100644
--- a/HintedTile.hs
+++ b/HintedTile.hs
@@ -2,6 +2,7 @@ module XMonadContrib.HintedTile (tall, wide) where
import XMonad
import Operations (Resize(..), IncMasterN(..), applySizeHints)
+import qualified StackSet as W
import {-# SOURCE #-} Config (borderWidth)
import Graphics.X11.Xlib
import Graphics.X11.Xlib.Extras
@@ -18,10 +19,11 @@ wide = tile splitVertically divideHorizontally
tall = tile splitHorizontally divideVertically
tile split divide nmaster delta frac =
- Layout { doLayout = \r w -> do { hints <- sequence (map getHints w)
- ; return $ zip w (tiler frac r `uncurry` splitAt nmaster hints) }
- , modifyLayout = \m -> fmap resize (fromMessage m) `mplus`
- fmap incmastern (fromMessage m) }
+ Layout { doLayout = \r w' -> let w = W.integrate w'
+ in do { hints <- sequence (map getHints w)
+ ; return $ zip w (tiler frac r `uncurry` splitAt nmaster hints) }
+ , modifyLayout = \m -> return $ fmap resize (fromMessage m) `mplus`
+ fmap incmastern (fromMessage m) }
where resize Shrink = tile split divide nmaster delta (frac-delta)
resize Expand = tile split divide nmaster delta (frac+delta)