From f7550a4bc4d5584a797d97b970a24e778a340cce Mon Sep 17 00:00:00 2001 From: Cathy Park Date: Mon, 2 Aug 2021 17:53:59 +0900 Subject: [PATCH] Fix button type to update coordinates when dragging A move position (x,y) can be delivered to the MouseArea only if button is Qt::NoButton during mouse move (dragging). Otherwise mouse move does not cause positionChanged in MouseArea. Task-number: QTBUG-95453 Change-Id: I298943dc4f6f30714e940f4029c62dd52c176b93 Reviewed-by: Jaeyoon Jung Reviewed-by: Laszlo Agocs (cherry picked from commit 3727683bd5f57666926603b84bccdf24d3839c98) Reviewed-by: Qt Cherry-pick Bot --- src/platformsupport/input/evdevmouse/qevdevmousehandler.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/platformsupport/input/evdevmouse/qevdevmousehandler.cpp b/src/platformsupport/input/evdevmouse/qevdevmousehandler.cpp index 5d6f20bd1ad..2012022656c 100644 --- a/src/platformsupport/input/evdevmouse/qevdevmousehandler.cpp +++ b/src/platformsupport/input/evdevmouse/qevdevmousehandler.cpp @@ -204,7 +204,10 @@ void QEvdevMouseHandler::sendMouseEvent() m_prevInvalid = false; } - emit handleMouseEvent(x, y, m_abs, m_buttons, m_button, m_eventType); + if (m_eventType == QEvent::MouseMove) + emit handleMouseEvent(x, y, m_abs, m_buttons, Qt::NoButton, m_eventType); + else + emit handleMouseEvent(x, y, m_abs, m_buttons, m_button, m_eventType); m_prevx = m_x; m_prevy = m_y;