mirror of
https://github.com/xmonad/xmonad-contrib.git
synced 2025-05-19 03:20:21 -07:00
X.A.CopyWindow: fix copiesPP
Related: https://github.com/xmonad/xmonad-contrib/issues/557 Co-authored-by: Tomáš Janoušek <tomi@nomi.cz>
This commit is contained in:
parent
2d849cc0b7
commit
16b9f0f96d
@ -1,4 +1,5 @@
|
||||
{-# LANGUAGE PatternGuards #-}
|
||||
{-# LANGUAGE RecordWildCards #-}
|
||||
-----------------------------------------------------------------------------
|
||||
-- |
|
||||
-- Module : XMonad.Actions.CopyWindow
|
||||
@ -25,11 +26,12 @@ module XMonad.Actions.CopyWindow (
|
||||
) where
|
||||
|
||||
import XMonad
|
||||
import XMonad.Prelude
|
||||
import Control.Arrow ((&&&))
|
||||
import qualified Data.List as L
|
||||
|
||||
import XMonad.Actions.WindowGo
|
||||
import XMonad.Hooks.StatusBar.PP (PP(..))
|
||||
import XMonad.Hooks.StatusBar.PP (PP(..), WS(..), isHidden)
|
||||
import qualified XMonad.StackSet as W
|
||||
|
||||
-- $usage
|
||||
@ -92,9 +94,9 @@ import qualified XMonad.StackSet as W
|
||||
copiesPP :: (WorkspaceId -> String) -> PP -> X PP
|
||||
copiesPP wtoS pp = do
|
||||
copies <- wsContainingCopies
|
||||
let check ws | ws `elem` copies = wtoS ws
|
||||
| otherwise = ppHidden pp ws
|
||||
return pp { ppHidden = check }
|
||||
let check WS{..} = W.tag wsWS `elem` copies
|
||||
let printer = (asks (isHidden <&&> check) >>= guard) $> wtoS
|
||||
return pp{ ppPrinters = printer <|> ppPrinters pp }
|
||||
|
||||
-- | Copy the focused window to a workspace.
|
||||
copy :: (Eq s, Eq i, Eq a) => i -> W.StackSet i l a s sd -> W.StackSet i l a s sd
|
||||
|
Loading…
x
Reference in New Issue
Block a user