Tag WebGL layers with sRGB colorspace
authordino@apple.com <dino@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 16 Jul 2015 01:13:10 +0000 (01:13 +0000)
committerdino@apple.com <dino@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 16 Jul 2015 01:13:10 +0000 (01:13 +0000)
https://bugs.webkit.org/show_bug.cgi?id=146986
<rdar://problem/21758704>

Fix the build on older El Capitan releases.

* platform/graphics/mac/WebGLLayer.mm:
(-[WebGLLayer initWithGraphicsContext3D:]):
* platform/spi/cocoa/QuartzCoreSPI.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@186879 268f45cc-cd09-0410-ab3c-d52691b4dbfc

Source/WebCore/ChangeLog
Source/WebCore/platform/graphics/mac/WebGLLayer.mm
Source/WebCore/platform/spi/cocoa/QuartzCoreSPI.h

index ad30448..2ce43e9 100644 (file)
         https://bugs.webkit.org/show_bug.cgi?id=146986
         <rdar://problem/21758704>
 
+        Fix the build on older El Capitan releases.
+
+        * platform/graphics/mac/WebGLLayer.mm:
+        (-[WebGLLayer initWithGraphicsContext3D:]):
+        * platform/spi/cocoa/QuartzCoreSPI.h:
+
+2015-07-15  Dean Jackson  <dino@apple.com>
+
+        Tag WebGL layers with sRGB colorspace
+        https://bugs.webkit.org/show_bug.cgi?id=146986
+        <rdar://problem/21758704>
+
         Reviewed by Simon Fraser.
 
         Label a CAOpenGLLayer as using the sRGB colorspace,
index d360f92..40a7d70 100644 (file)
@@ -54,7 +54,8 @@ using namespace WebCore;
 #if PLATFORM(MAC)
     self.contentsScale = _devicePixelRatio;
 #if __MAC_OS_X_VERSION_MIN_REQUIRED >= 101100
-    self.colorspace = sRGBColorSpaceRef();
+    if ([self respondsToSelector:@selector(setColorspace:)])
+        [self setColorspace:sRGBColorSpaceRef()];
 #endif
 #endif
     return self;
index 1a2bbc1..7d98d43 100644 (file)
@@ -97,6 +97,12 @@ extern "C" {
 - (void)setNeedsDisplayInRect:(CGRect)rect levelOfDetail:(int)levelOfDetail options:(NSDictionary *)dictionary;
 @end
 
+#if PLATFORM(MAC) && __MAC_OS_X_VERSION_MIN_REQUIRED >= 101100
+@interface CAOpenGLLayer (Details)
+@property CGColorSpaceRef colorspace;
+@end
+#endif
+
 struct CAColorMatrix {
     float m11, m12, m13, m14, m15;
     float m21, m22, m23, m24, m25;