Alexis Janon
Alexis Janon
Thank you for your quick answer! I have taken a look at it, and I think I understand what is happening: the first SIGHUP drops privileges, but `swhkd` never raises...
# MWE for each implementation Each exemple prints events from the 'input' subsystem as they are received. Each log is prefixed by a basic timestamp to highlight the difference between...
I looked into solving my issue with `udev`, but if anyone has any other idea, I can also take a shot at it !
> can udev detect the type of device that we're dealing with? this can help another bug where mice are picked up as keyboards sometimes. Maybe? Take a look at...
> I did some digging and found out that we don't need to create a new `MonitorSocket` from `MonitorBuilder::new()?....listen()`. We can create this builder once globally and then just poll...
Privileges are dropped right at the beginning of the `load_config` closure: https://github.com/waycrate/swhkd/blob/022466ec0bcca881d5034a2b23aab934cfd4578a/swhkd/src/daemon.rs#L72-L74 With this PR the daemon has full privileges, except while loading the config. If you want to restrict...
I am looking into how `xset` does it, based on the available source: [xorg-xset](https://github.com/freedesktop/xorg-xset/blob/41b3ad04db4f9fdcf2705445a28c9cceecf6d980/xset.c). There are many X11 bindings for Rust, I found [x11rb](https://github.com/psychon/x11rb) to be well documented and it...
The base implementation seems easy enough, just add the key name to the `key_to_evdev_key` map in the config parser (`swhkd/src/config.rs`), e.g., for the left mouse button: ```rust ("buttonleft", evdev::Key::BTN_LEFT), ```...
You are right, I did have to capture mouse input, and could not move the cursor afterwards as the events are not re-emitted to the virtual output. This was more...
I will look into this once #163 is merged! I think it would be really useful to be able to combine mouse buttons with keyboard modifiers. Is there a reason...