Details
-
Bug
-
Resolution: Unresolved
-
P2: Important
-
None
-
6.0.1, 6.1.0 Beta 1
-
None
-
Win10 x64, Hi-DPI screen, touch screen
Description
Windows 10 laptop with Hi-DPI (3840x2160) touch screen.
Using Qt6.0.1.
Run the following qml file with qmlscene:
qmlscene.exe --resize-to-root multitouch.qml
import QtQuick 2.15 Item { width: 600 height: 600 MultiPointTouchArea { anchors.fill: parent mouseEnabled: false minimumTouchPoints: 1 maximumTouchPoints: 2 touchPoints: [ TouchPoint { id: point1 }, TouchPoint { id: point2 } ] Rectangle { x: point1.x - width / 2 y: point1.y - height / 2 width: 100; height: width; radius: width color: '#80ff0000' } Rectangle { x: point1.previousX - width / 2 y: point1.previousY - height / 2 width: 80; height: width; radius: width color: '#80ffff00' } Rectangle { x: point1.sceneX - width / 2 y: point1.sceneY - height / 2 width: 60; height: width; radius: width color: '#800000ff' } Rectangle { x: point1.startX - width / 2 y: point1.startY - height / 2 width: 80; height: width; radius: width color: '#80000000' } Rectangle { x: point2.x - width / 2 y: point2.y - height / 2 width: 100; height: width; radius: width color: 'green' } } }
Try touching the screen, and perform single-point or two-point gestures. The second point behaves properly all the time, the first point always jumps. See the attached video.
The same behaviour can be observed in any Flickable (GridView, etc.) - if you drag it, it jump back and forth.
The issue did not exist in Qt5.15.1.
The issue still exists in Qt dev branch at commit 91dc70dba9fd1f1.