only hide old workspace on view if the old workspace is not visible (Xinerama)

This commit is contained in:
Jason Creighton
2007-05-21 03:14:35 +00:00
parent 1c4b0a51d8
commit b757a526db

View File

@@ -67,7 +67,9 @@ shift n = withFocused hide >> windows (W.shift n)
view :: WorkspaceId -> X ()
view n = withWorkspace $ \w -> when (n /= (W.tag (W.current w))) $ do
windows $ W.view n -- move in new workspace first, to avoid flicker
mapM_ hide (W.index w) -- now just hide the old workspace
-- Hide the old workspace if it is no longer visible
oldWsNotVisible <- (not . M.member (W.tag . W.current $ w) . W.screens) `liftM` gets workspace
when oldWsNotVisible $ mapM_ hide (W.index w)
clearEnterEvents -- better clear any events from the old workspace
-- | Kill the currently focused client. If we do kill it, we'll get a