Copyright | (c) 2022 Tomáš Janoušek <tomi@nomi.cz> |
---|---|
License | BSD3 |
Maintainer | Tomáš Janoušek <tomi@nomi.cz> |
Safe Haskell | None |
Language | Haskell2010 |
Synopsis
- toggleFullFloatEwmhFullscreen :: forall (a :: Type -> Type). XConfig a -> XConfig a
- toggleFullFloat :: Window -> X ()
- fullFloat :: Window -> X ()
- unFullFloat :: Window -> X ()
- gcToggleFullFloat :: forall (a :: Type -> Type). XConfig a -> XConfig a
Usage
The main use-case is to make ewmhFullscreen
(re)store the size and
position of floating windows instead of just unconditionally sinking them
into the floating layer. To enable this, you'll need this in your
xmonad.hs
:
import XMonad import XMonad.Actions.ToggleFullFloat import XMonad.Hooks.EwmhDesktops main = xmonad $ … . toggleFullFloatEwmhFullscreen . ewmhFullscreen . ewmh . … $ def{…}
Additionally, this "smart" fullscreening can be bound to a key and invoked manually whenever one needs a larger window temporarily:
, ((modMask .|. shiftMask, xK_t), withFocused toggleFullFloat)
toggleFullFloatEwmhFullscreen :: forall (a :: Type -> Type). XConfig a -> XConfig a Source #
Hook this module into ewmhFullscreen
. This
makes windows restore their original state (size and position if floating)
instead of unconditionally sinking into the tiling layer.
(gcToggleFullFloat
is included here.)
toggleFullFloat :: Window -> X () Source #
Full-float a window, if it's not already full-floating. Otherwise, restore its original state.
fullFloat :: Window -> X () Source #
Full-float a window, remembering its state (tiled/floating and position/size).
unFullFloat :: Window -> X () Source #
Restore window to its remembered state.
gcToggleFullFloat :: forall (a :: Type -> Type). XConfig a -> XConfig a Source #
Install ToggleFullFloat garbage collection hooks.
Note: This is included in toggleFullFloatEwmhFullscreen
, only needed if
using the toggleFullFloat
separately from the EWMH hook.