summaryrefslogtreecommitdiffstats
path: root/src/plugins
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins')
-rw-r--r--src/plugins/platforms/cocoa/qcocoawindow.h1
-rw-r--r--src/plugins/platforms/cocoa/qcocoawindow.mm8
-rw-r--r--src/plugins/platforms/cocoa/qnswindowdelegate.mm8
3 files changed, 17 insertions, 0 deletions
diff --git a/src/plugins/platforms/cocoa/qcocoawindow.h b/src/plugins/platforms/cocoa/qcocoawindow.h
index 34ec142d90..b7a6a14d4a 100644
--- a/src/plugins/platforms/cocoa/qcocoawindow.h
+++ b/src/plugins/platforms/cocoa/qcocoawindow.h
@@ -183,6 +183,7 @@ public:
void windowWillMove();
void windowDidMove();
void windowDidResize();
+ void windowDidEndLiveResize();
bool windowShouldClose();
bool windowIsPopupType(Qt::WindowType type = Qt::Widget) const;
diff --git a/src/plugins/platforms/cocoa/qcocoawindow.mm b/src/plugins/platforms/cocoa/qcocoawindow.mm
index f25aea67fa..b27e1b03db 100644
--- a/src/plugins/platforms/cocoa/qcocoawindow.mm
+++ b/src/plugins/platforms/cocoa/qcocoawindow.mm
@@ -1165,6 +1165,14 @@ void QCocoaWindow::windowDidResize()
[m_qtView updateGeometry];
}
+void QCocoaWindow::windowDidEndLiveResize()
+{
+ if (m_synchedWindowState == Qt::WindowMaximized && ![m_nsWindow isZoomed]) {
+ m_effectivelyMaximized = false;
+ [m_qtView notifyWindowStateChanged:Qt::WindowNoState];
+ }
+}
+
bool QCocoaWindow::windowShouldClose()
{
bool accepted = false;
diff --git a/src/plugins/platforms/cocoa/qnswindowdelegate.mm b/src/plugins/platforms/cocoa/qnswindowdelegate.mm
index c9b3d69381..d9509098c6 100644
--- a/src/plugins/platforms/cocoa/qnswindowdelegate.mm
+++ b/src/plugins/platforms/cocoa/qnswindowdelegate.mm
@@ -75,6 +75,14 @@
}
}
+- (void)windowDidEndLiveResize:(NSNotification *)notification
+{
+ Q_UNUSED(notification);
+ if (m_cocoaWindow) {
+ m_cocoaWindow->windowDidEndLiveResize();
+ }
+}
+
- (void)windowWillMove:(NSNotification *)notification
{
Q_UNUSED(notification);