aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Commands.hs4
-rw-r--r--SinkAll.hs8
2 files changed, 6 insertions, 6 deletions
diff --git a/Commands.hs b/Commands.hs
index 524eadc..4916807 100644
--- a/Commands.hs
+++ b/Commands.hs
@@ -27,7 +27,7 @@ module XMonadContrib.Commands (
import XMonad
import Operations
-import StackSet hiding (sink)
+import StackSet
import XMonadContrib.Dmenu (dmenu)
import {-# SOURCE #-} Config (workspaces)
@@ -91,7 +91,7 @@ defaultCommands = workspaceCommands ++ screenCommands
, ("swap-up", windows $ swapUp)
, ("swap-down", windows $ swapDown)
, ("swap-master", windows $ swapMaster)
- , ("sink", withFocused sink)
+ , ("sink", withFocused $ windows . sink)
, ("quit-wm", io $ exitWith ExitSuccess)
]
diff --git a/SinkAll.hs b/SinkAll.hs
index b6caa1d..5531e2d 100644
--- a/SinkAll.hs
+++ b/SinkAll.hs
@@ -16,7 +16,7 @@ module XMonadContrib.SinkAll (
import Operations
import XMonad
-import StackSet hiding (sink)
+import StackSet
import Control.Monad.State
import Graphics.X11.Xlib
@@ -32,6 +32,6 @@ sinkAll :: X ()
sinkAll = withAll sink
-- Apply a function to all windows on current workspace.
-withAll :: (Window -> X a) -> X ()
-withAll f = gets (integrate' . stack . workspace . current . windowset) >>=
- mapM_ f
+withAll :: (Window -> WindowSet -> WindowSet) -> X ()
+withAll f = windows $ \ws -> let all = integrate' . stack . workspace . current $ ws
+ in foldr f ws all