xmonad-contrib
Copyright(c) 2007 David Roundy <droundy@darcs.net>
LicenseBSD3-style (see LICENSE)
MaintainerDevin Mullins <me@twifkak.com>
Stabilityunstable
Portabilityunportable
Safe HaskellNone
LanguageHaskell2010

XMonad.Layout.WindowNavigation

Contents

Description

WindowNavigation is an extension to allow easy navigation of a workspace.

Synopsis

Usage

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

import XMonad.Layout.WindowNavigation

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

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

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

In keybindings:

   , ((modm,                 xK_Right), sendMessage $ Go R)
   , ((modm,                 xK_Left ), sendMessage $ Go L)
   , ((modm,                 xK_Up   ), sendMessage $ Go U)
   , ((modm,                 xK_Down ), sendMessage $ Go D)
   , ((modm .|. controlMask, xK_Right), sendMessage $ Swap R)
   , ((modm .|. controlMask, xK_Left ), sendMessage $ Swap L)
   , ((modm .|. controlMask, xK_Up   ), sendMessage $ Swap U)
   , ((modm .|. controlMask, xK_Down ), sendMessage $ Swap D)

For detailed instruction on editing the key binding see:

the tutorial.

windowNavigation :: LayoutClass l a => l a -> ModifiedLayout WindowNavigation l a Source #

data Navigate Source #

Constructors

Go Direction2D 
Swap Direction2D 
Move Direction2D 
Apply (Window -> X ()) Direction2D

Apply action with destination window

Instances

Instances details
Message Navigate Source # 
Instance details

Defined in XMonad.Layout.WindowNavigation

data Direction2D Source #

Two-dimensional directions:

Constructors

U

Up

D

Down

R

Right

L

Left

Instances

Instances details
Bounded Direction2D Source # 
Instance details

Defined in XMonad.Util.Types

Enum Direction2D Source # 
Instance details

Defined in XMonad.Util.Types

Read Direction2D Source # 
Instance details

Defined in XMonad.Util.Types

Methods

readsPrec :: Int -> ReadS Direction2D

readList :: ReadS [Direction2D]

readPrec :: ReadPrec Direction2D

readListPrec :: ReadPrec [Direction2D]

Show Direction2D Source # 
Instance details

Defined in XMonad.Util.Types

Methods

showsPrec :: Int -> Direction2D -> ShowS

show :: Direction2D -> String

showList :: [Direction2D] -> ShowS

Eq Direction2D Source # 
Instance details

Defined in XMonad.Util.Types

Ord Direction2D Source # 
Instance details

Defined in XMonad.Util.Types

data MoveWindowToWindow a Source #

Constructors

MoveWindowToWindow a a 

Instances

Instances details
Read a => Read (MoveWindowToWindow a) Source # 
Instance details

Defined in XMonad.Layout.WindowNavigation

Methods

readsPrec :: Int -> ReadS (MoveWindowToWindow a)

readList :: ReadS [MoveWindowToWindow a]

readPrec :: ReadPrec (MoveWindowToWindow a)

readListPrec :: ReadPrec [MoveWindowToWindow a]

Show a => Show (MoveWindowToWindow a) Source # 
Instance details

Defined in XMonad.Layout.WindowNavigation

Methods

showsPrec :: Int -> MoveWindowToWindow a -> ShowS

show :: MoveWindowToWindow a -> String

showList :: [MoveWindowToWindow a] -> ShowS

Typeable a => Message (MoveWindowToWindow a) Source # 
Instance details

Defined in XMonad.Layout.WindowNavigation

data WNConfig Source #

Used with configurableNavigation to specify how to show reachable windows' borders. You cannot create WNConfig values directly; use def or one of the following three functions to create one.

def, and windowNavigation, uses the focused border color at 40% brightness, as if you had specified

configurableNavigation (navigateBrightness 0.4)

Instances

Instances details
Default WNConfig Source # 
Instance details

Defined in XMonad.Layout.WindowNavigation

Methods

def :: WNConfig #

Read WNConfig Source # 
Instance details

Defined in XMonad.Layout.WindowNavigation

Methods

readsPrec :: Int -> ReadS WNConfig

readList :: ReadS [WNConfig]

readPrec :: ReadPrec WNConfig

readListPrec :: ReadPrec [WNConfig]

Show WNConfig Source # 
Instance details

Defined in XMonad.Layout.WindowNavigation

Methods

showsPrec :: Int -> WNConfig -> ShowS

show :: WNConfig -> String

showList :: [WNConfig] -> ShowS

navigateColor :: String -> WNConfig Source #

Indicate reachable windows by drawing their borders in the specified color.

navigateBrightness :: Double -> WNConfig Source #

Indicate reachable windows by drawing their borders in the active border color, with the specified brightness.

noNavigateBorders :: WNConfig Source #

Don't use window borders for navigation.

def :: Default a => a #

data WindowNavigation a Source #

Instances

Instances details
LayoutModifier WindowNavigation Window Source # 
Instance details

Defined in XMonad.Layout.WindowNavigation

Methods

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

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

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

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

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

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

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

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

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

modifierDescription :: WindowNavigation Window -> String Source #

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

Read (WindowNavigation a) Source # 
Instance details

Defined in XMonad.Layout.WindowNavigation

Methods

readsPrec :: Int -> ReadS (WindowNavigation a)

readList :: ReadS [WindowNavigation a]

readPrec :: ReadPrec (WindowNavigation a)

readListPrec :: ReadPrec [WindowNavigation a]

Show (WindowNavigation a) Source # 
Instance details

Defined in XMonad.Layout.WindowNavigation

Methods

showsPrec :: Int -> WindowNavigation a -> ShowS

show :: WindowNavigation a -> String

showList :: [WindowNavigation a] -> ShowS