mac-mouse-fix
mac-mouse-fix copied to clipboard
Even faster scrolling [enhancement]
Description
I noticed that it takes about five swipes on the trackpad to scroll through a significant part of a document, but about ten scrolls with the scrollwheel on the max settings to achieve the same distance
Rationale
its just an idea, an even faster algorithm may be even to fast, too...
Additional info
I really enjoy the project, these are just two minor things I noticed. I am really amazed and love to use it! Thanks very much for your work! :-)
Hi @c-fisc24. thanks for the feedback, that's sweet :-)
I just reworked the scrolling systems for a future update, and now there's a mechanism where I can fully and easily customize the scrolling acceleration using easy-to-configure Bezier Curves. Eventually, I'll work on finding a good tuning for this algorithm, and I'll keep your request in mind, and try to optimize it for scrolling large distances easily.
But there's no timeframe for when this will release, yet, so please don't hold your breath.
Background info
The fundamental problem is that scroll wheels are very low resolution. When fully you move you finger over the scroll wheel, that only produces around 5 or so "events" where the mouse tells the computer "Hey, I just scrolled a certain distance".
In contrast, when you move your finger across a trackpad for the same distance, that produces hundreds of "Hey, that finger just moved" events.
So what you have to do to enable scrolling both small and large scroll distances easily on a normal, low-resolution scroll wheel, is to accelerate the scrolling heavily. But the problem is that this can feel hard to control if the acceleration is tuned badly or too strong. Hopefully I'll be able to improve on the built-in scroll wheel acceleration in macOS using the new systems.
Acceleration is done very well by macOS natively if smooth scrolling is disabled. It allows great accuracy when required (like scrolling through logs in a small window) and great speed when required (like scrolling through a webpage).
I'm looking forward to using smooth scroll with the same accuracy. It's great to hear that this is in the works!
I achieved faster and better scrolling by increasing the speed in the MacOS mouse preferences AND in Mac Mouse Fix (I'm using the beta 2)
I achieved faster and better scrolling by increasing the speed in the MacOS mouse preferences AND in Mac Mouse Fix (I'm using the beta 2)
Weird, is this related to the mouse you are using? I have a Microsoft Pro IntelliMouse (no special drivers or software installed) and the scrolling is way to slow even with all the settings maxed out. Running macOS Big Sur 11.6.3 here. When using Mos the speed is noticeably faster on the default settings.
@hrvstr what app did you test your scroll speed in? I am playing around with these settings at the moment and noticed that in Safari the scrolling speed is excellent, in Mail it is slower and in Pages it is horribly slow (about 10% of Safari). I am not sure what causes this and whether this project can fix the inconsistency with the scrolling speed.
I am testing with the default apps just like you (Safari, Mail, etc.). At the moment I am using Mos because it lets me set individual scroll speed and step size for apps. In Safari I have everything maxed out for super-fast scrolling and in other apps it's way slower for more control. If this project adds scroll speed (with higher values than currently available) we can compensate for the different scroll behaviors of apps. I am keeping it installed for now and keep checking the GitHub status.
Yeah, compared with Mos, mac-mouse-fix is way much slower even if I use max scroll speed.
Hi guys,
Happy to inform you that faster scrolling is finally available in the latest MMF 3 Beta if you want to check it out!
I'm still not totally done tuning all the settings but I think the default already feels really good.
Let me know if you have thoughts on or issues with that!
Hi guys,
Happy to inform you that faster scrolling is finally available in the latest MMF 3 Beta if you want to check it out!
I'm still not totally done tuning all the settings but I think the default already feels really good.
Let me know if you have thoughts on or issues with that!
For me, scrolling does not work at all when smooth scrolling is activated. Nothing moves and I have to disable smooth scrolling to be able to scroll.
- MMF 3.0.0 Beta 4 (19384)
- macOS 12.6 (21G115)
- Microsoft Pro IntelliMouse
@hrvstr is that in any app or are there some places where it works?
I already know of an issue in Beta 4 where scrolling doesn't work in some apps that rely on line scrolling like the Terminal (see https://github.com/noah-nuebling/mac-mouse-fix/issues/413).
I've fixed that and will push the change in the Beta 5.
Maybe you're having the same issue?
Hey @hrvstr, the scrolling problem should be resolved in 3.0.0 Beta 5!
If you still experience the same problem under 3.0.0 Beta 5, please open a new issue or ~~let me know so I can reopen this one~~. Thank you!
Sorry for the late reply. Scrolling now works everywhere when using Beta 5. 👍
Maybe I am a bit weird but scrolling is still not fast enough for me even on the highest setting. I recorded a demo of my Mos settings (not even maxed out) compared to Mac Mouse Fix. I am not really sure what it is but something just feels off, maybe it's lacking acceleration.
https://user-images.githubusercontent.com/4610008/199764152-4967e14a-d511-40df-94ca-8298c4e9c6d4.mp4
Scrolling now works everywhere when using Beta 5 👍
Great!
Maybe I am a bit weird but scrolling is still not fast enough for me even on the highest setting
Thanks for your input! That's noted.
If you're interested here are some ideas I've had for fixing your issues. Let me know if you have any thoughts on them:
1.
I was thinking about making the "Medium" Scroll Speed option as fast as the "High" option currently is, and then making the "High" option faster.
I plan to work on that soon. Not sure it's going to be as fast as MOS though.
2.
I was also thinking about adding a "Custom" option where you can customize the acceleration curve in more detail. I already built some algorithms that could let you fully customize the acceleration using 3 pretty intuitive parameters:
- Scroll Speed when moving scrollwheel slowly
- Scroll Speed when moving scrollwheel at medium speed
- Scroll Speed when moving scrollwheel quickly
The "medium speed" parameter might be confusing since it would really control the curvature of the acceleration curve and the true Scroll Speed at medium wheel speed would also be influenced by the "slowly" and "quickly" parameters. At least with the algorithms I've currently built.
Either way this is pretty surely not coming for 3.0. Maybe 3.1 or so.
3.
You could also use the "Swift Scroll" feature to scroll faster. You can bind it to a keyboard modifier or a mouse button.
Hope that helps a little!
Another thing I've noticed from your video is it takes you 7 scroll swipes to scroll through this thread with MMF. On my mouse it only takes 3 swipes. I guess my scrollwheel is just built different.
I hadn't really been considering these hardware differences since I don't have that many different mice, but it's something I should really be thinking about more.
So thanks for making me aware!
Alsooo I tested your MOS settings and while they feel really nice for a browser, I think in other apps, the minimum scroll distance would be too high.
So since MMF doesn't support app-specific settings, yet, I don't think it's feasible to set the minimum scroll distance that high for MMF.
Thanks for these improvements, they're great!
You could also use the "Swift Scroll" feature to scroll faster. You can bind it to a keyboard modifier or a mouse button.
How can we bind a mouse button to this? I can't see the option for it in the button or scrolling settings.
Does this show up for you?
If you didn't find the option because you looked for it in different places I'd be interested in which places you looked so I can better understand how people navigate / think about the UI.
The feature has a few bugs at this point but I think it already feels pretty good.
If you didn't find the option because you looked for it in different places I'd be interested in which places you looked so I can better understand how people navigate / think about the UI.
Ah, thanks. I didn't think to try the "Click and Scroll" gesture - I was think more along the lines of it being a modifier that can get triggered in "Click" or "Click and Hold". This way makes more sense, because it frees up those gestures for non-scroll-related actions.
Interesting That's actually how things are implemented under-the-hood. When you set up "Click and Scroll" for Button 4 that will set Button 4 as a modifier for scrolling input. Maybe I could think about presenting it more along those lines in the UI.
Thanks for getting back!