aboutsummaryrefslogtreecommitdiffstats
path: root/Operations.hs
diff options
context:
space:
mode:
authorSpencer Janssen <sjanssen@cse.unl.edu>2007-06-11 20:26:29 +0200
committerSpencer Janssen <sjanssen@cse.unl.edu>2007-06-11 20:26:29 +0200
commit12fef902cb95611aefff2c6ea0a5623a74fdfa6c (patch)
treea989b75c177490ad1f53ee799a53021db34678b6 /Operations.hs
parent0997b70f5209aae05399a29a6072b1932deb6360 (diff)
downloadxmonad-12fef902cb95611aefff2c6ea0a5623a74fdfa6c.tar.gz
xmonad-12fef902cb95611aefff2c6ea0a5623a74fdfa6c.tar.xz
xmonad-12fef902cb95611aefff2c6ea0a5623a74fdfa6c.zip
API CHANGE: Give doLayout a Stack rather than a flattened list
darcs-hash:20070611182629-a5988-384e2f82340497c833a68d909ea485017803fe9b.gz
Diffstat (limited to 'Operations.hs')
-rw-r--r--Operations.hs9
1 files changed, 6 insertions, 3 deletions
diff --git a/Operations.hs b/Operations.hs
index 9a47d55..d1c122f 100644
--- a/Operations.hs
+++ b/Operations.hs
@@ -140,7 +140,8 @@ windows f = do
let n = W.tag (W.workspace w)
this = W.view n ws
Just l = fmap fst $ M.lookup n fls
- (flt, tiled) = partition (flip M.member (W.floating ws)) (W.index this)
+ flt = filter (flip M.member (W.floating ws)) (W.index this)
+ tiled = W.filter (not . flip M.member (W.floating ws)) . W.stack . W.workspace . W.current $ this
(Rectangle sx sy sw sh) = genericIndex xinesc (W.screen w)
(gt,gb,gl,gr) = genericIndex gaps (W.screen w)
viewrect = Rectangle (sx + fromIntegral gl) (sy + fromIntegral gt)
@@ -370,7 +371,9 @@ instance Message IncMasterN
-- simple fullscreen mode, just render all windows fullscreen.
-- a plea for tuple sections: map . (,sc)
full :: Layout
-full = Layout { doLayout = \sc ws -> return [ (w,sc) | w <- ws ]
+full = Layout { doLayout = \sc ws -> return $ case ws of
+ W.Empty -> []
+ (W.Node f _ _) -> [(f, sc)]
, modifyLayout = const (return Nothing) } -- no changes
--
@@ -378,7 +381,7 @@ full = Layout { doLayout = \sc ws -> return [ (w,sc) | w <- ws ]
--
tall :: Int -> Rational -> Rational -> Layout
tall nmaster delta frac =
- Layout { doLayout = \r -> return . ap zip (tile frac r nmaster . length)
+ Layout { doLayout = \r -> return . ap zip (tile frac r nmaster . length) . W.integrate
, modifyLayout = \m -> return $ msum [fmap resize (fromMessage m)
,fmap incmastern (fromMessage m)] }