-
Notifications
You must be signed in to change notification settings - Fork 119
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Win ballistic mouse #365
Draft
pentamassiv
wants to merge
34
commits into
enigo-rs:main
Choose a base branch
from
pentamassiv:win_ballistic_mouse
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Draft
Win ballistic mouse #365
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
…olds_and_acceleration`, `get_mouse_speed`, `set_mouse_speed`, `mouse_curve` and `set_mouse_curve`
…acceleration level
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
On Windows a relative mouse move is subject to the SmoothMouseCurve. That means the actual distance in pixels the pointer will be moved depends on the speed the mouse is moved. There is documentation online explaining it for XP. It seems like it wasn't changed on new versions. I reimplemented the algorithm and it works in general, but I can't get the integration test to work. For some reason the mouse is moved by 21 pixels when a relative move by 20 pixels is requested. It should be 31 though. I also can't get it to match exactly. A difference of 1 pixels can happen because of the remainder and numerical errors.
I am pausing work on this. It took too long already :'/
Would be great if somebody would find the error or find a simpler solution to test a relative mouse move on Windows. This PR introduces a lot of code and complexity.