From 0f644f48530f4693f7c77fd41ca42085b3218e81 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Morten=20Johan=20S=C3=B8rvig?= Date: Thu, 23 Oct 2014 11:48:45 +0200 Subject: Cocoa: Prevent FrameStrutMouseEvent double-clicks A window may see drag events without corresponding press/release events when dragging happens across several native windows. Handle NSLeftMouseDraged and NRightMouseDraged to synchronize mouse button state. Task-number: QTBUG-41609 Change-Id: Ieb66eb3460fc3cfd21e64c83ec1a28fe409af595 Reviewed-by: Gabriel de Dietrich --- src/plugins/platforms/cocoa/qnsview.mm | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/plugins/platforms/cocoa/qnsview.mm b/src/plugins/platforms/cocoa/qnsview.mm index aa57fc211e..ca98f6cec3 100644 --- a/src/plugins/platforms/cocoa/qnsview.mm +++ b/src/plugins/platforms/cocoa/qnsview.mm @@ -736,6 +736,12 @@ static NSString *_q_NSWindowDidChangeOcclusionStateNotification = nil; case NSRightMouseDown: m_frameStrutButtons |= Qt::RightButton; break; + case NSLeftMouseDragged: + m_frameStrutButtons |= Qt::LeftButton; + break; + case NSRightMouseDragged: + m_frameStrutButtons |= Qt::RightButton; + break; case NSRightMouseUp: m_frameStrutButtons &= ~Qt::RightButton; break; -- cgit v1.2.3