Closed Bug 1674218 Opened 4 years ago Closed 4 years ago

Scrolling via precision touchpad is too fast on Ubuntu (Wayland enabled)

Categories

(Core :: Panning and Zooming, defect, P3)

x86_64
Linux
defect

Tracking

()

RESOLVED DUPLICATE of bug 1610477

People

(Reporter: saschanaz, Unassigned)

Details

It's super sensitive, I can scroll down from the top to the bottom with only one vertical swipe on https://en.wikipedia.org/ on Surface 3. For comparison, Gnome Web only scrolls down to the 60% of the page with the same swipe.

I'm using Nightly on Ubuntu 20.04 with Wayland enabled (also with MOZ_ENABLE_WAYLAND=1).

I'm using custom drivers from https://github.com/linux-surface/linux-surface to get Linux compatibility, and I have no idea whether this also happens on general Linux laptops.

Component: General → Panning and Zooming
Product: Firefox → Core

Does setting apz.gtk.kinetic_scroll_enabled=false improve scrolling for you?

Yes, the scrolling becomes significantly slower with apz.gtk.kinetic_scroll.enabled=false, even when without momentum. IMO the flag should only affect when the scroll input ends (and the momentum starts), but somehow it affects the speed before the input ends 🤔

To enable kinetic scrolling, the pref causes us to take a different codepath for processing touchpad scroll events, turning them into PanGestureInputs (which support kinetic scrolling) instead of ScrollWheelInputs (which do not).

Greg, would you be able to have a look at this?

Flags: needinfo?(greg)

Scrolling itself feels like about the same speed for me in both native GTK apps like gedit, in WebKit and in Firefox. But indeed GTK decelerates flings way more aggressively, in Firefox momentum keeps going far longer. I actually kinda like the "crazy" Firefox momentum better, but I agree that consistency is more important out of the box.

Looking at various settings in APZ, the pref apz.fling_friction seems to be a relevant one, a value of 0.004 feels more "GTK-like" than the default 0.002. Maybe we should change that default on gtk.

Flags: needinfo?(greg)

I understood the issue as being about the speed of the scroll before momentum, on a particular device (Surface 3 with drivers from https://github.com/linux-surface/linux-surface), being different between Firefox and Gnome Web.

Severity: -- → S3
Priority: -- → P3

Assuming this is indeed a device-specific issue, in cases where we don't have the device in question (here, a Surface 3) available to test on directly, an approach we've taken in the past is to prepare a patch that logs relevant information, push it to Try, and ask the bug reporter to run the Try build on their affected device and provide the logs.

This also happens on Fedora Wayland on my Dell Inspiron 7460. Changing the acceleration helps at times but it is super fast making it unusable really. In addition, it is not just the fling friction that is problematic : It is also that a slight movement without flinging makes a large initial displacement (even that needs to be reduced/slowed down) and secondly the fling distance also needs to be adaptive to feel natural (not just the deceleration).

To explain the second thing, there is a certain displacement that happens on a fling after which there seems to be a period of deceleration. Despite changing the friction, the distance doesn't change as much (only the deceleration happens faster) and so it still seems like a huge scroll.

Thanks, that seems likely.

Status: NEW → RESOLVED
Closed: 4 years ago
Resolution: --- → DUPLICATE
You need to log in before you can comment on or make changes to this bug.