Details
-
Bug
-
Resolution: Unresolved
-
P1: Critical
-
None
-
6.7.3
-
None
-
Tested and reproduced on a Google Pixel 7 running Android 14, Pixel 4a Android 13.
Description
A QPinchGesture can prematurely move from GestureStarted state to GestureFinished state without going through GestureUpdated. The consequence is that pinch-scaling a graphics view, for instance, becomes tricky and provides a poor user experience.
The occurrence of this depends on the dynamics of the touch: I think it's likely to occur when there is a small amount of pan movement in the first touch. This has been reproduced on Android, the only touch screen platform I have access to.
The pinch gesture's state moves to finished when a TouchEvent with a single point is processed, even when there are clearly two touch points on the device screen.
A test case that reproduces the error is attached. The test case emits a debug statement when the premature transition to GestureFinished occurs. The fault doesn't happen on every gesture; it requires repeated trials to reproduce.
The fault does not occur when built with 6.7.2.