Touchpad scrolling bounces

Bug #805972 reported by Chad A Davis
16
This bug affects 2 people
Affects Status Importance Assigned to Milestone
qt4-x11 (Ubuntu)
Fix Released
Critical
Jussi Pakkanen
Oneiric
Fix Released
Critical
Jussi Pakkanen

Bug Description

Oneiric dev branch iso testing (kubuntu-alternate-amd64+mac.iso on 2011-07-05)

Mouse wheel scrolling (here with two-finger scrolling on the touchpad) results in jittering/flickering in the 'By Category' list. If the pointer is on the scroll bar, this doesn't occur (screencast attached). It seems that the pointer moving in the list and simultaneously scrolling in the list is causing a conflict of some kind.

Problem does not occur using an external mouse with an actual scroll wheel.

ProblemType: Bug
DistroRelease: Ubuntu 11.10
Package: muon 1.1.85-0ubuntu1
ProcVersionSignature: Ubuntu 3.0-3.4-generic 3.0.0-rc5
Uname: Linux 3.0-3-generic x86_64
Architecture: amd64
Date: Tue Jul 5 16:12:15 2011
InstallationMedia: Kubuntu 11.10 "Oneiric Ocelot" - Alpha amd64+mac (20110705)
ProcEnviron:
 LANGUAGE=en_US:en
 LANG=en_US.UTF-8
 SHELL=/bin/bash
SourcePackage: muon
UpgradeStatus: No upgrade log present (probably fresh install)

Revision history for this message
Chad A Davis (chadadavis) wrote :
summary: - No mouse scrolling in 'By Category' list
+ No touchpad scrolling in 'By Category' list
Revision history for this message
Jonathan Thomas (echidnaman) wrote : Re: No touchpad scrolling in 'By Category' list

I'm using a bog-standard itemview from Qt for that, so it's likely an issue with Qt itself.

affects: muon (Ubuntu) → qt4-x11 (Ubuntu)
Revision history for this message
Aurélien Gâteau (agateau) wrote :

I have the same issue with various Qt applications when I use two-finger scrolling. It feels like the scrollbar is bouncing. The fact it only happens with touchpad and not regular mouse wheel makes me think it could be multitouch related.

summary: - No touchpad scrolling in 'By Category' list
+ Touchpad scrolling bounces
Revision history for this message
Aurélien Gâteau (agateau) wrote :

This very simple test program demonstrates the bug for me. Just start it with "python touchpad.py", move the pointer over the content (not over the scrollbar) and do a double-finger scroll with the touchpad.

Changed in qt4-x11 (Ubuntu):
status: New → Confirmed
Revision history for this message
Aurélien Gâteau (agateau) wrote :
Changed in qt4-x11 (Ubuntu):
importance: Undecided → Critical
Revision history for this message
Chase Douglas (chasedouglas) wrote :

Here's some notes from my investigations:

* It is only reproducible on a full multitouch trackpad, which currently are only Apple trackpads
* There seems to be some smooth scrolling and then a snap reversion
* On a touchscreen, two touch drags produce inconsistent smooth scrolling but no snap reversions

This leads me to believe there is some code in the Qt scroll view class that subscribes to two touch drag gestures from Qt. Qt has its own gesture recognizer that is not hooked up to uTouch, though that's beside the point. The trackpad issue can be explained by the scroll view performing smooth scrolling for a bit and then snapping back when an X scroll event (button presses 4, 5, 6, or 7) is received. Touchscreens don't emit X scroll events, so there's no snap reversion in that case.

I don't trust the Qt smooth scrolling based on what I see when using a touchscreen. It's not a 1:1 scroll and it often doesn't work. Our best course of action for now is to patch out the gesture subscription from the Qt scroll view class.

Changed in qt4-x11 (Ubuntu):
status: Confirmed → Triaged
Revision history for this message
Jussi Pakkanen (jpakkane) wrote :

The attached patch fixes this bug by manually removing panning gesture subscription from qabstractscrollarea.cpp. Thus all scrolling happens via mouse wheel events synthesised by X.

Changed in qt4-x11 (Ubuntu):
status: Triaged → In Progress
assignee: nobody → Jussi Pakkanen (jpakkane)
Revision history for this message
Ubuntu Foundations Team Bug Bot (crichton) wrote :

The attachment "qt_disable_bounce.patch" of this bug report has been identified as being a patch. The ubuntu-reviewers team has been subscribed to the bug report so that they can review the patch. In the event that this is in fact not a patch you can resolve this situation by removing the tag 'patch' from the bug report and editing the attachment so that it is not flagged as a patch. Additionally, if you are member of the ubuntu-sponsors please also unsubscribe the team from this bug report.

[This is an automated message performed by a Launchpad user owned by Brian Murray. Please contact him regarding any issues with the action taken in this bug report.]

tags: added: patch
Changed in qt4-x11 (Ubuntu):
milestone: none → ubuntu-11.10
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package qt4-x11 - 4:4.7.4-0ubuntu5

---------------
qt4-x11 (4:4.7.4-0ubuntu5) oneiric; urgency=low

  * debian/patches/kubuntu_95_qt_disable_bounce.diff:
    - Fix Touchpad scrolling bounces (LP: #805972)
  * debian/patches/kubuntu_14_systemtrayicon.diff:
    - sni-qt and hp-systray interact badly (LP: #860395)
 -- Didier Roche <email address hidden> Wed, 28 Sep 2011 08:43:28 +0200

Changed in qt4-x11 (Ubuntu Oneiric):
status: In Progress → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.