aboutsummaryrefslogtreecommitdiffstats
path: root/XMonad/Util
diff options
context:
space:
mode:
Diffstat (limited to 'XMonad/Util')
-rw-r--r--XMonad/Util/WorkspaceCompare.hs8
1 files changed, 2 insertions, 6 deletions
diff --git a/XMonad/Util/WorkspaceCompare.hs b/XMonad/Util/WorkspaceCompare.hs
index 6b4ba54..66e401e 100644
--- a/XMonad/Util/WorkspaceCompare.hs
+++ b/XMonad/Util/WorkspaceCompare.hs
@@ -28,6 +28,7 @@ import Data.List
import Data.Monoid
import Data.Ord
import Data.Maybe
+import Data.Function
type WorkspaceCompare = WorkspaceId -> WorkspaceId -> Ordering
type WorkspaceSort = [WindowSpace] -> [WindowSpace]
@@ -44,12 +45,7 @@ getWsIndex = do
getWsCompare :: X WorkspaceCompare
getWsCompare = do
wsIndex <- getWsIndex
- return $ \a b -> f (wsIndex a) (wsIndex b) `mappend` compare a b
- where
- f Nothing Nothing = EQ
- f (Just _) Nothing = LT
- f Nothing (Just _) = GT
- f (Just x) (Just y) = compare x y
+ return $ mconcat [compare `on` wsIndex, compare]
-- | A simple comparison function that orders workspaces
-- lexicographically by tag.