Copyright | (c) 2007 David Roundy <droundy@darcs.net> |
---|---|
License | BSD3-style (see LICENSE) |
Maintainer | Devin Mullins <me@twifkak.com> |
Stability | unstable |
Portability | unportable |
Safe Haskell | Safe-Inferred |
Language | Haskell2010 |
WindowNavigation is an extension to allow easy navigation of a workspace.
Synopsis
- windowNavigation :: LayoutClass l a => l a -> ModifiedLayout WindowNavigation l a
- configurableNavigation :: LayoutClass l a => WNConfig -> l a -> ModifiedLayout WindowNavigation l a
- data Navigate
- = Go Direction2D
- | Swap Direction2D
- | Move Direction2D
- | Apply (Window -> X ()) Direction2D
- data Direction2D
- data MoveWindowToWindow a = MoveWindowToWindow a a
- data WNConfig
- navigateColor :: String -> WNConfig
- navigateBrightness :: Double -> WNConfig
- noNavigateBorders :: WNConfig
- def :: Default a => a
- data WindowNavigation a
Usage
You can use this module with the following in your ~/.xmonad/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:
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:
windowNavigation :: LayoutClass l a => l a -> ModifiedLayout WindowNavigation l a Source #
configurableNavigation :: LayoutClass l a => WNConfig -> l a -> ModifiedLayout WindowNavigation l a Source #
Go Direction2D | |
Swap Direction2D | |
Move Direction2D | |
Apply (Window -> X ()) Direction2D | Apply action with destination window |
Instances
data Direction2D Source #
Two-dimensional directions:
Instances
data MoveWindowToWindow a Source #
Instances
Read a => Read (MoveWindowToWindow a) Source # | |
Defined in XMonad.Layout.WindowNavigation readsPrec :: Int -> ReadS (MoveWindowToWindow a) # readList :: ReadS [MoveWindowToWindow a] # readPrec :: ReadPrec (MoveWindowToWindow a) # readListPrec :: ReadPrec [MoveWindowToWindow a] # | |
Show a => Show (MoveWindowToWindow a) Source # | |
Defined in XMonad.Layout.WindowNavigation showsPrec :: Int -> MoveWindowToWindow a -> ShowS # show :: MoveWindowToWindow a -> String # showList :: [MoveWindowToWindow a] -> ShowS # | |
Typeable a => Message (MoveWindowToWindow a) Source # | |
Defined in XMonad.Layout.WindowNavigation |
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)
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.
data WindowNavigation a Source #