aboutsummaryrefslogtreecommitdiffstats
path: root/Operations.hs
diff options
context:
space:
mode:
authorSpencer Janssen <sjanssen@cse.unl.edu>2007-09-28 02:22:41 +0200
committerSpencer Janssen <sjanssen@cse.unl.edu>2007-09-28 02:22:41 +0200
commitd8a30ccc241cc400c5169b1ecea7b8278f7c0da2 (patch)
tree02716652f409ea04abd4fbeb9306e57ee0d168c4 /Operations.hs
parent70cc8ae2c93a3c2137003c3adfc6292ef653b90f (diff)
downloadxmonad-d8a30ccc241cc400c5169b1ecea7b8278f7c0da2.tar.gz
xmonad-d8a30ccc241cc400c5169b1ecea7b8278f7c0da2.tar.xz
xmonad-d8a30ccc241cc400c5169b1ecea7b8278f7c0da2.zip
Add setLayout to the core
darcs-hash:20070928002241-a5988-68aacebdf64cab00c7c68bf3c91fb55210c31e99.gz
Diffstat (limited to 'Operations.hs')
-rw-r--r--Operations.hs7
1 files changed, 7 insertions, 0 deletions
diff --git a/Operations.hs b/Operations.hs
index 128c4ad..ee1fd80 100644
--- a/Operations.hs
+++ b/Operations.hs
@@ -326,6 +326,13 @@ runOnWorkspaces job = do ws <- gets windowset
instance Message Event
+-- | Set the layout of the currently viewed workspace
+setLayout :: SomeLayout Window -> X ()
+setLayout l = do
+ sendMessage ReleaseResources
+ windows $ \ss@(W.StackSet { W.current = c@(W.Screen { W.workspace = ws })})
+ -> ss {W.current = c { W.workspace = ws { W.layout = l } } }
+
-- Layout selection manager
-- This is a layout that allows users to switch between various layout