Details
-
Bug
-
Resolution: Fixed
-
P1: Critical
-
6.5.0, 6.8
-
MacBook Pro, MacOS Ventura.
-
-
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):
- Use laptop WITHOUT external mouse connected (only with touchpad)
- Start an app where a QQuickWidget is created and displayed in a dialog
- In the QML code there should be a ListView within a ScrollView. Add bunch of items.
- At first, each click on any list item works as expected.
- Scroll down/up to the bottom/top of the list few times.
- 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:
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
- resulted from
-
QTBUG-101736 QQuickWidget: button in a popup doesn't receive touch end event
- Closed
For Gerrit Dashboard: QTBUG-113384 | ||||||
---|---|---|---|---|---|---|
# | Subject | Branch | Project | Status | CR | V |
544358,5 | QQuickWidget: don't set WA_AcceptTouchEvents on macOS | dev | qt/qtdeclarative | Status: MERGED | +2 | 0 |
545202,2 | QQuickWidget: don't set WA_AcceptTouchEvents on macOS | 6.7 | qt/qtdeclarative | Status: MERGED | +2 | 0 |
545242,2 | QQuickWidget: don't set WA_AcceptTouchEvents on macOS | 6.6 | qt/qtdeclarative | Status: MERGED | +2 | 0 |
545497,2 | QQuickWidget: don't set WA_AcceptTouchEvents on macOS | tqtc/lts-6.5 | qt/tqtc-qtdeclarative | Status: MERGED | +2 | 0 |
545681,3 | QQuickWidget: don't set WA_AcceptTouchEvents on macOS | tqtc/lts-6.2 | qt/tqtc-qtdeclarative | Status: MERGED | +2 | 0 |
558977,7 | QQuickWidget: Set WA_AcceptTouchEvents in all constructors | dev | qt/qtdeclarative | Status: MERGED | +2 | 0 |
559733,2 | QQuickWidget: Set WA_AcceptTouchEvents in all constructors | 6.7 | qt/qtdeclarative | Status: MERGED | +2 | 0 |