xmonad-contrib-0.13: Third party extensions for xmonad

Copyright(c) Peter De Wachter and Andrea Rossato 2007
LicenseBSD-style (see xmonad/LICENSE)
Maintainerandrea.rossato@unibz.it
Stabilityunstable
Portabilityunportable
Safe HaskellNone
LanguageHaskell98

XMonad.Layout.Magnifier

Contents

Description

Screenshot : http://caladan.rave.org/magnifier.png

This is a layout modifier that will make a layout increase the size of the window that has focus.

Synopsis

Usage

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

import XMonad.Layout.Magnifier

Then edit your layoutHook by adding the magnifier layout modifier to some layout:

myLayout = magnifier (Tall 1 (3/100) (1/2))  ||| Full ||| etc..
main = xmonad def { layoutHook = myLayout }

By default magnifier increases the focused window's size by 1.5. You can also use:

magnifiercz 1.2

to use a custom level of magnification. You can even make the focused window smaller for a pop in effect.

For more detailed instructions on editing the layoutHook see:

XMonad.Doc.Extending

Magnifier supports some commands. To use them add something like this to your key bindings:

   , ((modm .|. controlMask              , xK_plus ), sendMessage MagnifyMore)
   , ((modm .|. controlMask              , xK_minus), sendMessage MagnifyLess)
   , ((modm .|. controlMask              , xK_o    ), sendMessage ToggleOff  )
   , ((modm .|. controlMask .|. shiftMask, xK_o    ), sendMessage ToggleOn   )
   , ((modm .|. controlMask              , xK_m    ), sendMessage Toggle     )

Note that a few other extension modules, such as XMonad.Layout.MultiToggle and XMonad.Layout.ToggleLayouts, also define a message named Toggle. To avoid conflicts when using these modules together, you can import Magnifier qualified, like this:

import qualified XMonad.Layout.Magnifier as Mag

and then prefix Mag to the front of everything from this module, like Mag.Toggle, Mag.magnifier, and so on.

For detailed instruction on editing the key binding see XMonad.Doc.Extending.

magnifier :: l a -> ModifiedLayout Magnifier l a Source #

Increase the size of the window that has focus

magnifier' :: l a -> ModifiedLayout Magnifier l a Source #

Increase the size of the window that has focus, unless if it is the master window.

magnifierOff :: l a -> ModifiedLayout Magnifier l a Source #

Magnifier that defaults to Off

magnifiercz :: Rational -> l a -> ModifiedLayout Magnifier l a Source #

Change the size of the window that has focus by a custom zoom

magnifiercz' :: Rational -> l a -> ModifiedLayout Magnifier l a Source #

Increase the size of the window that has focus by a custom zoom, unless if it is the master window.

maximizeVertical :: l a -> ModifiedLayout Magnifier l a Source #

A magnifier that greatly magnifies just the vertical direction

data Magnifier a Source #

Instances

LayoutModifier Magnifier Window Source # 

Methods

modifyLayout :: LayoutClass l Window => Magnifier Window -> Workspace WorkspaceId (l Window) Window -> Rectangle -> X ([(Window, Rectangle)], Maybe (l Window)) Source #

modifyLayoutWithUpdate :: LayoutClass l Window => Magnifier Window -> Workspace WorkspaceId (l Window) Window -> Rectangle -> X (([(Window, Rectangle)], Maybe (l Window)), Maybe (Magnifier Window)) Source #

handleMess :: Magnifier Window -> SomeMessage -> X (Maybe (Magnifier Window)) Source #

handleMessOrMaybeModifyIt :: Magnifier Window -> SomeMessage -> X (Maybe (Either (Magnifier Window) SomeMessage)) Source #

pureMess :: Magnifier Window -> SomeMessage -> Maybe (Magnifier Window) Source #

redoLayout :: Magnifier Window -> Rectangle -> Maybe (Stack Window) -> [(Window, Rectangle)] -> X ([(Window, Rectangle)], Maybe (Magnifier Window)) Source #

pureModifier :: Magnifier Window -> Rectangle -> Maybe (Stack Window) -> [(Window, Rectangle)] -> ([(Window, Rectangle)], Maybe (Magnifier Window)) Source #

hook :: Magnifier Window -> X () Source #

unhook :: Magnifier Window -> X () Source #

modifierDescription :: Magnifier Window -> String Source #

modifyDescription :: LayoutClass l Window => Magnifier Window -> l Window -> String Source #

Read (Magnifier a) Source # 
Show (Magnifier a) Source #