summaryrefslogtreecommitdiffstats
path: root/src/plugins/platforms/cocoa/qcocoawindow.mm
diff options
context:
space:
mode:
authorSimon Hausmann <simon.hausmann@qt.io>2020-03-16 18:41:27 +0100
committerSimon Hausmann <simon.hausmann@qt.io>2020-03-16 18:41:27 +0100
commitff922e7b87de147797fbd759167878aec7625f0c (patch)
treea326819f23e2421723f144522f9362ba608d6bb1 /src/plugins/platforms/cocoa/qcocoawindow.mm
parente464e1eb8eb63c631fb0916c3ea4540a88d8aad3 (diff)
parent75f52bd0ddc4afbd181c14b310d256e3507052d6 (diff)
Merge remote-tracking branch 'origin/5.15' into dev
Conflicts: src/corelib/kernel/qmetatype.cpp Change-Id: I88eb0d3e9c9a38abf7241a51e370c655ae74e38a
Diffstat (limited to 'src/plugins/platforms/cocoa/qcocoawindow.mm')
-rw-r--r--src/plugins/platforms/cocoa/qcocoawindow.mm16
1 files changed, 7 insertions, 9 deletions
diff --git a/src/plugins/platforms/cocoa/qcocoawindow.mm b/src/plugins/platforms/cocoa/qcocoawindow.mm
index 61bf0d4a4e..35b0ec2d40 100644
--- a/src/plugins/platforms/cocoa/qcocoawindow.mm
+++ b/src/plugins/platforms/cocoa/qcocoawindow.mm
@@ -891,14 +891,10 @@ void QCocoaWindow::setWindowIcon(const QIcon &icon)
QMacAutoReleasePool pool;
- if (icon.isNull()) {
- NSWorkspace *workspace = [NSWorkspace sharedWorkspace];
- [iconButton setImage:[workspace iconForFile:m_view.window.representedFilename]];
- } else {
- QPixmap pixmap = icon.pixmap(QSize(22, 22));
- NSImage *image = static_cast<NSImage *>(qt_mac_create_nsimage(pixmap));
- [iconButton setImage:[image autorelease]];
- }
+ if (icon.isNull())
+ iconButton.image = [NSWorkspace.sharedWorkspace iconForFile:m_view.window.representedFilename];
+ else
+ iconButton.image = [NSImage imageFromQIcon:icon];
}
void QCocoaWindow::setAlertState(bool enabled)
@@ -1237,7 +1233,9 @@ void QCocoaWindow::windowDidOrderOffScreen()
void QCocoaWindow::windowDidChangeOcclusionState()
{
- if (m_view.window.occlusionState & NSWindowOcclusionStateVisible)
+ bool visible = m_view.window.occlusionState & NSWindowOcclusionStateVisible;
+ qCDebug(lcQpaWindow) << "QCocoaWindow::windowDidChangeOcclusionState" << window() << "is now" << (visible ? "visible" : "occluded");
+ if (visible)
[m_view setNeedsDisplay:YES];
else
handleExposeEvent(QRegion());