| |||||||||||||
| |||||||||||||
| |||||||||||||
Description | |||||||||||||
Support for simple mouse gestures. | |||||||||||||
Synopsis | |||||||||||||
| |||||||||||||
Usage | |||||||||||||
You can use this module with the following in your ~/.xmonad/xmonad.hs: import XMonad.Actions.MouseGestures import qualified XMonad.StackSet as W then add an appropriate mouse binding: , ((modMask x .|. shiftMask, button3), mouseGesture gestures) where gestures is a Map from gestures to actions on windows, for example: gestures = M.fromList [ ([], focus) , ([U], \w -> focus w >> windows W.swapUp) , ([D], \w -> focus w >> windows W.swapDown) , ([R, D], \_ -> sendMessage NextLayout) ] This is just an example, of course; you can use any mouse button and gesture definitions you want. For detailed instructions on editing your mouse bindings, see XMonad.Doc.Extending#Editing_mouse_bindings. | |||||||||||||
data Direction | |||||||||||||
mouseGestureH :: (Direction -> X ()) -> X () -> X () | |||||||||||||
mouseGestureH moveHook endHook is a mouse button event handler. It collects mouse movements, calling moveHook for each update; when the button is released, it calls endHook. | |||||||||||||
mouseGesture :: Map [Direction] (Window -> X ()) -> Window -> X () | |||||||||||||
A utility function on top of mouseGestureH. It uses a Map to look up the mouse gesture, then executes the corresponding action (if any). | |||||||||||||
mkCollect :: (MonadIO m, MonadIO m') => m (Direction -> m' [Direction], m' [Direction]) | |||||||||||||
A callback generator for mouseGestureH. mkCollect returns two callback functions for passing to mouseGestureH. The move hook will collect mouse movements (and return the current gesture as a list); the end hook will return a list of the completed gesture, which you can access with >>=. | |||||||||||||
Produced by Haddock version 0.8 |