XMonad.Layout.Master

xmonad-contrib-0.13: Third party extensions for xmonad

Copyright | (c) Ismael Carnales Lukas Mai
License | BSD-style (see LICENSE)
Maintainer | Ismael Carnales <icarnales@gmail.com>
Stability | unstable
Portability | unportable
Safe Haskell | None
Language | Haskell98

XMonad.Layout.Master

Contents

- Usage

Description

Layout modfier that adds a master window to another layout.

Synopsis

- mastered :: LayoutClass l a => Rational -> Rational -> l a -> ModifiedLayout AddMaster l a
- fixMastered :: LayoutClass l a => Rational -> Rational -> l a -> ModifiedLayout FixMaster l a
- multimastered :: LayoutClass l a => Int -> Rational -> Rational -> l a -> ModifiedLayout AddMaster l a
- data AddMaster a

# Usage

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

    import XMonad.Layout.Master

Then edit your `layoutHook` and add the Master modifier to the layout that you prefer.

    mastered (1/100) (1/2) $ Grid

Or if you prefer to have a master with fixed width:

    fixMastered (1/100) (1/2) $ Grid

Or if you want multiple (here two) master windows from the beginning:

    multimastered 2 (1/100) (1/2) $ Grid

This will use the left half of your screen for a master window and let Grid manage the right half.

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

Like `Tall`, `withMaster` supports the `Shrink` and XMonad.Layout.Expand' messages.

mastered #

Arguments

:: LayoutClass l a |
=> Rational | `delta`, the ratio of the screen to resize by
-> Rational | `frac`, what portion of the screen to use for the master window
-> l a | the layout to be modified
-> ModifiedLayout AddMaster l a |

fixMastered #

Arguments

:: LayoutClass l a |
=> Rational | `delta`, the ratio of the screen to resize by
-> Rational | `frac`, what portion of the screen to use for the master window
-> l a | the layout to be modified
-> ModifiedLayout FixMaster l a |

multimastered #

Arguments

:: LayoutClass l a |
=> Int | `k`, number of master windows
-> Rational | `delta`, the ratio of the screen to resize by
-> Rational | `frac`, what portion of the screen to use for the master window
-> l a | the layout to be modified
-> ModifiedLayout AddMaster l a |

data AddMaster a #

Data type for LayoutModifier which converts given layout to a mastered layout

Instances

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