Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-41214

Two-finger scroll gesture gets sluggish on low frame rates (since Qt5)

    XMLWordPrintable

    Details

      Description

      These are the conditions to reproduce the problem:

      • Qt 5.3.1, Mac OS X 10.8, MacBook Air
      • ScrollArea or GraphicsView based widget (scrollable)
      • Lots of rendering inside the widget which causes the Qt app to get a slow frame rate
      • User performs a two-finger touch based scrolling, but always keeps his fingers on the touchpad. He scrolls for a very short distance, but with a rather high acceleration.

      In Qt 4.8 the application does scroll in large steps, due to the low frame rate, but the scroll movement very closely matches the finger movement. Most important, once the fingers stop moving the scrolling also stops.

      In Qt 5 this behavior seemed to have changed. The scrolling starts slowely, and even if the user already stopped moving his fingers, the scrolling accelerates and then slows down for a significant time still. It doesn't match the movement of the fingers anymore.

      I tried to catch this in video snippets. Even without seeing the finger movement itself, the different can be spotted in there:

      Qt 4.8: http://screencast.com/t/ALyIV80O
      Scrolling is in larger steps, but immediately stops when the user stops scrolling.

      Qt 5.3.1: http://screencast.com/t/Qbzm2XEQ3nJ8
      Scrolling is softer, but still continues for quite a while although the user stopped scrolling. Makes it very hard to scroll accurately.

      I have also attached the modified version of the Qt Chip sample which I use to make the above videos. This modified version works both with Qt 4.8 and Qt 5.3. You'll need to adjust the number of chips in the MainWindow::populateScene() to the performance of your Mac (to get slow frame rates), but then you should be able to reproduce the problem.

      Is there any way to fix this problem, to change the behavior of the scroll gestures back to Qt4 style or to implement an own proper scroll gesture (without tons of effort)?

      Thanks in advance for your help.

        Attachments

          Issue Links

          No reviews matched the request. Check your Options in the drop-down menu of this sections header.

            Activity

              People

              • Assignee:
                sorvig Morten Sørvig
                Reporter:
                zottel78 Fabian Roeken
              • Votes:
                2 Vote for this issue
                Watchers:
                6 Start watching this issue

                Dates

                • Created:
                  Updated:

                  Gerrit Reviews

                  There are no open Gerrit changes