summaryrefslogtreecommitdiffstats
path: root/src/plugins/platforms/cocoa
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/platforms/cocoa')
-rw-r--r--src/plugins/platforms/cocoa/qcocoawindow.mm5
-rw-r--r--src/plugins/platforms/cocoa/qnsview.mm9
2 files changed, 6 insertions, 8 deletions
diff --git a/src/plugins/platforms/cocoa/qcocoawindow.mm b/src/plugins/platforms/cocoa/qcocoawindow.mm
index a3797682a3..c239aedb05 100644
--- a/src/plugins/platforms/cocoa/qcocoawindow.mm
+++ b/src/plugins/platforms/cocoa/qcocoawindow.mm
@@ -911,7 +911,8 @@ void QCocoaWindow::clearNSWindow(NSWindow *window)
[window setContentView:nil];
[window setDelegate:nil];
[window clearPlatformWindow];
- [[NSNotificationCenter defaultCenter] removeObserver:m_contentView];
+ [[NSNotificationCenter defaultCenter] removeObserver:m_contentView
+ name:nil object:window];
}
// Returns the current global screen geometry for the nswindow associated with this window.
@@ -1023,7 +1024,7 @@ qreal QCocoaWindow::devicePixelRatio() const
void QCocoaWindow::exposeWindow()
{
- if (!m_isExposed) {
+ if (!m_isExposed && ![[m_contentView superview] isHidden]) {
m_isExposed = true;
QWindowSystemInterface::handleExposeEvent(window(), QRegion(geometry()));
}
diff --git a/src/plugins/platforms/cocoa/qnsview.mm b/src/plugins/platforms/cocoa/qnsview.mm
index c6dce8b6f6..c2ffe96f8c 100644
--- a/src/plugins/platforms/cocoa/qnsview.mm
+++ b/src/plugins/platforms/cocoa/qnsview.mm
@@ -107,12 +107,9 @@ static QTouchDevice *touchDevice = 0;
m_maskImage = 0;
m_maskData = 0;
m_window = 0;
- if (m_subscribesForGlobalFrameNotifications) {
- m_subscribesForGlobalFrameNotifications = false;
- [[NSNotificationCenter defaultCenter] removeObserver:self
- name:NSViewGlobalFrameDidChangeNotification
- object:self];
-}
+ m_subscribesForGlobalFrameNotifications = false;
+ [[NSNotificationCenter defaultCenter] removeObserver:self];
+
delete currentCustomDragTypes;
[super dealloc];