XMonad.Hooks.EwmhDesktops

xmonad-contrib-0.11.4: Third party extensions for xmonad

Copyright | (c) 2007, 2008 Joachim Breitner <mail@joachim-breitner.de>
License | BSD
Maintainer | Joachim Breitner <mail@joachim-breitner.de>
Stability | unstable
Portability | unportable
Safe Haskell | None
Language | Haskell98

XMonad.Hooks.EwmhDesktops

Contents

- Usage

Description

Makes xmonad use the EWMH hints to tell panel applications about its workspaces and the windows therein. It also allows the user to interact with xmonad by clicking on panels and window lists.

Synopsis

- ewmh :: XConfig a -> XConfig a
- ewmhDesktopsStartup :: X ()
- ewmhDesktopsLogHook :: X ()
- ewmhDesktopsLogHookCustom :: ([WindowSpace] -> [WindowSpace]) -> X ()
- ewmhDesktopsEventHook :: Event -> X All
- ewmhDesktopsEventHookCustom :: ([WindowSpace] -> [WindowSpace]) -> Event -> X All
- fullscreenEventHook :: Event -> X All

# Usage

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

    import XMonad
    import XMonad.Hooks.EwmhDesktops

    main = xmonad $ ewmh defaultConfig{ handleEventHook =
               handleEventHook defaultConfig <+> fullscreenEventHook }

You may also be interested in `avoidStruts` from XMonad.Hooks.ManageDocks.

ewmh :: XConfig a -> XConfig a

Add EWMH functionality to the given config. See above for an example.

ewmhDesktopsStartup :: X ()

Initializes EwmhDesktops and advertises EWMH support to the X server

ewmhDesktopsLogHook :: X ()

Notifies pagers and window lists, such as those in the gnome-panel of the current state of workspaces and windows.

ewmhDesktopsLogHookCustom :: ([WindowSpace] -> [WindowSpace]) -> X ()

Generalized version of ewmhDesktopsLogHook that allows an arbitrary user-specified function to transform the workspace list (post-sorting)

ewmhDesktopsEventHook :: Event -> X All

Intercepts messages from pagers and similar applications and reacts on them. Currently supports:

- _NET_CURRENT_DESKTOP (switching desktops)
- _NET_WM_DESKTOP (move windows to other desktops)
- _NET_ACTIVE_WINDOW (activate another window, changing workspace if needed)

ewmhDesktopsEventHookCustom :: ([WindowSpace] -> [WindowSpace]) -> Event -> X All

Generalized version of ewmhDesktopsEventHook that allows an arbitrary user-specified function to transform the workspace list (post-sorting)

fullscreenEventHook :: Event -> X All

An event hook to handle applications that wish to fullscreen using the _NET_WM_STATE protocol. This includes users of the gtk_window_fullscreen() function, such as Totem, Evince and OpenOffice.org.

Note this is not included in `ewmh`.