Copyright | (c) 2008 Justin Bogner <mail@justinbogner.com> |
---|---|
License | BSD |
Maintainer | Justin Bogner <mail@justinbogner.com> |
Stability | unstable |
Portability | unportable |
Safe Haskell | Safe-Inferred |
Language | Haskell2010 |
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
- setOpacity :: Window -> Rational -> X ()
- isUnfocused :: Query Bool
- isUnfocusedOnCurrentWS :: Query Bool
- fadeIn :: Window -> X ()
- fadeOut :: Rational -> Window -> X ()
- fadeIf :: Query Bool -> Rational -> Query Rational
- fadeInactiveLogHook :: Rational -> X ()
- fadeInactiveCurrentWSLogHook :: Rational -> X ()
- fadeOutLogHook :: Query Rational -> X ()
Usage
You can use this module with the following in your ~/.xmonad/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:
For more detailed instructions on editing the layoutHook see:
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.
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
.