input-remapper
input-remapper copied to clipboard
Feature Request: mouse speed adjustment
Would be nice to have mouse speed adjustment. Doing that on Linux is not that straightforward. See this
Thanks!
that might actually be possible yes. Busy with a few other open tasks here right now though, so it will take some time until this feature potentially arrives (If I do it)
Handling mouse movement events is also relevant for https://github.com/sezanzeb/key-mapper/issues/79
It would be perfect if this tool could also handle different acceleration profiles.
Just a small note regarding implementation in a far future:
Adding this became easier with the architecture changes of 1.2.0.
There would have to be a new consumer object for EV_REL events. EV_REL event values are integer values, that means the consumer cannot inject 1.1
to make the mouse move 10% faster.
- Option 1: Increasing the injection speed to 110% would increase the mouse speed. I don't know if there is a limit on how fast EV_REL events may be injected, if so, then at 200% speed it could multiply all values by 2 and inject them at the original speed again. This way the frequency of injected EV_REL event would not exceed 200%.
- Option 2: After injecting a value of
1
9 times, inject one more with the value of2
. On average the mouse pointer would move 10% faster. This is how the EV_REL events are injected when using gamepads.
Reference implementation that does something similar for gamepads: https://github.com/sezanzeb/key-mapper/blob/main/keymapper/injection/consumers/joystick_to_mouse.py
(besides having to add configuration elements to the gui)
There has been a feature request asking for an adjustment on the fly via a key press: https://github.com/sezanzeb/key-mapper/discussions/237
This can be solved by a RelToRelHandler on the beta branch. Which already supports different acceleration profiles and different sensitivity.
This can be done on the beta branch now.
If anyone wants to write a small tutorial for https://github.com/sezanzeb/input-remapper/blob/main/readme/examples.md, you are very welcome