First, add this import to your ~/.xmonad/xmonad.hs:
import qualified XMonad.Actions.FlexibleManipulate as Flex
Now set up the desired mouse binding, for example:
, ((modMask x, button1), (\w -> focus w >> Flex.mouseWindow Flex.linear w))
- Flex.linear indicates that positions between the edges and the
middle indicate a combination scale/position.
- Flex.discrete indicates that there are discrete pick
regions. (The window is divided by thirds for each axis.)
- Flex.resize performs only a resize of the window, based on which
quadrant the mouse is in.
- Flex.position is similar to the built-in
You can also write your own function for this parameter. It should take
a value between 0 and 1 indicating position, and return a value indicating
the corresponding position if plain Flex.linear was used.
For detailed instructions on editing your mouse bindings, see