xmonad-contrib-0.18.1: Community-maintained extensions for xmonad
Copyright(c) 2008 Justin Bogner <mail@justinbogner.com>
LicenseBSD
MaintainerJustin Bogner <mail@justinbogner.com>
Stabilityunstable
Portabilityunportable
Safe HaskellSafe-Inferred
LanguageHaskell2010

XMonad.Hooks.FadeInactive

Contents

Description

Makes XMonad set the _NET_WM_WINDOW_OPACITY atom for inactive windows, which causes those windows to become slightly translucent if something like xcompmgr is running

Synopsis

Usage

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

import XMonad
import XMonad.Hooks.FadeInactive

myLogHook :: X ()
myLogHook = fadeInactiveLogHook fadeAmount
    where fadeAmount = 0.8

main = xmonad def { logHook = myLogHook }

fadeAmount can be any rational between 0 and 1. you will need to have xcompmgr http://freedesktop.org/wiki/Software/xapps or something similar for this to do anything

For more detailed instructions on editing the logHook see the tutorial.

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

setOpacity :: Window -> Rational -> X () Source #

Sets the opacity of a window

isUnfocused :: Query Bool Source #

Returns True if the window doesn't have the focus.

isUnfocusedOnCurrentWS :: Query Bool Source #

Returns True if the window doesn't have the focus, and the window is on the current workspace. This is specifically handy in a multi monitor setup (xinerama) where multiple workspaces are visible. Using this, non-focused workspaces are are not faded out making it easier to look and read the content on them.

fadeIn :: Window -> X () Source #

Makes a window completely opaque

fadeOut :: Rational -> Window -> X () Source #

Fades a window out by setting the opacity

fadeIf :: Query Bool -> Rational -> Query Rational Source #

Fades a window by the specified amount if it satisfies the first query, otherwise makes it opaque.

fadeInactiveLogHook :: Rational -> X () Source #

Sets the opacity of inactive windows to the specified amount

fadeInactiveCurrentWSLogHook :: Rational -> X () Source #

Set the opacity of inactive windows, on the current workspace, to the specified amount. This is specifically usefull in a multi monitor setup. See isUnfocusedOnCurrentWS.

fadeOutLogHook :: Query Rational -> X () Source #

Fades out every window by the amount returned by the query.