Fix: change Quartz driver colorSpace handling to address certain macOS performance issues (#7644)

This commit is contained in:
Andy 2019-09-04 21:11:30 +01:00 committed by Niels Martin Hansen
parent 0549a81c30
commit 9014633866
1 changed files with 4 additions and 2 deletions

View File

@ -113,7 +113,7 @@ static CGColorSpaceRef QZ_GetCorrectColorSpace()
if (colorSpace == NULL) {
#if (MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_5)
if (MacOSVersionIsAtLeast(10, 5, 0)) {
colorSpace = CGDisplayCopyColorSpace(CGMainDisplayID());
colorSpace = CGColorSpaceCreateWithName(kCGColorSpaceSRGB);
} else
#endif
{
@ -289,7 +289,9 @@ bool WindowQuartzSubdriver::SetVideoMode(int width, int height, int bpp)
styleMask:style
backing:NSBackingStoreBuffered
defer:NO ];
if ([ this->window respondsToSelector:@selector(setColorSpace:) ]) {
[ this->window setColorSpace:[ [ [ NSColorSpace alloc ] initWithCGColorSpace:QZ_GetCorrectColorSpace() ] autorelease ] ];
}
if (this->window == nil) {
DEBUG(driver, 0, "Could not create the Cocoa window.");
this->setup = false;