Details
-
Bug
-
Resolution: Unresolved
-
P3: Somewhat important
-
None
-
5.7.0
-
iOS 9.1 (iPad)
Description
As mentioned in https://bugreports.qt.io/browse/QTBUG-37304, there's a built in message that sometimes gets logged to console "Subset of active touches cancelled by UIKit"
On some occasions, this results in the touches array containing active touch points when in reality all touch points have been removed from the iPad. A further touch from 1 or more points followed by removing them somehow triggers onCanceled which removes those points.
This onCanceled should have happened at the same time as the message "Subset of active touches cancelled by UIKit".
See the attached project. Here's an actual example console output (that I've annotated with comments)
COMMENT: I placed a flat hand on the iPad, which resulted in 10 touch points qml: ADD 4 touch points qml: Now there are 4 touch points qml: ADD 5 touch points qml: Now there are 9 touch points qml: ADD 1 touch points qml: Now there are 10 touch points COMMENT: Then I removed my hand Subset of active touches cancelled by UIKit COMMENT: At this point, nothing is touching the iPad, but I can see 10 touch point markers on the screen still COMMENT: I add 3 fingers and move them around. 3 of the 10 markers snap to follow my fingers, while the other 7 stay where they are. COMMENT: I remove all 3 fingers qml: REMOVE 2 touch points qml: Now there are 8 touch points qml: REMOVE 1 touch points qml: Now there are 7 touch points qml: CANCEL 7 touch points qml: Now there are 0 touch points COMMENT: All touch markers have disappeared