From 3c5bfa5ffa17846d1b59508155e67ab67749eb81 Mon Sep 17 00:00:00 2001
From: Ray Donnelly <mingw.android@gmail.com>
Date: Mon, 27 Aug 2018 14:48:57 +0100
Subject: [PATCH 18/18] Revert "macOS: ensure mouse events from the global
 monitor has the correct button set" (macOS 10.12+)

This reverts commit da32360ffc3c7b677355c37ae54c89637c18047f.

May break apps that use pop-up windows.
---
 qtbase/src/plugins/platforms/cocoa/qcocoahelpers.mm | 10 ----------
 qtbase/src/plugins/platforms/cocoa/qcocoawindow.mm  |  6 +++---
 2 files changed, 3 insertions(+), 13 deletions(-)

diff --git a/qtbase/src/plugins/platforms/cocoa/qcocoahelpers.mm b/qtbase/src/plugins/platforms/cocoa/qcocoahelpers.mm
index e5954f277c..b729c7f4c0 100644
--- a/qtbase/src/plugins/platforms/cocoa/qcocoahelpers.mm
+++ b/qtbase/src/plugins/platforms/cocoa/qcocoahelpers.mm
@@ -265,16 +265,6 @@ QRectF qt_mac_flip(const QRectF &rect, const QRectF &reference)
 
 // -------------------------------------------------------------------------
 
-/*!
-  \fn Qt::MouseButton cocoaButton2QtButton(NSInteger buttonNum)
-
-  Returns the Qt::Button that corresponds to an NSEvent.buttonNumber.
-
-  \note AppKit will use buttonNumber 0 to indicate both "left button"
-  and "no button". Only NSEvents that describes mouse press/release
-  events (e.g NSEventTypeOtherMouseDown) will contain a valid
-  button number.
-*/
 Qt::MouseButton cocoaButton2QtButton(NSInteger buttonNum)
 {
     if (buttonNum >= 0 && buttonNum <= 31)
diff --git a/qtbase/src/plugins/platforms/cocoa/qcocoawindow.mm b/qtbase/src/plugins/platforms/cocoa/qcocoawindow.mm
index 9b10c8b053..5fc9853d81 100644
--- a/qtbase/src/plugins/platforms/cocoa/qcocoawindow.mm
+++ b/qtbasw/src/plugins/platforms/cocoa/qcocoawindow.mm
@@ -404,10 +404,10 @@ void QCocoaWindow::setVisible(bool visible)
                         removeMonitor();
                         monitor = [NSEvent addGlobalMonitorForEventsMatchingMask:NSLeftMouseDownMask|NSRightMouseDownMask|NSOtherMouseDownMask|NSMouseMovedMask handler:^(NSEvent *e) {
                             QPointF localPoint = QCocoaScreen::mapFromNative([NSEvent mouseLocation]);
-                            const auto button = e.type == NSEventTypeMouseMoved ? Qt::NoButton : cocoaButton2QtButton([e buttonNumber]);
-                            const auto eventType = e.type == NSEventTypeMouseMoved ? QEvent::MouseMove : QEvent::MouseButtonPress;
+                            const auto eventType = e.type == NSMouseMoved ? QEvent::MouseMove : QEvent::MouseButtonPress;
                             QWindowSystemInterface::handleMouseEvent(window(), window()->mapFromGlobal(localPoint.toPoint()), localPoint,
-                                                                     Qt::MouseButtons(uint(NSEvent.pressedMouseButtons & 0xFFFF)), button, eventType);
+                                                                     Qt::MouseButtons(uint(NSEvent.pressedMouseButtons & 0xFFFF)),
+                                                                     cocoaButton2QtButton(e.buttonNumber), eventType);
                         }];
                     }
                 }
-- 
2.17.0

