summaryrefslogtreecommitdiffstats
path: root/src/plugins/platforms/cocoa/qcocoaintegration.mm
diff options
context:
space:
mode:
authorMorten Johan Sørvig <morten.sorvig@digia.com>2014-05-21 11:36:54 +0200
committerThe Qt Project <gerrit-noreply@qt-project.org>2014-05-26 15:06:12 +0200
commit1ac0f953ba70ceda76e90918ab4ae7ebe2339969 (patch)
tree7636a65baed262adc130de677d1fa8e61751ae92 /src/plugins/platforms/cocoa/qcocoaintegration.mm
parent7ba0eb5a0daae59c495bbf250fa37a2627950e94 (diff)
Cocoa: Remove the NSWindow -> QCococaWindow hash.
Cast the NSWindow to a QNSWindow instead. Now there is no way we can fail to maintain the hash properly. Change-Id: I5fd03b6fad964a61fadb3460b7063fd43ff25c79 Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
Diffstat (limited to 'src/plugins/platforms/cocoa/qcocoaintegration.mm')
-rw-r--r--src/plugins/platforms/cocoa/qcocoaintegration.mm17
1 files changed, 5 insertions, 12 deletions
diff --git a/src/plugins/platforms/cocoa/qcocoaintegration.mm b/src/plugins/platforms/cocoa/qcocoaintegration.mm
index c4398622e8..19753ccc89 100644
--- a/src/plugins/platforms/cocoa/qcocoaintegration.mm
+++ b/src/plugins/platforms/cocoa/qcocoaintegration.mm
@@ -159,9 +159,12 @@ qreal QCocoaScreen::devicePixelRatio() const
QWindow *QCocoaScreen::topLevelAt(const QPoint &point) const
{
// Get a z-ordered list of windows. Iterate through it until
- // we find a window which contains the point.
+ // we find a (Qt) window which contains the point.
for (NSWindow *nsWindow in [NSApp orderedWindows]) {
- QCocoaWindow *cocoaWindow = QCocoaIntegration::instance()->window(nsWindow);
+ if (![nsWindow isKindOfClass:[QNSWindow class]])
+ continue;
+ QNSWindow *qnsWindow = static_cast<QNSWindow *>(nsWindow);
+ QCocoaWindow *cocoaWindow = qnsWindow.helper.platformWindow;
if (!cocoaWindow)
continue;
QWindow *window = cocoaWindow->window();
@@ -518,16 +521,6 @@ NSToolbar *QCocoaIntegration::toolbar(QWindow *window) const
return mToolbars.value(window);
}
-void QCocoaIntegration::setWindow(NSWindow* nsWindow, QCocoaWindow *window)
-{
- mWindows.insert(nsWindow, window);
-}
-
-QCocoaWindow *QCocoaIntegration::window(NSWindow *window)
-{
- return mWindows.value(window);
-}
-
void QCocoaIntegration::clearToolbars()
{
QHash<QWindow *, NSToolbar *>::const_iterator it = mToolbars.constBegin();