xmonad-contrib-0.18.1: Community-maintained extensions for xmonad

Copyright | (c) 2007 Andrea Rossato
License | BSD-style (see xmonad/LICENSE)
Maintainer | andrea.rossato@unibz.it
Stability | unstable
Portability | unportable
Safe Haskell | None
Language | Haskell2010

XMonad.Layout.TabBarDecoration

Contents

- Usage

Description

A layout modifier to add a bar of tabs to your layouts.

Synopsis

- simpleTabBar :: Eq a => l a -> ModifiedLayout (Decoration TabBarDecoration DefaultShrinker) (ModifiedLayout ResizeScreen l) a
- tabBar :: (Eq a, Shrinker s) => s -> Theme -> XPPosition -> l a -> ModifiedLayout (Decoration TabBarDecoration s) l a
- def :: Default a => a
- shrinkText :: DefaultShrinker
- newtype TabBarDecoration a = TabBar XPPosition
- data XPPosition
  - = Top
  - | Bottom
  - | CenteredAt {
    - xpCenterY :: Rational
    - xpWidth :: Rational
    }
- module XMonad.Layout.ResizeScreen

# Usage

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

    import XMonad.Layout.TabBarDecoration

Then edit your `layoutHook` by adding the layout you want:

    main = xmonad def { layoutHook = simpleTabBar $ layoutHook def}

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

`tabBar` will give you the possibility of setting a custom shrinker and a custom theme.

The default theme can be dynamically changed with the xmonad theme selector. See XMonad.Prompt.Theme. For more themes, look at XMonad.Util.Themes

simpleTabBar :: Eq a => l a -> ModifiedLayout (Decoration TabBarDecoration DefaultShrinker) (ModifiedLayout ResizeScreen l) a #

Add, on the top of the screen, a simple bar of tabs to a given | layout, with the default theme and the default shrinker.

tabBar :: (Eq a, Shrinker s) => s -> Theme -> XPPosition -> l a -> ModifiedLayout (Decoration TabBarDecoration s) l a #

Same of `simpleTabBar`, but with the possibility of setting a custom shrinker, a custom theme and the position: `Top` or `Bottom`.

def :: Default a => a #

The default value for this type.

shrinkText :: DefaultShrinker #

newtype TabBarDecoration a #

Constructors

TabBar XPPosition |

#### Instances

Instances details

Eq a => DecorationStyle TabBarDecoration a # |

Instance details

Defined in XMonad.Layout.TabBarDecoration

Methods

describeDeco :: TabBarDecoration a -> String #

shrink :: TabBarDecoration a -> Rectangle -> Rectangle -> Rectangle #

decorationEventHook :: TabBarDecoration a -> DecorationState -> Event -> X () #

decorationCatchClicksHook :: TabBarDecoration a -> Window -> Int -> Int -> X Bool #

decorationWhileDraggingHook :: TabBarDecoration a -> CInt -> CInt -> (Window, Rectangle) -> Position -> Position -> X () #

decorationAfterDraggingHook :: TabBarDecoration a -> (Window, Rectangle) -> Window -> X () #

pureDecoration :: TabBarDecoration a -> Dimension -> Dimension -> Rectangle -> Stack a -> [(a, Rectangle)] -> (a, Rectangle) -> Maybe Rectangle #

decorate :: TabBarDecoration a -> Dimension -> Dimension -> Rectangle -> Stack a -> [(a, Rectangle)] -> (a, Rectangle) -> X (Maybe Rectangle) #

Read (TabBarDecoration a) # |
Instance details Defined in XMonad.Layout.TabBarDecoration Methods readsPrec :: Int -> ReadS (TabBarDecoration a) # readList :: ReadS [TabBarDecoration a] # readPrec :: ReadPrec (TabBarDecoration a) # readListPrec :: ReadPrec [TabBarDecoration a] #
Show (TabBarDecoration a) # |
Instance details Defined in XMonad.Layout.TabBarDecoration Methods showsPrec :: Int -> TabBarDecoration a -> ShowS # show :: TabBarDecoration a -> String # showList :: [TabBarDecoration a] -> ShowS #

data XPPosition #

Constructors

Top |
Bottom |
CenteredAt | Prompt will be placed in the center horizontally and in the certain place of screen vertically. If it's in the upper part of the screen, completion window will be placed below (like in `Top`) and otherwise above (like in `Bottom`)

Fields

- xpCenterY :: Rational

  Rational between 0 and 1, giving y coordinate of center of the prompt relative to the screen height.

- xpWidth :: Rational

  Rational between 0 and 1, giving width of the prompt relative to the screen width.

#### Instances

Instances details

Read XPPosition # |
Instance details Defined in XMonad.Prompt Methods readsPrec :: Int -> ReadS XPPosition # readList :: ReadS [XPPosition] # readPrec :: ReadPrec XPPosition # readListPrec :: ReadPrec [XPPosition] #
Show XPPosition # |
Instance details Defined in XMonad.Prompt Methods showsPrec :: Int -> XPPosition -> ShowS # show :: XPPosition -> String # showList :: [XPPosition] -> ShowS #

module XMonad.Layout.ResizeScreen