xmonad-contrib-0.14: Third party extensions for xmonad

Copyright(C) -- Brent Yorgey
2018 Yclept Nemo
LicenseBSD-style (see LICENSE)
Maintainer<byorgey@gmail.com>
Stabilityunstable
Portabilityunportable
Safe HaskellNone
LanguageHaskell98

XMonad.Layout.Spacing

Contents

Description

Add a configurable amount of space around windows.

Note: For space/gaps along edges of the screen see XMonad.Layout.Gaps.

Synopsis

Usage

You can use this module by importing it into your ~/.xmonad/xmonad.hs file:

import XMonad.Layout.Spacing

and modifying your layoutHook as follows (for example):

layoutHook = spacingRaw True (Border 0 10 10 10) True (Border 10 10 10 10) True $
             layoutHook def

data Border Source #

Represent the borders of a rectangle.

Constructors

Border 
Instances
Read Border Source # 
Instance details

Defined in XMonad.Layout.Spacing

Show Border Source # 
Instance details

Defined in XMonad.Layout.Spacing

data Spacing a Source #

A LayoutModifier providing customizable screen and window borders. Borders are clamped to [0,Infinity] before being applied.

Constructors

Spacing 

Fields

Instances
Eq a => LayoutModifier Spacing a Source # 
Instance details

Defined in XMonad.Layout.Spacing

Read (Spacing a) Source # 
Instance details

Defined in XMonad.Layout.Spacing

Show (Spacing a) Source # 
Instance details

Defined in XMonad.Layout.Spacing

Methods

showsPrec :: Int -> Spacing a -> ShowS #

show :: Spacing a -> String #

showList :: [Spacing a] -> ShowS #

data SpacingModifier Source #

Messages to alter the state of Spacing using the endomorphic function arguments.

Instances
Message SpacingModifier Source # 
Instance details

Defined in XMonad.Layout.Spacing

spacingRaw Source #

Generate the ModifiedLayout, exposing all initial state of Spacing.

setSmartSpacing :: Bool -> X () Source #

Set smartBorder to the given Bool.

setScreenSpacing :: Border -> X () Source #

Set screenBorder to the given Border.

setWindowSpacing :: Border -> X () Source #

Set windowBorder to the given Border.

setScreenWindowSpacing :: Integer -> X () Source #

Set all borders to a uniform size; see setWindowSpacing and setScreenSpacing.

incWindowSpacing :: Integer -> X () Source #

Increment the borders of windowBorder using borderIncrementBy, which preserves border ratios during clamping.

incScreenSpacing :: Integer -> X () Source #

Increment the borders of screenBorder using borderIncrementBy.

decWindowSpacing :: Integer -> X () Source #

Inverse of incWindowSpacing, equivalent to applying negate.

incScreenWindowSpacing :: Integer -> X () Source #

Increment both screen and window borders; see incWindowSpacing and incScreenSpacing.

borderMap :: (Integer -> Integer) -> Border -> Border Source #

Map a function over a Border. That is, over the four individual borders.

borderIncrementBy :: Integer -> Border -> Border Source #

Change the border spacing by the provided amount, adjusted so that at least one border field is >=0.

Backwards Compatibility

The following functions and types exist solely for compatibility with pre-0.14 releases.

type SpacingWithEdge = Spacing Source #

Deprecated: Use Spacing instead.

A type synonym for the Spacing LayoutModifier.

type SmartSpacing = Spacing Source #

Deprecated: Use Spacing instead.

A type synonym for the Spacing LayoutModifier.

type SmartSpacingWithEdge = Spacing Source #

Deprecated: Use Spacing instead.

A type synonym for the Spacing LayoutModifier.

data ModifySpacing Source #

Deprecated: Use SpacingModifier instead, perhaps with sendMessages.

Message to dynamically modify (e.g. increase/decrease/set) the size of the screen spacing and window spacing. See SpacingModifier.

Constructors

ModifySpacing (Int -> Int)

Deprecated: Use SpacingModifier instead, perhaps with sendMessages.

Instances
Message ModifySpacing Source # 
Instance details

Defined in XMonad.Layout.Spacing

spacing :: Int -> l a -> ModifiedLayout Spacing l a Source #

Deprecated: Use spacingRaw instead.

Surround all windows by a certain number of pixels of blank space. See spacingRaw.

spacingWithEdge :: Int -> l a -> ModifiedLayout Spacing l a Source #

Deprecated: Use spacingRaw instead.

Surround all windows by a certain number of pixels of blank space, and additionally adds the same amount of spacing around the edge of the screen. See spacingRaw.

smartSpacing :: Int -> l a -> ModifiedLayout Spacing l a Source #

Deprecated: Use spacingRaw instead.

Surrounds all windows with blank space, except when the window is the only visible window on the current workspace. See spacingRaw.

smartSpacingWithEdge :: Int -> l a -> ModifiedLayout Spacing l a Source #

Deprecated: Use spacingRaw instead.

Surrounds all windows with blank space, and adds the same amount of spacing around the edge of the screen, except when the window is the only visible window on the current workspace. See spacingRaw.

setSpacing :: Int -> X () Source #

Deprecated: Use setScreenWindowSpacing instead.

See setScreenWindowSpacing.

incSpacing :: Int -> X () Source #

Deprecated: Use incScreenWindowSpacing instead.

See incScreenWindowSpacing.