diff options
author | Spencer Janssen <sjanssen@cse.unl.edu> | 2007-12-22 11:41:14 +0100 |
---|---|---|
committer | Spencer Janssen <sjanssen@cse.unl.edu> | 2007-12-22 11:41:14 +0100 |
commit | 656c004bd143fd354667f8f1d2e8786d5cbb4b96 (patch) | |
tree | e18ba450437036df66ccd9a2e8b37986be73aa00 /XMonad/Hooks/EwmhDesktops.hs | |
parent | 0a99440e52d872287b1add151c2608f089c45c5c (diff) | |
download | XMonadContrib-656c004bd143fd354667f8f1d2e8786d5cbb4b96.tar.gz XMonadContrib-656c004bd143fd354667f8f1d2e8786d5cbb4b96.tar.xz XMonadContrib-656c004bd143fd354667f8f1d2e8786d5cbb4b96.zip |
Factor workspace sorting into a separate module
darcs-hash:20071222104114-a5988-bfd9059d0556a526c275b6d0e4a930103bd7d990.gz
Diffstat (limited to '')
-rw-r--r-- | XMonad/Hooks/EwmhDesktops.hs | 15 |
1 files changed, 7 insertions, 8 deletions
diff --git a/XMonad/Hooks/EwmhDesktops.hs b/XMonad/Hooks/EwmhDesktops.hs index e8c6dae..34bec81 100644 --- a/XMonad/Hooks/EwmhDesktops.hs +++ b/XMonad/Hooks/EwmhDesktops.hs @@ -17,15 +17,15 @@ module XMonad.Hooks.EwmhDesktops ( ewmhDesktopsLogHook ) where -import Data.List (elemIndex, sortBy) -import Data.Ord (comparing) -import Data.Maybe (fromMaybe) +import Data.List +import Data.Maybe import XMonad import Control.Monad import qualified XMonad.StackSet as W import XMonad.Hooks.SetWMName +import XMonad.Util.WorkspaceCompare -- $usage -- You can use this module with the following in your @~\/.xmonad\/xmonad.hs@: @@ -48,9 +48,8 @@ import XMonad.Hooks.SetWMName -- of the current state of workspaces and windows. ewmhDesktopsLogHook :: X () ewmhDesktopsLogHook = withWindowSet $ \s -> do - -- Bad hack because xmonad forgets the original order of things, it seems - -- see http://code.google.com/p/xmonad/issues/detail?id=53 - let ws = sortBy (comparing W.tag) $ W.workspaces s + sort' <- getSortByTag + let ws = sort' $ W.workspaces s let wins = W.allWindows s setSupported @@ -70,8 +69,8 @@ ewmhDesktopsLogHook = withWindowSet $ \s -> do setClientList wins -- Per window Desktop - forM (zip ws [(0::Int)..]) $ \(w, wn) -> - forM (W.integrate' (W.stack w)) $ \win -> do + forM_ (zip ws [(0::Int)..]) $ \(w, wn) -> + forM_ (W.integrate' (W.stack w)) $ \win -> do setWindowDesktop win wn return () |