diff options
Diffstat (limited to 'src/plugins/platforms/cocoa/qnswindowdelegate.mm')
-rw-r--r-- | src/plugins/platforms/cocoa/qnswindowdelegate.mm | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/src/plugins/platforms/cocoa/qnswindowdelegate.mm b/src/plugins/platforms/cocoa/qnswindowdelegate.mm index 320a7890bf..7f988ac963 100644 --- a/src/plugins/platforms/cocoa/qnswindowdelegate.mm +++ b/src/plugins/platforms/cocoa/qnswindowdelegate.mm @@ -38,6 +38,7 @@ ****************************************************************************/ #include "qnswindowdelegate.h" +#include "qcocoahelpers.h" #include <QDebug> #include <qpa/qwindowsysteminterface.h> @@ -60,7 +61,7 @@ if (m_cocoaWindow->m_windowUnderMouse) { QPointF windowPoint; QPointF screenPoint; - [m_cocoaWindow->m_qtView convertFromScreen:[NSEvent mouseLocation] toWindowPoint:&windowPoint andScreenPoint:&screenPoint]; + [qnsview_cast(m_cocoaWindow->view()) convertFromScreen:[NSEvent mouseLocation] toWindowPoint:&windowPoint andScreenPoint:&screenPoint]; QWindowSystemInterface::handleEnterEvent(m_cocoaWindow->m_enterLeaveTargetWindow, windowPoint, screenPoint); } } @@ -110,11 +111,18 @@ - (BOOL)windowShouldZoom:(NSWindow *)window toFrame:(NSRect)newFrame { Q_UNUSED(newFrame); - if (m_cocoaWindow && m_cocoaWindow->m_qtView) - [m_cocoaWindow->m_qtView notifyWindowWillZoom:![window isZoomed]]; + if (m_cocoaWindow && m_cocoaWindow->window()->type() != Qt::ForeignWindow) + [qnsview_cast(m_cocoaWindow->view()) notifyWindowWillZoom:![window isZoomed]]; return YES; } +- (void)windowWillClose:(NSNotification *)notification +{ + Q_UNUSED(notification); + if (m_cocoaWindow) + m_cocoaWindow->windowWillClose(); +} + - (BOOL)window:(NSWindow *)window shouldPopUpDocumentPathMenu:(NSMenu *)menu { Q_UNUSED(window); |