summaryrefslogtreecommitdiffstats
path: root/src/plugins
diff options
context:
space:
mode:
authorAndre de la Rocha <andre.rocha@qt.io>2019-01-28 14:01:48 +0100
committerAndre de la Rocha <andre.rocha@qt.io>2019-01-28 16:42:30 +0000
commit850858cce6191593aaab3176932bc04a6f97f202 (patch)
treeb833c8fcee94a32b88c3b748129f13b0a85ef005 /src/plugins
parent3a9240428cca2478166f8f005cab663e7846285b (diff)
Windows QPA: handle pointer messages received during a drag and drop
It seems the pointer message handler was skipping the handling of touch and pen messages during a drag and drop operation, preventing the generation of events that quick was expecting and triggering a crash inside MouseArea. Fixes: QTBUG-73120 Change-Id: I2921e38dd7e44846607e6c614d7393cfa5664c69 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
Diffstat (limited to 'src/plugins')
-rw-r--r--src/plugins/platforms/windows/qwindowspointerhandler.cpp15
1 files changed, 0 insertions, 15 deletions
diff --git a/src/plugins/platforms/windows/qwindowspointerhandler.cpp b/src/plugins/platforms/windows/qwindowspointerhandler.cpp
index e428a8cf63..203d803a1b 100644
--- a/src/plugins/platforms/windows/qwindowspointerhandler.cpp
+++ b/src/plugins/platforms/windows/qwindowspointerhandler.cpp
@@ -174,15 +174,6 @@ static void flushTabletEvents()
}
}
-static bool draggingActive()
-{
-#if QT_CONFIG(draganddrop)
- return QWindowsDrag::isDragging();
-#else
- return false;
-#endif
-}
-
bool QWindowsPointerHandler::translatePointerEvent(QWindow *window, HWND hwnd, QtWindows::WindowsEventType et, MSG msg, LRESULT *result)
{
*result = 0;
@@ -636,9 +627,6 @@ bool QWindowsPointerHandler::translateTouchEvent(QWindow *window, HWND hwnd,
if (et & QtWindows::NonClientEventFlag)
return false; // Let DefWindowProc() handle Non Client messages.
- if (draggingActive())
- return false; // Let DoDragDrop() loop handle it.
-
if (count < 1)
return false;
@@ -739,9 +727,6 @@ bool QWindowsPointerHandler::translatePenEvent(QWindow *window, HWND hwnd, QtWin
if (et & QtWindows::NonClientEventFlag)
return false; // Let DefWindowProc() handle Non Client messages.
- if (draggingActive())
- return false; // Let DoDragDrop() loop handle it.
-
POINTER_PEN_INFO *penInfo = static_cast<POINTER_PEN_INFO *>(vPenInfo);
RECT pRect, dRect;