Skip to content
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

Optionally apply features to the trackpad too #65

Closed
Atemu opened this issue Feb 2, 2022 · 11 comments
Closed

Optionally apply features to the trackpad too #65

Atemu opened this issue Feb 2, 2022 · 11 comments

Comments

@Atemu
Copy link

Atemu commented Feb 2, 2022

LinearMouse works great for mice but, with the introduction of Apple silicon, it is no longer possible to get a usable trackpad either.

CursorSense have found a way of disabling acceleration (and even modifying acceleration curves) for trackpads too (without intrusive methods such as system extensions to my knowledge) so there must be a way for linearmouse to do the same.

Other options like modifier buttons, fixed-width scroll etc. might also be useful.

Context: #46

@lujjjh
Copy link
Collaborator

lujjjh commented Feb 5, 2022

If we support per-device cursor settings, I believe we can apply the cursor settings to trackpads. However, it takes time.

It'd be nice if you could modify the source code and see if the current approach also works with trackpads. You may reference the code here as trackpads use a different property to control the pointer acceleration.

@sealvessel
Copy link

Having this on the trackpad would make the trackpad usable in my opinion. Currently I can't use one because I can't aim my cursor as accurately with a mouse quickly enough because of the annoying acceleration. A trackpad is nowhere as precise as even a touchscreen.

@github-actions
Copy link

This issue is stale because it has been open 60 days with no activity. Remove stale label or comment or this will be closed in 5 days.

@github-actions
Copy link

This issue is stale because it has been open 60 days with no activity. Remove stale label or comment or this will be closed in 5 days.

@github-actions github-actions bot added the Stale label Jun 15, 2022
@lujjjh
Copy link
Collaborator

lujjjh commented Jun 15, 2022

Not stale.

@github-actions github-actions bot removed the Stale label Jun 15, 2022
@lujjjh
Copy link
Collaborator

lujjjh commented Jul 3, 2022

Implemented in v0.7.0.

@lujjjh lujjjh closed this as completed Jul 3, 2022
@Atemu
Copy link
Author

Atemu commented Jul 4, 2022

OMG, thank you so much!

What do the values from 0-1 represent? CursorSense had values 0-1600 (and more), so I'm not sure how to get a comparable value.

Does the configuration value get converted to some other scale that is then given to the API which sets the accel and speed?

@lujjjh
Copy link
Collaborator

lujjjh commented Jul 4, 2022

You may convert from CursorSense's $\text{sensitivity}$ to LinearMouse's $\text{speed}$ through the formula below:

$$ \text{speed} = (\frac{1}{2000 - \text{sensitivity}} - \frac{1}{1200}) / (\frac{1}{40} - \frac{1}{1200}) $$

@Atemu
Copy link
Author

Atemu commented Jul 4, 2022

Oh, wow. Thank you!

However, there seems to be a problem with your fomula; for sensitivity = 1600 I get 0.068 which is wayy too slow: https://www.wolframalpha.com/input?i=%7Bx+%3D+1600%2C+%281%2F%282000+-+x%29+-+1%2F1200%29%2F%281%2F40+-+1%2F1200%29%7D

PS: Didn't even know GH can render math formulas. How do you do that?

@lujjjh
Copy link
Collaborator

lujjjh commented Jul 4, 2022

If I'm not wrong, most pointing devices, including the trackpad, have sensitivity = 1600 set as their default setting. Speed = 0.068 should be the correct value. Have you also checked the acceleration?

PS: Didn't even know GH can render math formulas. How do you do that?

This is a new feature of GitHub :)

@Atemu
Copy link
Author

Atemu commented Jul 4, 2022

Yeah but 0.068 doesn't feel like 1600 in CursorSense at all. Something like 0.4 feels closer. Acceleration is 0 for both.

However, simply ticking "Disable Pointer Acceleration" seems to do exactly what I want: Default speed (or something very close) without acceleration.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants