commit
9a2751b91b
|
@ -1,3 +1,12 @@
|
|||
qtbase-opensource-src (5.15.3+dfsg-ok1.1) yangtze; urgency=medium
|
||||
|
||||
* Bug: Issue#I66RY2
|
||||
* 需求: 无
|
||||
* 其他: 合并patch:1.Del-touch-point-without-target.patch;2.Fix-touch-failure-after-right-click-menu.patch
|
||||
* 影响域:桌面触摸失效
|
||||
|
||||
-- liuyang <liuyang@kylinos.cn> Wed, 4 Jan 2023 16:00:00 +0800
|
||||
|
||||
qtbase-opensource-src (5.15.3+dfsg-ok1) yangtze; urgency=medium
|
||||
|
||||
* Build for openKylin.
|
||||
|
|
|
@ -3061,7 +3061,8 @@ void QGuiApplicationPrivate::processTouchEvent(QWindowSystemInterfacePrivate::To
|
|||
QEvent::Type mouseEventType = QEvent::MouseMove;
|
||||
Qt::MouseButton button = Qt::NoButton;
|
||||
Qt::MouseButtons buttons = Qt::LeftButton;
|
||||
if (eventType == QEvent::TouchBegin && m_fakeMouseSourcePointId < 0)
|
||||
if ((eventType == QEvent::TouchBegin && m_fakeMouseSourcePointId < 0)
|
||||
|| (touchPoints.count() == 1 && m_fakeMouseSourcePointId != touchPoints.first().id()))
|
||||
m_fakeMouseSourcePointId = touchPoints.first().id();
|
||||
for (const auto &touchPoint : touchPoints) {
|
||||
if (touchPoint.id() == m_fakeMouseSourcePointId) {
|
||||
|
|
|
@ -593,6 +593,10 @@ void QXcbConnection::xi2HandleEvent(xcb_ge_event_t *event)
|
|||
fixed1616ToReal(xiDeviceEvent->root_x), fixed1616ToReal(xiDeviceEvent->root_y),xiDeviceEvent->event);
|
||||
if (QXcbWindow *platformWindow = platformWindowFromId(xiDeviceEvent->event))
|
||||
xi2ProcessTouch(xiDeviceEvent, platformWindow);
|
||||
else { // When the window cannot be matched, delete it from touchPoints
|
||||
if (TouchDeviceData *dev = touchDeviceForId(xiDeviceEvent->sourceid))
|
||||
dev->touchPoints.remove((xiDeviceEvent->detail % INT_MAX));
|
||||
}
|
||||
break;
|
||||
}
|
||||
} else if (xiEnterEvent && !xi2MouseEventsDisabled() && eventListener) {
|
||||
|
|
Loading…
Reference in New Issue