Touchpad inertial scrolling continues after navigation on Linux
Categories
(Core :: Panning and Zooming, defect, P3)
Tracking
()
People
(Reporter: callahad, Unassigned)
References
Details
Steps to Reproduce:
- Visit a long page with several anchors. E.g, https://html.spec.whatwg.org/multipage/introduction.html#introduction
- Flick the trackpad to begin scrolling, allowing the page to continue scrolling with inertia.
- While the page is scrolling, press
Ctrl-L + Return
to navigate back to the#introduction
anchor.
What Should Happen:
- The page scrolls to the anchor and stays there.
What Actually Happens:
- The page jumps up to the anchor, and then continues scrolling itself with the previous inertia.
This seems to only be the case on Linux. I have set MOZ_USE_XINPUT2=1
in my environment. Firefox is running in Gnome, under XWayland.
Comment 1•5 years ago
•
|
||
[Environment:]
Firefox Release 68.0.2 - 20190813150448
Firefox Beta 69.0b14 - 20190815163925
Nightly 70.0a1 - 20190818215144
Hi,
I didn't managed to reproduce this issue on Ubuntu 18 with Wayland with the firefox versions mentioned above, because inertial scrolling and shortcut are working but only separately(inertial scrolling or shorcut) not both. I will set the following component Core Panning and Zooming. Can you please tell me if you have any extra settings?
Reporter | ||
Comment 2•5 years ago
|
||
I incorrectly reported my Wayland configuration; turns out I was using Gnome on Xorg, not Wayland.
I am able to reproduce this in a completely new profile with default settings under two conditions:
- Gnome Xorg session with
MOZ_USE_XINPUT2=1
- Gnome Wayland session with
MOZ_ENABLE_WAYLAND=1
I'm running NixOS, but using Mozilla's official builds of Nightly.
Updated•5 years ago
|
Comment 3•5 years ago
•
|
||
Apologize for the status changes to unconfirmed. According to the comment 2 I will set the status New. I tried with set up in terminal for Wayland:
MOZ_ENABLE_WAYLAND=1 but doesn't work for me > inertial scrolling and shortcut are working but only separately, not both. I don't have Gnome on Xorg configuration to test this.
Comment 4•5 years ago
|
||
I can reproduce this on Linux (on Xorg with MOZ_USE_XINPUT2=1
).
Linux just recently got inertial scrolling at all (bug 1213601), and it has had this behaviour from the outset.
Note that there is platform divergence in behaviour beyond Linux:
- on Windows, inertial scrolling stops as soon as Ctrl+L is pressed
- on Mac, inertial scrolling stops after Return is pressed
- on Linux, it doesn't stop at all (this bug)
Linux's handling of two-finger trackpad gestures is closer to Mac's (they both use PanGestureEvents), though on Linux we implement the inertial scroll animation ourselves, while on Mac the OS sends events for it.
The next step here would be to understand how the navigation causes the inertial scroll to stop on Mac, and then see if we can implement some logic to replicate that behaviour on Linux. Note that we can't just stop the inertial scroll in response to any scrolling, as we explicitly decided not to do that (bug 1474196).
Comment 5•5 years ago
|
||
This might be implicit in the original report, but just in case: any kind of navigation within the same page, not just from the navigation bar, seems to conserve momentum. I can cause this behavior by clicking the back and forward buttons, by using the keyboard shortcuts for back and forward, and even by pressing Enter
with the focus on a hyperlink (though not by clicking on such a link; clicks on the page itself do kill the momentum).
Similarly, using the keyboard arrows to scroll probably also should interrupt an inertial scroll in progress, but it doesn't; it just causes a brief jerk as the key press has its usual effect and then the inertial scroll continues with its momentum unchanged.
(I'm also running on Linux/Xorg/XI2.)
Updated•2 years ago
|
Description
•