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

Copyright | (c) 2008 David Roundy <droundy@darcs.net>
License | BSD3-style (see LICENSE)
Maintainer | Adam Vogt <vogt.adam@gmail.com>
Stability | unstable
Portability | unportable
Safe Haskell | None
Language | Haskell2010

XMonad.Layout.BoringWindows

Contents

- Usage
- Tips
  - variant of `Full`

Description

BoringWindows is an extension to allow windows to be marked boring

Synopsis

- boringWindows :: (LayoutClass l a, Eq a) => l a -> ModifiedLayout BoringWindows l a
- boringAuto :: (LayoutClass l a, Eq a) => l a -> ModifiedLayout BoringWindows l a
- markBoring :: X ()
- markBoringEverywhere :: X ()
- clearBoring :: X ()
- focusUp :: X ()
- focusDown :: X ()
- focusMaster :: X ()
- swapUp :: X ()
- swapDown :: X ()
- siftUp :: X ()
- siftDown :: X ()
- data UpdateBoring = UpdateBoring
- data BoringMessage
  - = Replace String [Window]
  - | Merge String [Window]
- data BoringWindows a

# Usage

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

    import XMonad.Layout.BoringWindows

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

    myLayout = boringWindows (Full ||| etc..)
    main = xmonad def { layoutHook = myLayout }

Then to your keybindings, add:

    , ((modm, xK_j), focusUp)
    , ((modm, xK_k), focusDown)
    , ((modm, xK_m), focusMaster)

For more detailed instructions on editing the layoutHook see the tutorial and XMonad.Doc.Extending.

boringWindows :: (LayoutClass l a, Eq a) => l a -> ModifiedLayout BoringWindows l a Source #

boringAuto :: (LayoutClass l a, Eq a) => l a -> ModifiedLayout BoringWindows l a Source #

Mark windows that are not given rectangles as boring

markBoring :: X () Source #

markBoringEverywhere :: X () Source #

Mark current focused window boring for all layouts. This is useful in combination with the XMonad.Actions.CopyWindow module.

clearBoring :: X () Source #

focusUp :: X () Source #

focusDown :: X () Source #

focusMaster :: X () Source #

swapUp :: X () Source #

swapDown :: X () Source #

siftUp :: X () Source #

siftDown :: X () Source #

data UpdateBoring Source #

UpdateBoring is sent before attempting to view another boring window, so that layouts have a chance to mark boring windows.

Constructors

UpdateBoring |

#### Instances

Instances details

Message UpdateBoring Source # |
Instance details Defined in XMonad.Layout.BoringWindows

data BoringMessage Source #

Constructors

Replace String [Window] |
Merge String [Window] |

#### Instances

Instances details

Read BoringMessage Source # |
Instance details Defined in XMonad.Layout.BoringWindows Methods readsPrec :: Int -> ReadS BoringMessage Source # readList :: ReadS [BoringMessage] Source # readPrec :: ReadPrec BoringMessage Source # readListPrec :: ReadPrec [BoringMessage] Source #
Show BoringMessage Source # |
Instance details Defined in XMonad.Layout.BoringWindows Methods showsPrec :: Int -> BoringMessage -> ShowS Source # show :: BoringMessage -> String Source # showList :: [BoringMessage] -> ShowS Source #
Message BoringMessage Source # |
Instance details Defined in XMonad.Layout.BoringWindows

data BoringWindows a Source #

#### Instances

Instances details

LayoutModifier BoringWindows Window Source # |

Instance details

Defined in XMonad.Layout.BoringWindows

Methods

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

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

handleMess :: BoringWindows Window -> SomeMessage -> X (Maybe (BoringWindows Window)) Source #

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

pureMess :: BoringWindows Window -> SomeMessage -> Maybe (BoringWindows Window) Source #

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

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

hook :: BoringWindows Window -> X () Source #

unhook :: BoringWindows Window -> X () Source #

modifierDescription :: BoringWindows Window -> String Source #

modifyDescription :: LayoutClass l Window => BoringWindows Window -> l Window -> String Source #

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

# Tips

## variant of `Full`

An alternative to `Full` is XMonad.Layout.Simplest. Less windows are ignored by `focusUp` and `focusDown`. This may be helpful when you want windows to be uninteresting by some other layout modifier (ex. XMonad.Layout.Minimize)