xmonad-contrib-0.17.1: Community-maintained extensions for xmonad

Copyright | (c) Peter Jones 2015
License | BSD3-style (see LICENSE)
Maintainer | pjones@devalot.com
Stability | unstable
Portability | not portable
Safe Haskell | Safe-Inferred
Language | Haskell2010

XMonad.Layout.Hidden

Contents

- Usage

Description

Similar to XMonad.Layout.Minimize but completely removes windows from the window set so XMonad.Layout.BoringWindows isn't necessary. Perfect companion to XMonad.Layout.BinarySpacePartition since it can be used to move windows to another part of the BSP tree.

Synopsis

- data HiddenWindows a
- data HiddenMsg
  - = HideWindow Window
  - | PopNewestHiddenWindow
  - | PopOldestHiddenWindow
  - | PopSpecificHiddenWindow Window
- hiddenWindows :: LayoutClass l Window => l Window -> ModifiedLayout HiddenWindows l Window
- hideWindow :: Window -> X ()
- popOldestHiddenWindow :: X ()
- popNewestHiddenWindow :: X ()
- popHiddenWindow :: Window -> X ()

# Usage

You can use this module with the following in your `~/.xmonad/xmonad.hs`:

    import XMonad.Layout.Hidden

Then edit your `layoutHook` by adding the `HiddenWindows` layout modifier:

    myLayout = hiddenWindows (Tall 1 (3/100) (1/2)) ||| Full ||| etc..
    main = xmonad def { layoutHook = myLayout }

For more detailed instructions on editing the layoutHook see:

XMonad.Doc.Extending

In the key bindings, do something like:

           , ((modMask, xK_backslash), withFocused hideWindow)
           , ((modMask .|. shiftMask, xK_backslash), popOldestHiddenWindow)
           ...

For detailed instruction on editing the key bindings see:

XMonad.Doc.Extending.

data HiddenWindows a #

#### Instances

Instances details

LayoutModifier HiddenWindows Window # |

Instance details

Defined in XMonad.Layout.Hidden

Methods

modifyLayout :: LayoutClass l Window => HiddenWindows Window -> Workspace WorkspaceId (l Window) Window -> Rectangle -> X ([(Window, Rectangle)], Maybe (l Window)) #

modifyLayoutWithUpdate :: LayoutClass l Window => HiddenWindows Window -> Workspace WorkspaceId (l Window) Window -> Rectangle -> X (([(Window, Rectangle)], Maybe (l Window)), Maybe (HiddenWindows Window)) #

handleMess :: HiddenWindows Window -> SomeMessage -> X (Maybe (HiddenWindows Window)) #

handleMessOrMaybeModifyIt :: HiddenWindows Window -> SomeMessage -> X (Maybe (Either (HiddenWindows Window) SomeMessage)) #

pureMess :: HiddenWindows Window -> SomeMessage -> Maybe (HiddenWindows Window) #

redoLayout :: HiddenWindows Window -> Rectangle -> Maybe (Stack Window) -> [(Window, Rectangle)] -> X ([(Window, Rectangle)], Maybe (HiddenWindows Window)) #

pureModifier :: HiddenWindows Window -> Rectangle -> Maybe (Stack Window) -> [(Window, Rectangle)] -> ([(Window, Rectangle)], Maybe (HiddenWindows Window)) #

hook :: HiddenWindows Window -> X () #

unhook :: HiddenWindows Window -> X () #

modifierDescription :: HiddenWindows Window -> String #

modifyDescription :: LayoutClass l Window => HiddenWindows Window -> l Window -> String #

Read (HiddenWindows a) # |
Instance details Defined in XMonad.Layout.Hidden Methods readsPrec :: Int -> ReadS (HiddenWindows a) # readList :: ReadS [HiddenWindows a] # readPrec :: ReadPrec (HiddenWindows a) readListPrec :: ReadPrec [HiddenWindows a]
Show (HiddenWindows a) # |
Instance details Defined in XMonad.Layout.Hidden Methods showsPrec :: Int -> HiddenWindows a -> ShowS # show :: HiddenWindows a -> String # showList :: [HiddenWindows a] -> ShowS #

data HiddenMsg #

Messages for the `HiddenWindows` layout modifier.

Constructors

HideWindow Window | Hide a window.
PopNewestHiddenWindow | Restore window (FILO).
PopOldestHiddenWindow | Restore window (FIFO).
PopSpecificHiddenWindow Window | Restore specific window.

#### Instances

Instances details

Eq HiddenMsg # |
Instance details Defined in XMonad.Layout.Hidden Methods (==) :: HiddenMsg -> HiddenMsg -> Bool # (/=) :: HiddenMsg -> HiddenMsg -> Bool #
Message HiddenMsg # |
Instance details Defined in XMonad.Layout.Hidden

hiddenWindows :: LayoutClass l Window => l Window -> ModifiedLayout HiddenWindows l Window #

Apply the `HiddenWindows` layout modifier.

hideWindow :: Window -> X () #

Remove the given window from the current layout. It is placed in list of hidden windows so it can be restored later.

popOldestHiddenWindow :: X () #

Restore a previously hidden window. Using this function will treat the list of hidden windows as a FIFO queue. That is, the first window hidden will be restored.

popNewestHiddenWindow :: X () #

Restore a previously hidden window. Using this function will treat the list of hidden windows as a FILO queue. That is, the most recently hidden window will be restored.

popHiddenWindow :: Window -> X () #