Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-72110

MouseArea stops responding

    XMLWordPrintable

Details

    • Android
    • 64d62c53c1e92a1cc07449a0ea3c71501592c1e7 (qt/qtbase/dev) 82121b2fbf80fc39d8a7bab9e8e9a8c545f1ffd3 (qt/qtbase/5.15)

    Description

      <UDPATE>

      Thanks to srutledg’s help, I found what causes this bug.

      Modern Android devices can recognize certain hand gestures (see attached pictures). For example:

      • on Xiaomi and Huawei devices you can take a screenshot by sliding 3 fingers down
      • on Samsung devices you can take a screenshot by swiping the edge of your hand across the screen [called: Palm swipe]
      • on Samsung devices you can mute incoming calls or alarms by putting your hand over the screen [called: Easy mute].

      Probably the following happens:

      1. The MouseArea captures the Press event.
      2. The OS recognizes it as a gesture, not a touch.
        "Xiaomi: D ViewRootImpl: cancle motionEvent because of threeGesture detecting"
      3. The MouseArea never gets notified that the Press was cancelled due to gesture recognition.

      </UDPATE>

       

      On android devices the MouseArea becomes irreversibly unresponsive if touched in an unusual way.

      Tested devices:

      FAILED: Samsung Galaxy TAB A 2016 (SM-T585) – Android 7.0

      FAILED: Xiaomi Redmi Note 5 Pro – Android 8.1.0

      FAILED: Huawei P9 Lite (2017) – Android 8.0.

      FAILED: Samsung Galaxy Edge S7 – Android 8.0.

      FAILED: Samsung Galaxy A7 2015 – Android 6.0.1

       

      OK: Lenovo Moto Z – Android 8.0

      OK: OnePlus 5 – Android 8.1

      OK: Samsung Galaxy Tab 3 Lite (SM-T110) – Android 4.2.2

      OK: Asus Nexus 7 (2012) – Android 5.1.1

      OK: Vodafone Smart Mini – Android 4.1.1

       

      The error message:

      W libMouseTest.so: (null):0 ((null)): TouchPointPressed without previous release event QQuickEventPoint(accepted:false state:Pressed scenePos:QPointF(714.667,504.667) id:2000001 timeHeld:0)

      I attach an example project and a test apk built with Qt 5.12.0 RC2.

      This bug is a big problem for my users living with movement disability as the program freezes easily after a not well-controlled touch. Please help me solve this issue. Any quick workaround would be much appreciated as hundreds of my users have reported this problem.

       

      Attachments

        1. XiaomiGestures.png
          XiaomiGestures.png
          115 kB
        2. SignedTest.apk
          7.23 MB
        3. SamsungGestures.png
          SamsungGestures.png
          108 kB
        4. MouseTest.zip
          5 kB
        5. ActionCancelExample.zip
          2 kB

        Activity

          People

            bartlomiejmoskal Bartlomiej Moskal
            balazs Zsombori Balázs
            Votes:
            6 Vote for this issue
            Watchers:
            14 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: