summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorTor Arne Vestbø <tor.arne.vestbo@qt.io>2021-07-12 16:34:21 +0200
committerQt Cherry-pick Bot <cherrypick_bot@qt-project.org>2021-07-13 10:54:31 +0000
commit63a670f5d3f689ad69467798bc1b49ad60d03b64 (patch)
tree1dfdc49f6f4e5d69930ec2da878159c87cb8eb29 /src
parent1e069b5f572b5bfe5926d525a53bd2ab3f97bd1f (diff)
macOS: Map QSurfaceFormat color space to NSWindow via ICC data
Instead of special casing sRGB. Change-Id: I7ad20c4b9600210333d5e44c3a2d20ce7d39dd92 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> (cherry picked from commit 3c3f6ebdbb48c9c071ef1a34a955b36bdaed4f99) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Diffstat (limited to 'src')
-rw-r--r--src/plugins/platforms/cocoa/qcocoawindow.mm7
1 files changed, 5 insertions, 2 deletions
diff --git a/src/plugins/platforms/cocoa/qcocoawindow.mm b/src/plugins/platforms/cocoa/qcocoawindow.mm
index 0190e34b47..cd1d7e56f8 100644
--- a/src/plugins/platforms/cocoa/qcocoawindow.mm
+++ b/src/plugins/platforms/cocoa/qcocoawindow.mm
@@ -1666,8 +1666,11 @@ QCocoaNSWindow *QCocoaWindow::createNSWindow(bool shouldBePanel)
applyContentBorderThickness(nsWindow);
- if (format().colorSpace() == QColorSpace::SRgb)
- nsWindow.colorSpace = NSColorSpace.sRGBColorSpace;
+ if (QColorSpace colorSpace = format().colorSpace(); colorSpace.isValid()) {
+ NSData *iccData = colorSpace.iccProfile().toNSData();
+ nsWindow.colorSpace = [[[NSColorSpace alloc] initWithICCProfileData:iccData] autorelease];
+ qCDebug(lcQpaDrawing) << "Set" << this << "color space to" << nsWindow.colorSpace;
+ }
return nsWindow;
}