xmonad-contrib-0.10: Third party extensions for xmonad

Portabilityunportable
Stabilityunstable
MaintainerIlya Portnov <portnov84@rambler.ru>

XMonad.Layout.LayoutBuilderP

Contents

Description

A layout combinator that sends windows matching given predicate to one rectangle and the rest to another.

Synopsis

Documentation

data LayoutP p l1 l2 a Source

Data type for our layout.

Constructors

LayoutP (Maybe a) (Maybe a) p SubBox (Maybe SubBox) (l1 a) (Maybe (l2 a)) 

Instances

(LayoutClass l1 w, LayoutClass l2 w, Predicate p w, Show w, Read w, Eq w, Typeable w, Show p) => LayoutClass (LayoutP p l1 l2) w 
(Read p, Read a, Read (l1 a), Read (l2 a)) => Read (LayoutP p l1 l2 a) 
(Show p, Show a, Show (l1 a), Show (l2 a)) => Show (LayoutP p l1 l2 a) 

layoutPSource

Arguments

:: (Read a, Eq a, LayoutClass l1 a, LayoutClass l2 a, LayoutClass l3 a, Predicate p a) 
=> p 
-> SubBox

The box to place the windows in

-> Maybe SubBox

Possibly an alternative box that is used when this layout handles all windows that are left

-> l1 a

The layout to use in the specified area

-> LayoutP p l2 l3 a

Where to send the remaining windows

-> LayoutP p l1 (LayoutP p l2 l3) a

The resulting layout

Use the specified layout in the described area windows that match given predicate and send the rest of the windows to the next layout in the chain. It is possible to supply an alternative area that will then be used instead, if there are no windows to send to the next layout.

layoutAllSource

Arguments

:: forall l1 p a . (Read a, Eq a, LayoutClass l1 a, Predicate p a) 
=> SubBox

The box to place the windows in

-> l1 a

The layout to use in the specified area

-> LayoutP p l1 Full a

The resulting layout

Use the specified layout in the described area for all remaining windows.

relBoxSource

Arguments

:: Rational

Relative X-Position with respect to the surrounding area

-> Rational

Relative Y-Position with respect to the surrounding area

-> Rational

Relative width with respect to the remaining width

-> Rational

Relative height with respect to the remaining height

-> SubBox

The resulting SubBox describing the area

Create a box with only relative measurements.

absBoxSource

Arguments

:: Int

Absolute X-Position

-> Int

Absolute Y-Position

-> Int

Absolute width

-> Int

Absolute height

-> SubBox

The resulting SubBox describing the area

Create a box with only absolute measurements. If the values are negative, the total remaining space will be added. For sizes it will also be added for zeroes.

Overloading ways to select windows

Predicate exists because layouts are required to be serializable, and XMonad.Util.WindowProperties is not sufficient (for example it does not allow using regular expressions).

compare XMonad.Util.Invisible

class Predicate p w whereSource

Type class for predicates. This enables us to manage not only Windows, but any objects, for which instance Predicate is defined.

Another instance exists in XMonad.Util.WindowPropertiesRE in xmonad-extras

Methods

alwaysTrueSource

Arguments

:: Proxy w 
-> p

A predicate that is always True.

checkPredicateSource

Arguments

:: p 
-> w 
-> X Bool

Check if given object (window or smth else) matches that predicate

data Proxy a Source

Contains no actual data, but is needed to help select the correct instance of Predicate

Constructors

Proxy