diff options
-rw-r--r-- | XMonad/Operations.hs | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/XMonad/Operations.hs b/XMonad/Operations.hs index f6c927e..6a45553 100644 --- a/XMonad/Operations.hs +++ b/XMonad/Operations.hs @@ -103,6 +103,7 @@ windows :: (WindowSet -> WindowSet) -> X () windows f = do XState { windowset = old } <- get let oldvisible = concatMap (W.integrate' . W.stack . W.workspace) $ W.current old : W.visible old + newwindows = W.allWindows ws \\ W.allWindows old ws = f old XConf { display = d , normalBorder = nbc, focusedBorder = fbc } <- ask @@ -155,7 +156,7 @@ windows f = do -- hide every window that was potentially visible before, but is not -- given a position by a layout now. - mapM_ hide (nub oldvisible \\ visible) + mapM_ hide (nub (oldvisible ++ newwindows) \\ visible) -- all windows that are no longer in the windowset are marked as -- withdrawn, it is important to do this after the above, otherwise 'hide' |