From 7d085e2c29b8195b6dcf4b2459b2a4f3664499ad Mon Sep 17 00:00:00 2001 From: Adam Vogt Date: Mon, 22 Feb 2010 16:17:10 +0100 Subject: Use more monoid instances to clean up U.WorkspaceCompare Ignore-this: ab7089175a7486144e01b706de04036e darcs-hash:20100222151710-1499c-e42b819bc146570ed3dd8127d580ab4fc9f2688f.gz --- XMonad/Util/WorkspaceCompare.hs | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) (limited to 'XMonad/Util') 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. -- cgit v1.2.3