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

QQuickWidget - touchpad click not working after scrolling

    XMLWordPrintable

Details

    • macOS
    • 2f1be4c51 (dev), 485388263 (6.7), 9580f7970 (6.6), 779f434e8 (tqtc/lts-6.5), 24498d711 (tqtc/lts-6.2), b85ec1cab (dev), 99886104c (6.7)

    Description

      It seems to be a regression, given that the same piece of code works perfectly on Qt 6.4.2.

      Steps to replicate (see DEMO attached):

      1. Use laptop WITHOUT external mouse connected (only with touchpad)
      2. Start an app where a QQuickWidget is created and displayed in a dialog
      3. In the QML code there should be a ListView within a ScrollView. Add bunch of items.
      4. At first, each click on any list item works as expected.
      5. Scroll down/up to the bottom/top of the list few times.
      6. Click on an item in the list does not work as expected. Sometimes it is necessary to click 3-5 times on touchpad for a click to be registered/fired in QML code. Sometimes it works from first click. It is a random issue, but should be easy to replicate.

      Same code works well with QQuickView.

      Workaround:

      Looking into commits I have found this patch in Qt 6.5:

      https://codereview.qt-project.org/c/qt/qtdeclarative/+/450353/2/src/quickwidgets/qquickwidget.cpp#616

      So, I thought that by adding the following line of code would fix the problem, and it actually does fix the issue:

      quickWidget->setAttribute(Qt::WA_AcceptTouchEvents, false);

      But this is just a workaround.

      Attachments

        Issue Links

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

          Activity

            People

              srutledg Shawn Rutledge
              comy Denis Komadaric
              Votes:
              1 Vote for this issue
              Watchers:
              7 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: