xmonad-contrib
Copyright(c) Peter De Wachter <pdewacht@gmail.com>
LicenseBSD3-style (see LICENSE)
MaintainerPeter De Wachter <pdewacht@gmail.com> Andrea Rossato <andrea.rossato@unibz.it>
Stabilityunstable
Portabilityunportable
Safe HaskellNone
LanguageHaskell2010

XMonad.Layout.HintedTile

Contents

Description

A gapless tiled layout that attempts to obey window size hints, rather than simply ignoring them.

Synopsis

Usage

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

import XMonad.Layout.HintedTile

Then edit your layoutHook by adding the HintedTile layout:

myLayout = hintedTile Tall ||| hintedTile Wide ||| Full ||| etc..
  where
     hintedTile = HintedTile nmaster delta ratio TopLeft
     nmaster    = 1
     ratio      = 1/2
     delta      = 3/100
main = xmonad def { layoutHook = myLayout }

Because both Xmonad and Xmonad.Layout.HintedTile define Tall, you need to disambiguate Tall. If you are replacing the built-in Tall with HintedTile, change import Xmonad to import Xmonad hiding (Tall).

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

data HintedTile a Source #

Constructors

HintedTile 

Fields

  • nmaster :: !Int

    number of windows in the master pane

  • delta :: !Rational

    how much to change when resizing

  • frac :: !Rational

    ratio between master/nonmaster panes

  • alignment :: !Alignment

    Where to place windows that are smaller than their preordained rectangles.

  • orientation :: !Orientation

    Tall or Wide (mirrored) layout?

Instances

Instances details
LayoutClass HintedTile Window Source # 
Instance details

Defined in XMonad.Layout.HintedTile

Methods

runLayout :: Workspace WorkspaceId (HintedTile Window) Window -> Rectangle -> X ([(Window, Rectangle)], Maybe (HintedTile Window))

doLayout :: HintedTile Window -> Rectangle -> Stack Window -> X ([(Window, Rectangle)], Maybe (HintedTile Window))

pureLayout :: HintedTile Window -> Rectangle -> Stack Window -> [(Window, Rectangle)]

emptyLayout :: HintedTile Window -> Rectangle -> X ([(Window, Rectangle)], Maybe (HintedTile Window))

handleMessage :: HintedTile Window -> SomeMessage -> X (Maybe (HintedTile Window))

pureMessage :: HintedTile Window -> SomeMessage -> Maybe (HintedTile Window)

description :: HintedTile Window -> String

Read (HintedTile a) Source # 
Instance details

Defined in XMonad.Layout.HintedTile

Methods

readsPrec :: Int -> ReadS (HintedTile a)

readList :: ReadS [HintedTile a]

readPrec :: ReadPrec (HintedTile a)

readListPrec :: ReadPrec [HintedTile a]

Show (HintedTile a) Source # 
Instance details

Defined in XMonad.Layout.HintedTile

Methods

showsPrec :: Int -> HintedTile a -> ShowS

show :: HintedTile a -> String

showList :: [HintedTile a] -> ShowS

data Orientation Source #

Constructors

Wide

Lay out windows similarly to Mirror tiled.

Tall

Lay out windows similarly to tiled.

Instances

Instances details
Read Orientation Source # 
Instance details

Defined in XMonad.Layout.HintedTile

Methods

readsPrec :: Int -> ReadS Orientation

readList :: ReadS [Orientation]

readPrec :: ReadPrec Orientation

readListPrec :: ReadPrec [Orientation]

Show Orientation Source # 
Instance details

Defined in XMonad.Layout.HintedTile

Methods

showsPrec :: Int -> Orientation -> ShowS

show :: Orientation -> String

showList :: [Orientation] -> ShowS

Eq Orientation Source # 
Instance details

Defined in XMonad.Layout.HintedTile

Ord Orientation Source # 
Instance details

Defined in XMonad.Layout.HintedTile

data Alignment Source #

Constructors

TopLeft 
Center 
BottomRight 

Instances

Instances details
Read Alignment Source # 
Instance details

Defined in XMonad.Layout.HintedTile

Methods

readsPrec :: Int -> ReadS Alignment

readList :: ReadS [Alignment]

readPrec :: ReadPrec Alignment

readListPrec :: ReadPrec [Alignment]

Show Alignment Source # 
Instance details

Defined in XMonad.Layout.HintedTile

Methods

showsPrec :: Int -> Alignment -> ShowS

show :: Alignment -> String

showList :: [Alignment] -> ShowS

Eq Alignment Source # 
Instance details

Defined in XMonad.Layout.HintedTile

Ord Alignment Source # 
Instance details

Defined in XMonad.Layout.HintedTile