diff options
author | Tor Arne Vestbø <tor.arne.vestbo@qt.io> | 2021-07-12 16:34:21 +0200 |
---|---|---|
committer | Tor Arne Vestbø <tor.arne.vestbo@qt.io> | 2021-07-12 20:50:16 +0200 |
commit | 3c3f6ebdbb48c9c071ef1a34a955b36bdaed4f99 (patch) | |
tree | b1d98d51b501150155e62704f204db7ded1e2214 /src/plugins | |
parent | 8ac8d812f727b2ebdcaca070801509f3d21e9c3c (diff) |
macOS: Map QSurfaceFormat color space to NSWindow via ICC data
Instead of special casing sRGB.
Pick-to: 6.2 6.1
Change-Id: I7ad20c4b9600210333d5e44c3a2d20ce7d39dd92
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
Diffstat (limited to 'src/plugins')
-rw-r--r-- | src/plugins/platforms/cocoa/qcocoawindow.mm | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/src/plugins/platforms/cocoa/qcocoawindow.mm b/src/plugins/platforms/cocoa/qcocoawindow.mm index 9362351595..ee1689c2f4 100644 --- a/src/plugins/platforms/cocoa/qcocoawindow.mm +++ b/src/plugins/platforms/cocoa/qcocoawindow.mm @@ -1668,8 +1668,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; } |