aboutsummaryrefslogtreecommitdiffstats
path: root/XMonad/Hooks/EwmhDesktops.hs
diff options
context:
space:
mode:
authorJoachim Breitner <mail@joachim-breitner.de>2008-04-11 15:44:11 +0200
committerJoachim Breitner <mail@joachim-breitner.de>2008-04-11 15:44:11 +0200
commit08aa4d905be63d7de87808f5ae0dec88e1a870d0 (patch)
tree714a7e0cf551c47e161c18801d7afef925185916 /XMonad/Hooks/EwmhDesktops.hs
parentf29725df1bdea9d0d14843ec46c4ea1aa1880a70 (diff)
downloadXMonadContrib-08aa4d905be63d7de87808f5ae0dec88e1a870d0.tar.gz
XMonadContrib-08aa4d905be63d7de87808f5ae0dec88e1a870d0.tar.xz
XMonadContrib-08aa4d905be63d7de87808f5ae0dec88e1a870d0.zip
Fix window order in EWMH
For pagers to draw the stacking order correctly, the focused window has to be the last in the list. Thus put an appropriate implementation of allWindows into the Module. This does not work perfectly with floating windows. darcs-hash:20080411134411-23c07-bcc62f5377a52855c941e86d6a7eca5451bef746.gz
Diffstat (limited to 'XMonad/Hooks/EwmhDesktops.hs')
-rw-r--r--XMonad/Hooks/EwmhDesktops.hs3
1 files changed, 2 insertions, 1 deletions
diff --git a/XMonad/Hooks/EwmhDesktops.hs b/XMonad/Hooks/EwmhDesktops.hs
index 21f2b3c..98ae410 100644
--- a/XMonad/Hooks/EwmhDesktops.hs
+++ b/XMonad/Hooks/EwmhDesktops.hs
@@ -59,7 +59,6 @@ ewmhDesktopsLogHook :: X ()
ewmhDesktopsLogHook = withWindowSet $ \s -> do
sort' <- getSortByIndex
let ws = sort' $ W.workspaces s
- let wins = W.allWindows s
setSupported
@@ -74,6 +73,8 @@ ewmhDesktopsLogHook = withWindowSet $ \s -> do
setCurrentDesktop curr
+ -- all windows, with focused windows last
+ let wins = nub . concatMap (maybe [] (\(W.Stack x l r)-> reverse l ++ r ++ [x]) . W.stack) $ ws
setClientList wins
-- Per window Desktop