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

Copyright | (c) Bogdan Sinitsyn (2016)
License | BSD3-style (see LICENSE)
Maintainer | Bogdan Sinitsyn <bogdan.sinitsyn@gmail.com>
Stability | unstable
Portability | not portable
Safe Haskell | None
Language | Haskell2010

XMonad.Actions.Minimize

Contents

- Usage

Description

Adds actions for minimizing and maximizing windows

This module should be used with XMonad.Layout.Minimize. Add `minimize` to your layout modifiers as described in XMonad.Layout.Minimize and use actions from this module

Possible keybindings:

           , ((modm,               xK_m     ), withFocused minimizeWindow)
           , ((modm .|. shiftMask, xK_m     ), withLastMinimized maximizeWindowAndFocus)

Synopsis

- minimizeWindow :: Window -> X ()
- maximizeWindow :: Window -> X ()
- maximizeWindowAndFocus :: Window -> X ()
- withLastMinimized :: (Window -> X ()) -> X ()
- withLastMinimized' :: (Maybe Window -> X ()) -> X ()
- withFirstMinimized :: (Window -> X ()) -> X ()
- withFirstMinimized' :: (Maybe Window -> X ()) -> X ()
- withMinimized :: ([Window] -> X a) -> X a

# Usage

Import this module with XMonad.Layout.Minimize and XMonad.Layout.BoringWindows:

    import XMonad.Actions.Minimize
    import XMonad.Layout.Minimize
    import qualified XMonad.Layout.BoringWindows as BW

Then apply `minimize` and `boringWindows` to your layout hook and use some actions from this module:

    main = xmonad def { layoutHook = minimize . BW.boringWindows $ whatever }

Example keybindings:

           , ((modm,               xK_m     ), withFocused minimizeWindow      )
           , ((modm .|. shiftMask, xK_m     ), withLastMinimized maximizeWindow)

minimizeWindow :: Window -> X () #

Minimize a window

maximizeWindow :: Window -> X () #

Just maximize a window without focusing

maximizeWindowAndFocus :: Window -> X () #

Maximize a window and then focus it

withLastMinimized :: (Window -> X ()) -> X () #

Perform an action with last minimized window on current workspace or do nothing if there is no minimized windows on current workspace

withLastMinimized' :: (Maybe Window -> X ()) -> X () #

Like withLastMinimized but the provided action is always invoked with a 'Maybe Window', that will be nothing if there is no last minimized window.

withFirstMinimized :: (Window -> X ()) -> X () #

Perform an action with first minimized window on current workspace or do nothing if there is no minimized windows on current workspace

withFirstMinimized' :: (Maybe Window -> X ()) -> X () #

Like withFirstMinimized but the provided action is always invoked with a 'Maybe Window', that will be nothing if there is no first minimized window.

withMinimized :: ([Window] -> X a) -> X a #