Toggle input grabbing on SIGUSR2
Relay motion events as messages on a socket
Spawning shouldn't be used for motion events:
- It might generate hundreds of parallel processes per second.
- It randomly alters the order of the pointer coordinates.
Use generic BSD 2-clause license
Ignore mapping notify events by default
Add an option to specify the motion events maximum frequency
Generate header function prototypes from .c
Decrease the header guards collision chances
Use compliant header guard
Increase maximum line length
Add license headers
Implement command cycles
The following binding:
will now generate the following output when *x* is pressed 4 times:
Handle mapping notify events
On each mapping notify events, the keyboard symbols are updated and the
configuration files are reloaded.
The keyboard layout can be changed on the fly (via setxkbmap).
Handle modes via the colon separator
New option: `-s`
Keep order of configuration in hotkeys
Implement chord chains
- Allow commands and hotkeys to be spread across multiple lines.
- Allow sequences to be present in the hotkey and not in the command and
- Handle literal braces and commas via the backslash inhibitor.
Support events replay
A new special keysym prefix character is introduced: ':'.
It allows clients to receive the events we grab.
Add an option to redirect the commands output
Add motion notify hotkeys
Support alternative shell definition
Support optional extra configurations
Add support for mouse hotkeys