summaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
authorMatthias Schiffer <mschiffer@universe-factory.net>2011-02-28 22:56:39 +0100
committerMatthias Schiffer <mschiffer@universe-factory.net>2011-02-28 22:56:39 +0100
commit064352bdda2ce311772516fcd0c3394c33aa674d (patch)
tree476d8153d842047a34251209ef0043e02865f260 /lib
parent4f4f864fd37dcad02f526045eb4a061fbdaa177e (diff)
downloadxmonad-conf-064352bdda2ce311772516fcd0c3394c33aa674d.tar
xmonad-conf-064352bdda2ce311772516fcd0c3394c33aa674d.zip
Allow regrouping processes
Diffstat (limited to 'lib')
-rw-r--r--lib/ProcessWorkspaces.hs11
1 files changed, 11 insertions, 0 deletions
diff --git a/lib/ProcessWorkspaces.hs b/lib/ProcessWorkspaces.hs
index 06818b0..8789c51 100644
--- a/lib/ProcessWorkspaces.hs
+++ b/lib/ProcessWorkspaces.hs
@@ -4,6 +4,8 @@ module ProcessWorkspaces ( setProcessWorkspace
, getProcessWorkspace
, doAutoShift
, doIgnoreProcessWorkspace
+ , regroupProcess
+ , regroupWinProcess
, shiftIgnoreGroup
, shiftWinIgnoreGroup
, shiftGroup
@@ -51,6 +53,15 @@ doIgnoreProcessWorkspace = do
liftX $ setProcessWorkspace (fromJust mp) Nothing
idHook
+regroupProcess :: WorkspaceId -> X ()
+regroupProcess ws = withFocused $ regroupWinProcess ws
+
+regroupWinProcess :: WorkspaceId -> Window -> X ()
+regroupWinProcess ws w = do
+ mp <- runQuery pid w
+ when (isJust mp) $ setProcessWorkspace (fromJust mp) (Just ws)
+ shiftWinGroup ws w
+
shiftIgnoreGroup :: WorkspaceId -> X ()
shiftIgnoreGroup ws = withFocused $ shiftWinIgnoreGroup ws