Diff
Modified: trunk/Source/WebCore/ChangeLog (225796 => 225797)
--- trunk/Source/WebCore/ChangeLog 2017-12-12 20:43:32 UTC (rev 225796)
+++ trunk/Source/WebCore/ChangeLog 2017-12-12 21:00:37 UTC (rev 225797)
@@ -1,3 +1,55 @@
+2017-12-12 Simon Fraser <simon.fra...@apple.com>
+
+ Remove ColorSpaceDeviceRGB and most users of the obsolete deviceRGB colorspace
+ https://bugs.webkit.org/show_bug.cgi?id=180689
+
+ Reviewed by Tim Horton.
+
+ Remove the ColorSpaceDeviceRGB enum and users.
+
+ ImageBuffer now uses sRGB instead of deviceRGB in the few cases that used the latter.
+
+ Switch Windows CG code to use sRGBColorSpaceRef() instead of deviceRGBColorSpaceRef().
+
+ Have linearRGBColorSpaceRef() use kCGColorSpaceLinearSRGB, which is present in iOS 9 and 10.11 and later.
+
+ * page/win/FrameCGWin.cpp:
+ (WebCore::imageFromRect):
+ * platform/graphics/Color.cpp:
+ (WebCore::operator<<):
+ * platform/graphics/ColorSpace.h:
+ * platform/graphics/ImageBuffer.cpp:
+ (WebCore::ImageBuffer::transformColorSpace):
+ * platform/graphics/cg/ColorCG.cpp:
+ (WebCore::Color::Color):
+ (WebCore::leakCGColor):
+ (WebCore::createCGColorWithDeviceRGBA): Deleted.
+ * platform/graphics/cg/GraphicsContextCG.cpp:
+ (WebCore::sRGBColorSpaceRef):
+ (WebCore::linearRGBColorSpaceRef):
+ (WebCore::extendedSRGBColorSpaceRef):
+ (WebCore::displayP3ColorSpaceRef):
+ (WebCore::deviceRGBColorSpaceRef): Deleted.
+ * platform/graphics/cg/GraphicsContextCG.h:
+ (WebCore::cachedCGColorSpace):
+ * platform/graphics/cocoa/GraphicsContextCocoa.mm:
+ * platform/graphics/win/GraphicsContextCGWin.cpp:
+ (WebCore::CGContextWithHDC):
+ (WebCore::GraphicsContext::releaseWindowsContext):
+ (WebCore::GraphicsContext::drawWindowsBitmap):
+ * platform/graphics/win/ImageCGWin.cpp:
+ (WebCore::BitmapImage::create):
+ (WebCore::BitmapImage::getHBITMAPOfSize):
+ * platform/mediastream/mac/MockRealtimeVideoSourceMac.mm:
+ (WebCore::MockRealtimeVideoSourceMac::pixelBufferFromCGImage const):
+ * platform/win/DragImageCGWin.cpp:
+ (WebCore::allocImage):
+ (WebCore::createCgContextFromBitmap):
+ * rendering/svg/RenderSVGResourceFilter.cpp:
+ (WebCore::RenderSVGResourceFilter::postApplyResource):
+ * rendering/svg/RenderSVGResourceMasker.cpp:
+ (WebCore::RenderSVGResourceMasker::drawContentIntoMaskImage):
+
2017-12-12 Youenn Fablet <you...@apple.com>
Navigation requests should use navigate fetch mode
Modified: trunk/Source/WebCore/page/win/FrameCGWin.cpp (225796 => 225797)
--- trunk/Source/WebCore/page/win/FrameCGWin.cpp 2017-12-12 20:43:32 UTC (rev 225796)
+++ trunk/Source/WebCore/page/win/FrameCGWin.cpp 2017-12-12 21:00:37 UTC (rev 225797)
@@ -69,7 +69,7 @@
HGDIOBJ hbmpOld = SelectObject(hdc.get(), hbmp.get());
CGContextRef context = CGBitmapContextCreate(static_cast<void*>(bits), w, h,
- 8, w * sizeof(RGBQUAD), deviceRGBColorSpaceRef(), kCGBitmapByteOrder32Little | kCGImageAlphaPremultipliedFirst);
+ 8, w * sizeof(RGBQUAD), sRGBColorSpaceRef(), kCGBitmapByteOrder32Little | kCGImageAlphaPremultipliedFirst);
CGContextSaveGState(context);
GraphicsContext gc(context);
Modified: trunk/Source/WebCore/platform/graphics/Color.cpp (225796 => 225797)
--- trunk/Source/WebCore/platform/graphics/Color.cpp 2017-12-12 20:43:32 UTC (rev 225796)
+++ trunk/Source/WebCore/platform/graphics/Color.cpp 2017-12-12 21:00:37 UTC (rev 225797)
@@ -668,9 +668,6 @@
TextStream& operator<<(TextStream& ts, ColorSpace colorSpace)
{
switch (colorSpace) {
- case ColorSpaceDeviceRGB:
- ts << "DeviceRGB";
- break;
case ColorSpaceSRGB:
ts << "sRGB";
break;
Modified: trunk/Source/WebCore/platform/graphics/ColorSpace.h (225796 => 225797)
--- trunk/Source/WebCore/platform/graphics/ColorSpace.h 2017-12-12 20:43:32 UTC (rev 225796)
+++ trunk/Source/WebCore/platform/graphics/ColorSpace.h 2017-12-12 21:00:37 UTC (rev 225797)
@@ -23,13 +23,11 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
-#ifndef ColorSpace_h
-#define ColorSpace_h
+#pragma once
namespace WebCore {
enum ColorSpace {
- ColorSpaceDeviceRGB,
ColorSpaceSRGB,
ColorSpaceLinearRGB,
ColorSpaceDisplayP3
@@ -37,4 +35,3 @@
} // namespace WebCore
-#endif // ColorSpace_h
Modified: trunk/Source/WebCore/platform/graphics/ImageBuffer.cpp (225796 => 225797)
--- trunk/Source/WebCore/platform/graphics/ImageBuffer.cpp 2017-12-12 20:43:32 UTC (rev 225796)
+++ trunk/Source/WebCore/platform/graphics/ImageBuffer.cpp 2017-12-12 21:00:37 UTC (rev 225797)
@@ -126,8 +126,8 @@
return;
// only sRGB <-> linearRGB are supported at the moment
- if ((srcColorSpace != ColorSpaceLinearRGB && srcColorSpace != ColorSpaceDeviceRGB)
- || (dstColorSpace != ColorSpaceLinearRGB && dstColorSpace != ColorSpaceDeviceRGB))
+ if ((srcColorSpace != ColorSpaceLinearRGB && srcColorSpace != ColorSpaceSRGB)
+ || (dstColorSpace != ColorSpaceLinearRGB && dstColorSpace != ColorSpaceSRGB))
return;
if (dstColorSpace == ColorSpaceLinearRGB) {
@@ -143,7 +143,7 @@
return array;
}();
platformTransformColorSpace(linearRgbLUT);
- } else if (dstColorSpace == ColorSpaceDeviceRGB) {
+ } else if (dstColorSpace == ColorSpaceSRGB) {
static const std::array<uint8_t, 256> deviceRgbLUT= [] {
std::array<uint8_t, 256> array;
for (unsigned i = 0; i < 256; i++) {
Modified: trunk/Source/WebCore/platform/graphics/cg/ColorCG.cpp (225796 => 225797)
--- trunk/Source/WebCore/platform/graphics/cg/ColorCG.cpp 2017-12-12 20:43:32 UTC (rev 225796)
+++ trunk/Source/WebCore/platform/graphics/cg/ColorCG.cpp 2017-12-12 21:00:37 UTC (rev 225797)
@@ -55,21 +55,6 @@
namespace WebCore {
-#if PLATFORM(IOS)
-static CGColorRef createCGColorWithDeviceRGBA(CGColorRef sourceColor)
-{
- if (!sourceColor || CFEqual(CGColorGetColorSpace(sourceColor), deviceRGBColorSpaceRef()))
- return CGColorRetain(sourceColor);
-
- RetainPtr<CGColorTransformRef> colorTransform = adoptCF(CGColorTransformCreate(deviceRGBColorSpaceRef(), nullptr));
- if (!colorTransform)
- return CGColorRetain(sourceColor);
-
- // CGColorTransformConvertColor() returns a +1 retained object.
- return CGColorTransformConvertColor(colorTransform.get(), sourceColor, kCGRenderingIntentDefault);
-}
-#endif // PLATFORM(IOS)
-
Color::Color(CGColorRef color)
{
if (!color) {
@@ -77,19 +62,9 @@
return;
}
-#if !PLATFORM(IOS)
size_t numComponents = CGColorGetNumberOfComponents(color);
const CGFloat* components = CGColorGetComponents(color);
-#else
- // FIXME: can we remove this?
- RetainPtr<CGColorRef> correctedColor = adoptCF(createCGColorWithDeviceRGBA(color));
- if (!correctedColor)
- correctedColor = color;
- size_t numComponents = CGColorGetNumberOfComponents(correctedColor.get());
- const CGFloat* components = CGColorGetComponents(correctedColor.get());
-#endif // !PLATFORM(IOS)
-
float r = 0;
float g = 0;
float b = 0;
@@ -128,7 +103,6 @@
case ColorSpaceDisplayP3:
return CGColorCreate(displayP3ColorSpaceRef(), components);
case ColorSpaceLinearRGB:
- case ColorSpaceDeviceRGB:
// FIXME: Do we ever create CGColorRefs in these spaces? It may only be ImageBuffers.
return CGColorCreate(sRGBColorSpaceRef(), components);
}
Modified: trunk/Source/WebCore/platform/graphics/cg/GraphicsContextCG.cpp (225796 => 225797)
--- trunk/Source/WebCore/platform/graphics/cg/GraphicsContextCG.cpp 2017-12-12 20:43:32 UTC (rev 225796)
+++ trunk/Source/WebCore/platform/graphics/cg/GraphicsContextCG.cpp 2017-12-12 21:00:37 UTC (rev 225797)
@@ -72,13 +72,6 @@
CGContextSetStrokeColorWithColor(context, cachedCGColor(color));
}
-// FIXME: This should be removed soon.
-CGColorSpaceRef deviceRGBColorSpaceRef()
-{
- static CGColorSpaceRef deviceSpace = CGColorSpaceCreateDeviceRGB();
- return deviceSpace;
-}
-
CGColorSpaceRef sRGBColorSpaceRef()
{
static CGColorSpaceRef sRGBSpace = CGColorSpaceCreateWithName(kCGColorSpaceSRGB);
@@ -87,11 +80,26 @@
// causing a crash under those conditions. Since the default color space in Windows
// is sRGB, this all works out nicely.
if (!sRGBSpace)
- sRGBSpace = deviceRGBColorSpaceRef();
+ sRGBSpace = CGColorSpaceCreateDeviceRGB();
#endif // PLATFORM(WIN)
return sRGBSpace;
}
-
+
+#if PLATFORM(WIN) || PLATFORM(IOS) || (PLATFORM(MAC) && __MAC_OS_X_VERSION_MIN_REQUIRED >= 101200)
+// See GraphicsContextCocoa for the pre-10.12 implementation.
+CGColorSpaceRef linearRGBColorSpaceRef()
+{
+#if PLATFORM(WIN)
+ // FIXME: Windows should be able to use linear sRGB, this is tracked by http://webkit.org/b/80000.
+ return CGColorSpaceCreateDeviceRGB();
+#else
+ static CGColorSpaceRef linearRGBSpace;
+ linearRGBSpace = CGColorSpaceCreateWithName(kCGColorSpaceLinearSRGB);
+ return linearRGBSpace;
+#endif
+}
+#endif
+
CGColorSpaceRef extendedSRGBColorSpaceRef()
{
static CGColorSpaceRef extendedSRGBSpace;
@@ -100,28 +108,21 @@
#endif
// If there is no support for exteneded sRGB, fall back to sRGB.
if (!extendedSRGBSpace)
- extendedSRGBSpace = sRGBColorSpaceRef();
+ extendedSRGBSpace = CGColorSpaceCreateDeviceRGB();
return extendedSRGBSpace;
}
CGColorSpaceRef displayP3ColorSpaceRef()
{
+ static CGColorSpaceRef displayP3Space;
#if PLATFORM(IOS) || (PLATFORM(MAC) && __MAC_OS_X_VERSION_MIN_REQUIRED > 101100)
- static CGColorSpaceRef displayP3Space = CGColorSpaceCreateWithName(kCGColorSpaceDisplayP3);
+ displayP3Space = CGColorSpaceCreateWithName(kCGColorSpaceDisplayP3);
#else
- static CGColorSpaceRef displayP3Space = sRGBColorSpaceRef();
+ displayP3Space = sRGBColorSpaceRef();
#endif
return displayP3Space;
}
-#if PLATFORM(WIN)
-CGColorSpaceRef linearRGBColorSpaceRef()
-{
- // FIXME: Windows should be able to use linear sRGB, this is tracked by http://webkit.org/b/80000.
- return deviceRGBColorSpaceRef();
-}
-#endif
-
static InterpolationQuality convertInterpolationQuality(CGInterpolationQuality quality)
{
switch (quality) {
Modified: trunk/Source/WebCore/platform/graphics/cg/GraphicsContextCG.h (225796 => 225797)
--- trunk/Source/WebCore/platform/graphics/cg/GraphicsContextCG.h 2017-12-12 20:43:32 UTC (rev 225796)
+++ trunk/Source/WebCore/platform/graphics/cg/GraphicsContextCG.h 2017-12-12 21:00:37 UTC (rev 225797)
@@ -31,11 +31,10 @@
namespace WebCore {
-CGColorSpaceRef deviceRGBColorSpaceRef();
WEBCORE_EXPORT CGColorSpaceRef sRGBColorSpaceRef();
WEBCORE_EXPORT CGColorSpaceRef extendedSRGBColorSpaceRef();
WEBCORE_EXPORT CGColorSpaceRef displayP3ColorSpaceRef();
-CGColorSpaceRef linearRGBColorSpaceRef();
+WEBCORE_EXPORT CGColorSpaceRef linearRGBColorSpaceRef();
inline CGAffineTransform getUserToBaseCTM(CGContextRef context)
{
@@ -45,8 +44,6 @@
static inline CGColorSpaceRef cachedCGColorSpace(ColorSpace colorSpace)
{
switch (colorSpace) {
- case ColorSpaceDeviceRGB:
- return deviceRGBColorSpaceRef();
case ColorSpaceSRGB:
return sRGBColorSpaceRef();
case ColorSpaceLinearRGB:
@@ -55,7 +52,7 @@
return displayP3ColorSpaceRef();
}
ASSERT_NOT_REACHED();
- return deviceRGBColorSpaceRef();
+ return sRGBColorSpaceRef();
}
class CGContextStateSaver {
Modified: trunk/Source/WebCore/platform/graphics/cocoa/GraphicsContextCocoa.mm (225796 => 225797)
--- trunk/Source/WebCore/platform/graphics/cocoa/GraphicsContextCocoa.mm 2017-12-12 20:43:32 UTC (rev 225796)
+++ trunk/Source/WebCore/platform/graphics/cocoa/GraphicsContextCocoa.mm 2017-12-12 21:00:37 UTC (rev 225797)
@@ -365,6 +365,7 @@
#endif
}
+#if PLATFORM(MAC) && __MAC_OS_X_VERSION_MIN_REQUIRED < 101200
CGColorSpaceRef linearRGBColorSpaceRef()
{
static CGColorSpaceRef linearSRGBSpace = nullptr;
@@ -387,5 +388,6 @@
return linearSRGBSpace;
}
+#endif
-}
+} // namespace WebCore
Modified: trunk/Source/WebCore/platform/graphics/win/GraphicsContextCGWin.cpp (225796 => 225797)
--- trunk/Source/WebCore/platform/graphics/win/GraphicsContextCGWin.cpp 2017-12-12 20:43:32 UTC (rev 225796)
+++ trunk/Source/WebCore/platform/graphics/win/GraphicsContextCGWin.cpp 2017-12-12 21:00:37 UTC (rev 225797)
@@ -58,7 +58,7 @@
CGBitmapInfo bitmapInfo = kCGBitmapByteOrder32Little | (hasAlpha ? kCGImageAlphaPremultipliedFirst : kCGImageAlphaNoneSkipFirst);
CGContextRef context = CGBitmapContextCreate(pixelData.buffer(), pixelData.size().width(), pixelData.size().height(), 8,
- pixelData.bytesPerRow(), deviceRGBColorSpaceRef(), bitmapInfo);
+ pixelData.bytesPerRow(), sRGBColorSpaceRef(), bitmapInfo);
// Flip coords
CGContextTranslateCTM(context, 0, pixelData.size().height());
@@ -110,7 +110,7 @@
ASSERT(pixelData.bitsPerPixel() == 32);
CGContextRef bitmapContext = CGBitmapContextCreate(pixelData.buffer(), pixelData.size().width(), pixelData.size().height(), 8,
- pixelData.bytesPerRow(), deviceRGBColorSpaceRef(), kCGBitmapByteOrder32Little |
+ pixelData.bytesPerRow(), sRGBColorSpaceRef(), kCGBitmapByteOrder32Little |
(supportAlphaBlend ? kCGImageAlphaPremultipliedFirst : kCGImageAlphaNoneSkipFirst));
CGImageRef image = CGBitmapContextCreateImage(bitmapContext);
@@ -128,7 +128,7 @@
// make a custom CGDataProvider that controls the WindowsBitmap lifetime. see <rdar://6394455>
RetainPtr<CFDataRef> imageData = adoptCF(CFDataCreate(kCFAllocatorDefault, image->buffer(), image->bufferLength()));
RetainPtr<CGDataProviderRef> dataProvider = adoptCF(CGDataProviderCreateWithCFData(imageData.get()));
- RetainPtr<CGImageRef> cgImage = adoptCF(CGImageCreate(image->size().width(), image->size().height(), 8, 32, image->bytesPerRow(), deviceRGBColorSpaceRef(),
+ RetainPtr<CGImageRef> cgImage = adoptCF(CGImageCreate(image->size().width(), image->size().height(), 8, 32, image->bytesPerRow(), sRGBColorSpaceRef(),
kCGBitmapByteOrder32Little | kCGImageAlphaFirst, dataProvider.get(), 0, true, kCGRenderingIntentDefault));
CGContextDrawImage(m_data->m_cgContext.get(), CGRectMake(point.x(), point.y(), image->size().width(), image->size().height()), cgImage.get());
}
Modified: trunk/Source/WebCore/platform/graphics/win/ImageCGWin.cpp (225796 => 225797)
--- trunk/Source/WebCore/platform/graphics/win/ImageCGWin.cpp 2017-12-12 20:43:32 UTC (rev 225796)
+++ trunk/Source/WebCore/platform/graphics/win/ImageCGWin.cpp 2017-12-12 21:00:37 UTC (rev 225797)
@@ -53,7 +53,7 @@
return 0;
RetainPtr<CGContextRef> bitmapContext = adoptCF(CGBitmapContextCreate(dibSection.dsBm.bmBits, dibSection.dsBm.bmWidth, dibSection.dsBm.bmHeight, 8,
- dibSection.dsBm.bmWidthBytes, deviceRGBColorSpaceRef(), kCGBitmapByteOrder32Little | kCGImageAlphaPremultipliedFirst));
+ dibSection.dsBm.bmWidthBytes, sRGBColorSpaceRef(), kCGBitmapByteOrder32Little | kCGImageAlphaPremultipliedFirst));
// The BitmapImage takes ownership of this.
RetainPtr<CGImageRef> cgImage = adoptCF(CGBitmapContextCreateImage(bitmapContext.get()));
@@ -72,7 +72,7 @@
int bufferSize = bmpInfo.bmWidthBytes * bmpInfo.bmHeight;
CGContextRef cgContext = CGBitmapContextCreate(bmpInfo.bmBits, bmpInfo.bmWidth, bmpInfo.bmHeight,
- 8, bmpInfo.bmWidthBytes, deviceRGBColorSpaceRef(), kCGBitmapByteOrder32Little | kCGImageAlphaPremultipliedFirst);
+ 8, bmpInfo.bmWidthBytes, sRGBColorSpaceRef(), kCGBitmapByteOrder32Little | kCGImageAlphaPremultipliedFirst);
GraphicsContext gc(cgContext);
Modified: trunk/Source/WebCore/platform/mediastream/mac/MockRealtimeVideoSourceMac.mm (225796 => 225797)
--- trunk/Source/WebCore/platform/mediastream/mac/MockRealtimeVideoSourceMac.mm 2017-12-12 20:43:32 UTC (rev 225796)
+++ trunk/Source/WebCore/platform/mediastream/mac/MockRealtimeVideoSourceMac.mm 2017-12-12 21:00:37 UTC (rev 225797)
@@ -94,7 +94,7 @@
RetainPtr<CVPixelBufferRef> MockRealtimeVideoSourceMac::pixelBufferFromCGImage(CGImageRef image) const
{
- static CGColorSpaceRef deviceRGBColorSpace = CGColorSpaceCreateDeviceRGB();
+ static CGColorSpaceRef sRGBColorSpace = sRGBColorSpaceRef();
CGSize imageSize = CGSizeMake(CGImageGetWidth(image), CGImageGetHeight(image));
if (!m_bufferPool) {
@@ -129,7 +129,7 @@
CVPixelBufferLockBaseAddress(pixelBuffer, 0);
void* data = ""
- auto context = adoptCF(CGBitmapContextCreate(data, imageSize.width, imageSize.height, 8, CVPixelBufferGetBytesPerRow(pixelBuffer), deviceRGBColorSpace, (CGBitmapInfo) kCGImageAlphaNoneSkipFirst));
+ auto context = adoptCF(CGBitmapContextCreate(data, imageSize.width, imageSize.height, 8, CVPixelBufferGetBytesPerRow(pixelBuffer), sRGBColorSpace, (CGBitmapInfo) kCGImageAlphaNoneSkipFirst));
CGContextDrawImage(context.get(), CGRectMake(0, 0, CGImageGetWidth(image), CGImageGetHeight(image)), image);
CVPixelBufferUnlockBaseAddress(pixelBuffer, 0);
Modified: trunk/Source/WebCore/platform/win/DragImageCGWin.cpp (225796 => 225797)
--- trunk/Source/WebCore/platform/win/DragImageCGWin.cpp 2017-12-12 20:43:32 UTC (rev 225796)
+++ trunk/Source/WebCore/platform/win/DragImageCGWin.cpp 2017-12-12 21:00:37 UTC (rev 225797)
@@ -58,7 +58,7 @@
return hbmp;
CGContextRef bitmapContext = CGBitmapContextCreate(bits, bmpInfo.bmiHeader.biWidth, bmpInfo.bmiHeader.biHeight, 8,
- bmpInfo.bmiHeader.biWidth * 4, deviceRGBColorSpaceRef(),
+ bmpInfo.bmiHeader.biWidth * 4, sRGBColorSpaceRef(),
kCGBitmapByteOrder32Little | kCGImageAlphaNoneSkipFirst);
if (!bitmapContext)
return GDIObject<HBITMAP>();
@@ -74,7 +74,7 @@
ASSERT(info.bmBitsPixel == 32);
CGContextRef bitmapContext = CGBitmapContextCreate(info.bmBits, info.bmWidth, info.bmHeight, 8,
- info.bmWidthBytes, deviceRGBColorSpaceRef(), kCGBitmapByteOrder32Little | kCGImageAlphaNoneSkipFirst);
+ info.bmWidthBytes, sRGBColorSpaceRef(), kCGBitmapByteOrder32Little | kCGImageAlphaNoneSkipFirst);
return bitmapContext;
}
Modified: trunk/Source/WebCore/rendering/svg/RenderSVGResourceFilter.cpp (225796 => 225797)
--- trunk/Source/WebCore/rendering/svg/RenderSVGResourceFilter.cpp 2017-12-12 20:43:32 UTC (rev 225796)
+++ trunk/Source/WebCore/rendering/svg/RenderSVGResourceFilter.cpp 2017-12-12 21:00:37 UTC (rev 225797)
@@ -278,7 +278,7 @@
filterData.state = FilterData::Applying;
lastEffect->applyAll();
lastEffect->correctFilterResultIfNeeded();
- lastEffect->transformResultColorSpace(ColorSpaceDeviceRGB);
+ lastEffect->transformResultColorSpace(ColorSpaceSRGB);
}
filterData.state = FilterData::Built;
Modified: trunk/Source/WebCore/rendering/svg/RenderSVGResourceMasker.cpp (225796 => 225797)
--- trunk/Source/WebCore/rendering/svg/RenderSVGResourceMasker.cpp 2017-12-12 20:43:32 UTC (rev 225796)
+++ trunk/Source/WebCore/rendering/svg/RenderSVGResourceMasker.cpp 2017-12-12 21:00:37 UTC (rev 225797)
@@ -113,7 +113,7 @@
}
#if !USE(CG)
- maskerData->maskImage->transformColorSpace(ColorSpaceDeviceRGB, colorSpace);
+ maskerData->maskImage->transformColorSpace(ColorSpaceSRGB, colorSpace);
#else
UNUSED_PARAM(colorSpace);
#endif
Modified: trunk/Source/WebKit/ChangeLog (225796 => 225797)
--- trunk/Source/WebKit/ChangeLog 2017-12-12 20:43:32 UTC (rev 225796)
+++ trunk/Source/WebKit/ChangeLog 2017-12-12 21:00:37 UTC (rev 225797)
@@ -1,3 +1,14 @@
+2017-12-12 Simon Fraser <simon.fra...@apple.com>
+
+ Remove ColorSpaceDeviceRGB and most users of the obsolete deviceRGB colorspace
+ https://bugs.webkit.org/show_bug.cgi?id=180689
+
+ Reviewed by Tim Horton.
+
+ Remove encoding of ColorSpaceDeviceRGB.
+
+ * Shared/WebCoreArgumentCoders.h:
+
2017-12-12 Brent Fulgham <bfulg...@apple.com>
REGRESSION(r216941): Plugin Process can't access AppStore Plugin Service
Modified: trunk/Source/WebKit/Shared/WebCoreArgumentCoders.h (225796 => 225797)
--- trunk/Source/WebKit/Shared/WebCoreArgumentCoders.h 2017-12-12 20:43:32 UTC (rev 225796)
+++ trunk/Source/WebKit/Shared/WebCoreArgumentCoders.h 2017-12-12 21:00:37 UTC (rev 225797)
@@ -703,7 +703,6 @@
template<> struct EnumTraits<WebCore::ColorSpace> {
using values = EnumValues<
WebCore::ColorSpace,
- WebCore::ColorSpace::ColorSpaceDeviceRGB,
WebCore::ColorSpace::ColorSpaceSRGB,
WebCore::ColorSpace::ColorSpaceLinearRGB,
WebCore::ColorSpace::ColorSpaceDisplayP3
Modified: trunk/Source/WebKitLegacy/mac/ChangeLog (225796 => 225797)
--- trunk/Source/WebKitLegacy/mac/ChangeLog 2017-12-12 20:43:32 UTC (rev 225796)
+++ trunk/Source/WebKitLegacy/mac/ChangeLog 2017-12-12 21:00:37 UTC (rev 225797)
@@ -1,3 +1,15 @@
+2017-12-12 Simon Fraser <simon.fra...@apple.com>
+
+ Remove ColorSpaceDeviceRGB and most users of the obsolete deviceRGB colorspace
+ https://bugs.webkit.org/show_bug.cgi?id=180689
+
+ Reviewed by Tim Horton.
+
+ Use sRGBColorSpaceRef() from WebCore.
+
+ * WebView/WebHTMLView.mm:
+ (imageFromRect):
+
2017-12-11 Tim Horton <timothy_hor...@apple.com>
Stop using deprecated target conditional for simulator builds
Modified: trunk/Source/WebKitLegacy/mac/WebView/WebHTMLView.mm (225796 => 225797)
--- trunk/Source/WebKitLegacy/mac/WebView/WebHTMLView.mm 2017-12-12 20:43:32 UTC (rev 225796)
+++ trunk/Source/WebKitLegacy/mac/WebView/WebHTMLView.mm 2017-12-12 21:00:37 UTC (rev 225797)
@@ -154,6 +154,7 @@
#if PLATFORM(IOS)
#import "WebUIKitDelegate.h"
+#import <WebCore/GraphicsContextCG.h>
#import <WebCore/KeyEventCodesIOS.h>
#import <WebCore/PlatformEventFactoryIOS.h>
#import <WebCore/WAKClipView.h>
@@ -7050,8 +7051,7 @@
size_t bitsPerComponent = 8;
size_t bitsPerPixel = 4 * bitsPerComponent;
size_t bytesPerRow = ((bitsPerPixel + 7) / 8) * width;
- RetainPtr<CGColorSpaceRef> colorSpace = adoptCF(CGColorSpaceCreateDeviceRGB());
- RetainPtr<CGContextRef> context = adoptCF(CGBitmapContextCreate(NULL, width, height, bitsPerComponent, bytesPerRow, colorSpace.get(), kCGImageAlphaPremultipliedLast));
+ RetainPtr<CGContextRef> context = adoptCF(CGBitmapContextCreate(NULL, width, height, bitsPerComponent, bytesPerRow, sRGBColorSpaceRef(), kCGImageAlphaPremultipliedLast));
if (!context)
return nil;