Details
-
Bug
-
Resolution: Done
-
P1: Critical
-
5.1.1, 5.2.0 Alpha
-
None
-
Android 4.1.2
-
-
b3535f3926a42a254985c456e9231768aade3595
Description
When moving my finger slowly over the screen, the touch point in the following example fails to update. It jumps to the position of my finger as soon as I move faster than a certain threshold.
MultiPointTouchArea { anchors.fill: parent touchPoints: [ TouchPoint { id: touchPoint } ] Item { anchors.fill: parent visible: touchPoint.pressed Rectangle { color: "black" anchors.top: parent.top anchors.bottom: parent.bottom width: 2 x: touchPoint.x - 1 } Rectangle { color: "black" anchors.left: parent.left anchors.right: parent.right height: 2 y: touchPoint.y - 1 } Rectangle { color: "black" width: 20 height: 20 radius: 10 x: touchPoint.x - 10 y: touchPoint.y - 10 } } }
The example draws horizontal and vertical lines through the touchpoint to make the effect more clear.
This is a critical issue for us since we implemented a joystick control and it's very common to slowly adjust the joystick while playing the game. We can't use a MouseArea instead, since while it doesn't suffer from this issue it will not allow buttons to be pressed while the joystick is in use.
It feels like somewhere some filtering is done that is dropping small movements, possibly to avoid jitter, but if so it's being done wrong.
Attachments
For Gerrit Dashboard: QTBUG-33729 | ||||||
---|---|---|---|---|---|---|
# | Subject | Branch | Project | Status | CR | V |
67108,1 | Android: Don't throw away slow-moving mouse/touch events | stable | qt/qtbase | Status: MERGED | +2 | 0 |