Copyright | (c) 2009 Nils Schweinsberg 2015 Evgeny Kurnevsky 2024 Yuanle Song |
---|---|
License | BSD3-style (see LICENSE) |
Maintainer | Nils Schweinsberg <mail@n-sch.de> |
Stability | unstable |
Portability | unportable |
Safe Haskell | Safe-Inferred |
Language | Haskell2010 |
Run X ()
actions by touching the edge of your screen with your mouse.
Synopsis
- data ScreenCorner
- addScreenCorner :: ScreenCorner -> X () -> X ()
- addScreenCorners :: [(ScreenCorner, X ())] -> X ()
- screenCornerEventHook :: Event -> X All
- screenCornerLayoutHook :: l a -> ModifiedLayout ScreenCornerLayout l a
Usage
This extension adds KDE-like screen corners and GNOME Hot Edge like
features to XMonad. By moving your cursor into one of your screen corners
or edges, you can trigger an X ()
action, for example
XMonad.Actions.GridSelect.goToSelected
or
XMonad.Actions.CycleWS.nextWS
etc.
To use it, import it on top of your xmonad.hs
:
import XMonad.Hooks.ScreenCorners
Then add your screen corners in our startup hook:
myStartupHook = do ... addScreenCorner SCUpperRight (goToSelected def { gs_cellwidth = 200}) addScreenCorner SCBottom (goToSelected def) addScreenCorners [ (SCLowerRight, nextWS) , (SCLowerLeft, prevWS) ]
Then add layout hook:
myLayout = screenCornerLayoutHook $ tiled ||| Mirror tiled ||| Full where tiled = Tall nmaster delta ratio nmaster = 1 ratio = 1 / 2 delta = 3 / 100
And finally wait for screen corner events in your event hook:
myEventHook e = do ... screenCornerEventHook e
Adding screen corners
data ScreenCorner Source #
Instances
Show ScreenCorner Source # | |
Defined in XMonad.Hooks.ScreenCorners showsPrec :: Int -> ScreenCorner -> ShowS # show :: ScreenCorner -> String # showList :: [ScreenCorner] -> ShowS # | |
Eq ScreenCorner Source # | |
Defined in XMonad.Hooks.ScreenCorners (==) :: ScreenCorner -> ScreenCorner -> Bool # (/=) :: ScreenCorner -> ScreenCorner -> Bool # | |
Ord ScreenCorner Source # | |
Defined in XMonad.Hooks.ScreenCorners compare :: ScreenCorner -> ScreenCorner -> Ordering # (<) :: ScreenCorner -> ScreenCorner -> Bool # (<=) :: ScreenCorner -> ScreenCorner -> Bool # (>) :: ScreenCorner -> ScreenCorner -> Bool # (>=) :: ScreenCorner -> ScreenCorner -> Bool # max :: ScreenCorner -> ScreenCorner -> ScreenCorner # min :: ScreenCorner -> ScreenCorner -> ScreenCorner # |
addScreenCorner :: ScreenCorner -> X () -> X () Source #
Add one single X ()
action to a screen corner
addScreenCorners :: [(ScreenCorner, X ())] -> X () Source #
Add a list of (ScreenCorner, X ())
tuples
Event hook
Layout hook
screenCornerLayoutHook :: l a -> ModifiedLayout ScreenCornerLayout l a Source #