New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 602769 link

Starred by 6 users

Issue metadata

Status: Fixed
Owner:
Closed: Sep 14
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux
Pri: 2
Type: Bug

Blocking:
issue 603651



Sign in to add a comment

Smooth scrolling isn't smooth with Logitech Performance MX on Linux

Project Member Reported by sunn...@chromium.org, Apr 12 2016

Issue description

This mouse has two scrolling modes (traditional step scrolling and hyper scrolling in which the wheel moves freely) that are toggled by a physical button on the mouse. The hyper scrolling mode produces lots of X11 button press/release events while the wheel is in motion.

When in traditional scrolling mode, smooth scrolling works as expected. But in hyper scrolling mode there is visible jank and stutter especially towards the end of the scroll. Note that hyper scrolling means that continuous scrolling happens for many seconds at a time.

I suspect the same problem also happens with the Logitech M500 (available in go/stuff) that has the same hyper scrolling feature.

I'm testing on Google Inbox (with lots of emails in the page) on 
Google Chrome 51.0.2700.0 (Official Build) dev (64-bit) on Goobuntu 14.04.

 
Does the same thing happen in Evince? This is another app that uses xinput2 to receive mouse events (provided that it is using GTK+3). I have this mouse too and I wrote the code porting Chrome to xinput2 mouse events but I've never had such problems (Ubuntu 15.10).
Cc: skobes@chromium.org bokan@chromium.org
Labels: Hotlist-Input-Dev
Owner: ymalik@chromium.org
Status: Assigned (was: Untriaged)
ymalik@  Can you try this?

Comment 3 by bokan@chromium.org, Apr 14 2016

It sounds to me like this feature is basically trying to do smooth scrolling from the hardware side, right? I think in these cases we might do well to turn off our smooth scrolling logic. This is analogous to how on Mac we send touchpad events with a "PrecisePixel" granularity which prevents smooth scroll from kicking in. I don't think we're doing that on Linux when we get high precision mouse ticks.
I updated the graphics stack on my machine to Ubuntu Wily (15.10) which have evdev 2.9. It seems things are better now but that might just be due to adjusting the scroll speed.

However I was able to reproduce the stuttering at the end of the scroll with the same mouse on windows too. Basically the scroll steps at the end of the scroll are rather large compared to the granularity of scrolling on this mouse. I think disabling smooth scroll if we're able to detect high scrolling granularity makes sense.

Comment 5 by ymalik@chromium.org, Apr 19 2016

We have tried to turn off smooth scrolling for high-precision trackpads on Windows in the past and it has made things worse (see  issue 545234 ). For now, we have smooth scrolling enabled for all trackpads and mouse wheels on Windows/Linux.

Is there a good heuristic that we can use here to detect high scrolling granularity?

Comment 6 by ymalik@chromium.org, Nov 15 2016

Blocking: 603651
Cc: -skobes@chromium.org
Owner: skobes@chromium.org
Owner: chaopeng@chromium.org
Status: Fixed (was: Assigned)
We added DirectManipulation support on Windows for high-precision trackpads so I think this is probably fixed.  Please reopen if still occurring.

Sign in to add a comment