xmonad-contrib-0.13: Third party extensions for xmonad

Copyright | (c) Luis Cabellos <zhen.sydow@gmail.com>
License | BSD3-style (see LICENSE)
Maintainer | Luis Cabellos <zhen.sydow@gmail.com>
Stability | stable
Portability | portable
Safe Haskell | None
Language | Haskell98

XMonad.Layout.Cross

Contents

- Usage

Description

A Cross Layout with the main window in the center.

Synopsis

- simpleCross :: Cross a
- data Cross a = Cross {
  - crossProp :: !Rational
  - crossInc :: !Rational
  }

# Usage

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

    import XMonad.Layout.Cross

Then edit your `layoutHook` by adding one of the Cross layouts:

    myLayout =  simpleCross ||| etc..
    main = xmonad def { layoutHook = myLayout }

simpleCross :: Cross a #

A simple Cross Layout. It places the focused window in the center. The proportion of the screen used by the main window is 4/5.

data Cross a #

The Cross Layout draws the focused window in the center of the screen and part of the other windows on the sides. The `Shrink` and `Expand` messages increment the size of the main window.

The focus keybindings change the center window, while other windows cycle through the side positions. With the Cross layout only four windows are shown around the focused window, two ups and two downs, no matter how many are in the current stack. I.e. focus down cycles the window below focused into the center; focus up cycles the window above.

Constructors

Cross |
Fields crossProp :: !Rational Proportion of screen occupied by the main window. crossInc :: !Rational Percent of main window to increment by when resizing.

Instances

LayoutClass Cross a # |
Methods runLayout :: Workspace WorkspaceId (Cross a) a -> Rectangle -> X ([(a, Rectangle)], Maybe (Cross a)) # doLayout :: Cross a -> Rectangle -> Stack a -> X ([(a, Rectangle)], Maybe (Cross a)) # pureLayout :: Cross a -> Rectangle -> Stack a -> [(a, Rectangle)] # emptyLayout :: Cross a -> Rectangle -> X ([(a, Rectangle)], Maybe (Cross a)) # handleMessage :: Cross a -> SomeMessage -> X (Maybe (Cross a)) # pureMessage :: Cross a -> SomeMessage -> Maybe (Cross a) # description :: Cross a -> String #
Read (Cross a) # |
Methods readsPrec :: Int -> ReadS (Cross a) # readList :: ReadS [Cross a] # readPrec :: ReadPrec (Cross a) # readListPrec :: ReadPrec [Cross a] #
Show (Cross a) # |
Methods showsPrec :: Int -> Cross a -> ShowS # show :: Cross a -> String # showList :: [Cross a] -> ShowS #