xmonad-contrib-0.9.1: Third party extensions for xmonad

Portabilityunportable
Stabilityunstable
MaintainerQuentin Moser <quentin.moser@unifr.ch>

XMonad.Hooks.FloatNext

Contents

Description

Hook and keybindings for automatically sending the next spawned window(s) to the floating layer.

Synopsis

Usage

This module provides actions (that can be set as keybindings) to automatically send the next spawned window(s) to the floating layer.

You can use it by including the following in your ~/.xmonad/xmonad.hs:

 import XMonad.Hooks.FloatNext

and adding floatNextHook to your ManageHook:

 myManageHook = floatNextHook <+> manageHook defaultConfig

The floatNext and toggleFloatNext functions can be used in key bindings to float the next spawned window:

 , ((modm, xK_e), toggleFloatNext)

floatAllNew and toggleFloatAllNew are similar but float all spawned windows until disabled again.

 , ((modm, xK_r), toggleFloatAllNew)

The hook

floatNextHook :: ManageHookSource

This ManageHook will selectively float windows as set by floatNext and floatAllNew.

Actions

floatNext :: Bool -> X ()Source

floatNext True arranges for the next spawned window to be sent to the floating layer, floatNext False cancels it.

floatAllNew :: Bool -> X ()Source

floatAllNew True arranges for new windows to be sent to the floating layer, floatAllNew False cancels it

Queries

willFloatNext :: X BoolSource

Whether the next window will be set floating

willFloatAllNew :: X BoolSource

Whether new windows will be set floating

DynamicLog utilities

The following functions are used to display the current state of floatNext and floatAllNew in your XMonad.Hooks.DynamicLog.dynamicLogWithPP. willFloatNextPP and willFloatAllNewPP should be added to the XMonad.Hooks.DynamicLog.ppExtras field of your XMonad.Hooks.DynamicLog.PP.

Use runLogHook to refresh the output of your logHook, so that the effects of a floatNext/... will be visible immediately:

 , ((modm, xK_e), toggleFloatNext >> runLogHook)

The String -> String parameters to willFloatNextPP and willFloatAllNewPP will be applied to their output, you can use them to set the text color, etc., or you can just pass them id.