summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorVolker Hilsheimer <volker.hilsheimer@qt.io>2021-09-15 10:12:16 +0200
committerVolker Hilsheimer <volker.hilsheimer@qt.io>2021-09-15 17:49:35 +0200
commit1e5249bfa49c98116ad7743a89c77b594cfd38fa (patch)
tree17efc1593674f5f40e50567c2565cac8d7e39014
parenta6279b74e222451510dda19e2c43d22202c4fd67 (diff)
macOS: remove mouse and key grabbing logic from Cocoa plugin
For QGuiApplication with QWindow, no other QPA plugins do so, and for QApplication with QWidgets, QApplication implements popup functionality consistently. Task-number: QTBUG-96450 Change-Id: I47489296e0e470d8948ca7858d0a2608c58b2975 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
-rw-r--r--src/plugins/platforms/cocoa/qnsview_keys.mm6
-rw-r--r--src/plugins/platforms/cocoa/qnsview_mouse.mm9
2 files changed, 0 insertions, 15 deletions
diff --git a/src/plugins/platforms/cocoa/qnsview_keys.mm b/src/plugins/platforms/cocoa/qnsview_keys.mm
index c8c6fb320a..5e99d0a9c3 100644
--- a/src/plugins/platforms/cocoa/qnsview_keys.mm
+++ b/src/plugins/platforms/cocoa/qnsview_keys.mm
@@ -48,12 +48,6 @@
// FIXME: Why is this the top level window and not m_platformWindow?
QWindow *window = [self topLevelWindow];
- if (QCocoaWindow *popup = QCocoaIntegration::instance()->activePopupWindow()) {
- // Popups implicitly grab key events; forward to the active popup if there is one.
- // This allows popups to e.g. intercept shortcuts and close the popup in response.
- if (!popup->window()->flags().testFlag(Qt::ToolTip))
- window = popup->window();
- }
// We will send a key event unless the input method handles it
QBoolBlocker sendKeyEventGuard(m_sendKeyEvent, true);
diff --git a/src/plugins/platforms/cocoa/qnsview_mouse.mm b/src/plugins/platforms/cocoa/qnsview_mouse.mm
index 4dc9ce0ad7..d6492f858a 100644
--- a/src/plugins/platforms/cocoa/qnsview_mouse.mm
+++ b/src/plugins/platforms/cocoa/qnsview_mouse.mm
@@ -146,15 +146,6 @@ static const QPointingDevice *pointingDeviceFor(qint64 deviceID)
if (!targetView.platformWindow)
return;
- // Popups implicitly grap mouse events; forward to the active popup if there is one
- if (QCocoaWindow *popup = QCocoaIntegration::instance()->activePopupWindow()) {
- // Tooltips must be transparent for mouse events
- // The bug reference is QTBUG-46379
- if (!popup->window()->flags().testFlag(Qt::ToolTip)) {
- if (QNSView *popupView = qnsview_cast(popup->view()))
- targetView = popupView;
- }
- }
[targetView convertFromScreen:[self screenMousePoint:theEvent] toWindowPoint:&qtWindowPoint andScreenPoint:&qtScreenPoint];
ulong timestamp = [theEvent timestamp] * 1000;