aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--XMonad/Hooks/EwmhDesktops.hs4
1 files changed, 2 insertions, 2 deletions
diff --git a/XMonad/Hooks/EwmhDesktops.hs b/XMonad/Hooks/EwmhDesktops.hs
index 4cf7432..50959ed 100644
--- a/XMonad/Hooks/EwmhDesktops.hs
+++ b/XMonad/Hooks/EwmhDesktops.hs
@@ -100,7 +100,7 @@ ewmhDesktopsLogHook = withWindowSet $ \s -> do
--
-- * _NET_WM_DESKTOP (move windows to other desktops)
--
--- * _NET_ACTIVE_WINDOW (activate another window)
+-- * _NET_ACTIVE_WINDOW (activate another window, possibly moving to the current desktop)
--
ewmhDesktopsLayout :: layout a -> HandleEvent EwmhDesktopsHook layout a
ewmhDesktopsLayout = eventHook EwmhDesktopsHook
@@ -133,7 +133,7 @@ handle ClientMessageEvent {
windows $ W.shiftWin (W.tag (ws !! n)) w
else trace $ "Bad _NET_DESKTOP with data[0]="++show n
else if mt == a_aw then do
- windows $ W.focusWindow w
+ windows $ W.focusWindow w . W.shiftWin (W.tag (W.workspace (W.current s))) w
else trace $ "Unknown ClientMessageEvent " ++ show mt
handle _ = undefined -- does not happen, as otherwise ewmhDesktopsHook would not match