tslib: generate event with correct buttons and event type
Tslib doesn't give button and movements events separately, so send the first event with pressure as MouseButtonPress, subsequent events as MouseMove and event without pressure as MouseButtonRelease. Pick-to: 6.6 6.5 6.2 Fixes: QTBUG-111952 Fixes: QTBUG-113307 Change-Id: I7ed6e37936887e11affb254d2fca74c79b6a43b9 Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
This commit is contained in:
parent
5a5c96c65d
commit
f0b2c5f21c
@ -79,9 +79,12 @@ void QTsLibMouseHandler::readMouseData()
|
||||
}
|
||||
QPoint pos(x, y);
|
||||
|
||||
QWindowSystemInterface::handleMouseEvent(nullptr, pos, pos,
|
||||
pressed ? Qt::LeftButton : Qt::NoButton,
|
||||
Qt::NoButton, QEvent::None);
|
||||
Qt::MouseButton button = pressed ^ m_pressed ? Qt::LeftButton : Qt::NoButton;
|
||||
Qt::MouseButtons state = pressed ? Qt::LeftButton : Qt::NoButton;
|
||||
QEvent::Type type = pressed ? (m_pressed ? QEvent::MouseMove : QEvent::MouseButtonPress)
|
||||
: QEvent::MouseButtonRelease;
|
||||
|
||||
QWindowSystemInterface::handleMouseEvent(nullptr, pos, pos, state, button, type);
|
||||
|
||||
m_x = x;
|
||||
m_y = y;
|
||||
|
Loading…
x
Reference in New Issue
Block a user