XMonad.Layout.Minimize

xmonad-contrib-0.12: Third party extensions for xmonad

Copyright | (c) Jan Vornberger 2009, Alejandro Serrano 2010
License | BSD3-style (see LICENSE)
Maintainer | jan.vornberger@informatik.uni-oldenburg.de
Stability | unstable
Portability | not portable
Safe Haskell | None
Language | Haskell98

XMonad.Layout.Minimize

Contents

- Usage

Description

Makes it possible to minimize windows, temporarily removing them from the layout until they are restored.

Synopsis

- minimize :: LayoutClass l Window => l Window -> ModifiedLayout Minimize l Window
- minimizeWindow :: Window -> X ()
- data MinimizeMsg
  - = RestoreMinimizedWin Window
  - | RestoreNextMinimizedWin
- data Minimize a

# Usage

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

    import XMonad.Layout.Minimize

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

    myLayout = minimize (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:

           , ((modm,               xK_m     ), withFocused minimizeWindow)
           , ((modm .|. shiftMask, xK_m     ), sendMessage RestoreNextMinimizedWin)

The first action will minimize the focused window, while the second one will restore the next minimized window.

For detailed instruction on editing the key binding see:

XMonad.Doc.Extending.

The module is designed to work together with XMonad.Layout.BoringWindows so that minimized windows will be skipped over when switching the focused window with the keyboard. Include `boringWindows` in your layout hook and see the documentation of XMonad.Layout.BoringWindows on how to modify your keybindings.

Also see XMonad.Hooks.Minimize if you want to be able to minimize and restore windows from your taskbar.

minimize :: LayoutClass l Window => l Window -> ModifiedLayout Minimize l Window #

minimizeWindow :: Window -> X () #

data MinimizeMsg #

Constructors

RestoreMinimizedWin Window |
RestoreNextMinimizedWin |

Instances

Eq MinimizeMsg # |
Methods (==) :: MinimizeMsg -> MinimizeMsg -> Bool # (/=) :: MinimizeMsg -> MinimizeMsg -> Bool #
Message MinimizeMsg # |

data Minimize a #

Instances

LayoutModifier Minimize Window # |
Methods modifyLayout :: LayoutClass l Window => Minimize Window -> Workspace WorkspaceId (l Window) Window -> Rectangle -> X ([(Window, Rectangle)], Maybe (l Window)) # modifyLayoutWithUpdate :: LayoutClass l Window => Minimize Window -> Workspace WorkspaceId (l Window) Window -> Rectangle -> X (([(Window, Rectangle)], Maybe (l Window)), Maybe (Minimize Window)) # handleMess :: Minimize Window -> SomeMessage -> X (Maybe (Minimize Window)) # handleMessOrMaybeModifyIt :: Minimize Window -> SomeMessage -> X (Maybe (Either (Minimize Window) SomeMessage)) # pureMess :: Minimize Window -> SomeMessage -> Maybe (Minimize Window) # redoLayout :: Minimize Window -> Rectangle -> Maybe (Stack Window) -> [(Window, Rectangle)] -> X ([(Window, Rectangle)], Maybe (Minimize Window)) # pureModifier :: Minimize Window -> Rectangle -> Maybe (Stack Window) -> [(Window, Rectangle)] -> ([(Window, Rectangle)], Maybe (Minimize Window)) # hook :: Minimize Window -> X () # unhook :: Minimize Window -> X () # modifierDescription :: Minimize Window -> String # modifyDescription :: LayoutClass l Window => Minimize Window -> l Window -> String #
Read (Minimize a) # |
Methods readsPrec :: Int -> ReadS (Minimize a) # readList :: ReadS [Minimize a] # readPrec :: ReadPrec (Minimize a) # readListPrec :: ReadPrec [Minimize a] #
Show (Minimize a) # |
Methods showsPrec :: Int -> Minimize a -> ShowS # show :: Minimize a -> String # showList :: [Minimize a] -> ShowS #