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

No libinput touch events are delivered to a QApplication

    XMLWordPrintable

Details

    • Bug
    • Resolution: Done
    • P2: Important
    • 5.14.0 RC1
    • 5.12.3, 5.13.2, 6.0
    • None
    • Linux/Other display system
    • e5078714febaa72bf2f43b3a8ac9caec1c324129 (qt/qtbase/5.13)

    Description

      Using the hardware/software environment described below a single one finger touch starts with a LIBINPUT_EVENT_TOUCH_DOWN directly followed by a LIBINPUT_EVENT_TOUCH_MOTION both having the same touch position. Now Qt's code for touch input processing compresses both into one touch point with state Qt::TouchPointStationary which results in QGuiApplicationPrivate::processTouchEvent() seeing no touch points with state Qt::TouchPointPressed anymore. As a consequence processTouchEvent()'s local container windowsNeedingEvents stays empty and the whole touch frame gets skipped.

      Find the suggested bugfix attached to this report. The bug has been discovered and fixed as well as the bugfix tested using Qt 5.12.3.

      To be sure that the problem is really a Qt bug an issue has been opened in libinput's Gitlab instance: Peter Hutterer found a bug in libinput and proposed a fix which I tested successfully without the attached Qt patch applied - so this patch can be considered to be a workaround and not to be a bugfix anymore. But as Qt will be combined with unfixed libinput versions out in the field the workaround is still of interest.

      Attachments

        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

        Activity

          People

            srutledg Shawn Rutledge
            onkelulla Ulrich Ölmann
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes