Anyone experiencing buggy Flickable and ListView behavior in Qt 5.5?
-
Today I updated to Qt 5.5 and tested the project I am working on, just to discover a severe regression in the behavior of QML Flickable and ListView.
Dragging is not smoothly following the mouse cursor, especially near the extremities of the range. Instead it is jumping around, sometimes going in a completely different direction, sometimes disappearing and appearing on another spot, sometimes completely disappearing off the screen entirely.
I produced a video to illustrate the issue, it compares the same code running sequentially under Qt 5.4.2 and Qt 5.5. The demo consists of a Flickable nested into a ListView element.
In Qt 5.4.2 the behavior is correct, the Flickable takes focus, and movement of both the Flickable and the ListView is fluid.
In Qt 5.5 the behavior is clearly buggy, there is a conflict between the Flickable and the ListView, and both are jumping around erratically. The UI is effectively unusable and user experience is ruined.
It is not a product of bad user code, even the most basic examples with those elements also produce buggy behavior.
-
I notice the same buggy behaviour in linux (didnt check it on windows) in a the Flickable element that I have with a Row inside.
But I have also noticed the following :- running my app on android works ok, doenst show that buggy behaviour
- I have a laptop with nvidia running with propretary drivers, if I go back to noveau drivers it runs ok
- setting the envirogment variable QSG_RENDER_LOOP=basic also works ok (see here http://doc.qt.io/qt-5/qtquick-visualcanvas-scenegraph.html#scene-graph-and-rendering )
So I guess this is a bug related with graphic drivers, but better ask on the mailling list and fill a bug report.
-
I don't see how this could possibly be due to graphics drivers. I also don't see how the render loop could do this either. I mean, I am dragging with the mouse to the left and I see it moving right. Issues with the render loop synchronization could produce stuff like skipping animation, but this is not it. The behavior is plain out wrong.
In the 5.5 changelog I see this:
Improved behavior of Flickable on OS X trackpads using pixel deltas from native gestures.
So maybe that "improved behavior" broke it. It would also affect ListView, since it "inherits" Flickable.
-
Is behaviour improved if you set QML_NO_TOUCH_COMPRESSION=1 in env?
Wondering if this might be related to QTBUG-40167 or https://bugs.launchpad.net/qtmir/+bug/1486341 -
@chrisadams No, there is no change at all with QML_NO_TOUCH_COMPRESSION enabled