From fdca6388cf31827202fae75cae067c695bd09339 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Thu, 13 Apr 2023 23:44:17 +0100 Subject: gentoo auto-resync : 13:04:2023 - 23:44:17 --- ...ix-mouse-stuck-in-pressed-state-after-DnD.patch | 37 ++++++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 dev-qt/qtwayland/files/qtwayland-5.15.9-fix-mouse-stuck-in-pressed-state-after-DnD.patch (limited to 'dev-qt/qtwayland/files') diff --git a/dev-qt/qtwayland/files/qtwayland-5.15.9-fix-mouse-stuck-in-pressed-state-after-DnD.patch b/dev-qt/qtwayland/files/qtwayland-5.15.9-fix-mouse-stuck-in-pressed-state-after-DnD.patch new file mode 100644 index 000000000000..abeb7f7a1e5d --- /dev/null +++ b/dev-qt/qtwayland/files/qtwayland-5.15.9-fix-mouse-stuck-in-pressed-state-after-DnD.patch @@ -0,0 +1,37 @@ +From f90f19ec0155b82981046509160849f9a3aedd9b Mon Sep 17 00:00:00 2001 +From: Ilya Fedin +Date: Sun, 19 Mar 2023 10:20:11 +0400 +Subject: [PATCH] Client: Fix the mouse being stuck in pressed state after DnD + +I can still reproduce the problem using QtWidgets applications +on KDE Plasma 5.27. Both Windows and macOS QPA have a similar quirk +and they both send a MouseButtonRelease event rather than a MouseMove +event. + +Amends f7a386eeaec8e6314c1be7de5e14e9fe3847f9ba + +Task-number: QTBUG-97037 +Pick-to: 6.5 6.2 5.15 +Change-Id: I864a1cb68b3660d858623f943b3958f7cafbf955 +Reviewed-by: David Edmundson +(cherry picked from commit e3c74961b1c7415fd94678802ad7f8173d0be4c1) +--- + src/client/qwaylandinputdevice.cpp | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/client/qwaylandinputdevice.cpp b/src/client/qwaylandinputdevice.cpp +index 9a0fe49d..bc05583a 100644 +--- a/src/client/qwaylandinputdevice.cpp ++++ b/src/client/qwaylandinputdevice.cpp +@@ -845,7 +845,7 @@ void QWaylandInputDevice::Pointer::releaseButtons() + mButtons = Qt::NoButton; + + if (auto *window = focusWindow()) { +- MotionEvent e(focusWindow(), mParent->mTime, mSurfacePos, mGlobalPos, mButtons, mParent->modifiers()); ++ ReleaseEvent e(focusWindow(), mParent->mTime, mSurfacePos, mGlobalPos, mButtons, Qt::NoButton, mParent->modifiers()); + window->handleMouse(mParent, e); + } + } +-- +2.40.0 + -- cgit v1.2.3