Chromium Code Reviews| Index: third_party/WebKit/Source/platform/graphics/ImageBuffer.cpp |
| diff --git a/third_party/WebKit/Source/platform/graphics/ImageBuffer.cpp b/third_party/WebKit/Source/platform/graphics/ImageBuffer.cpp |
| index 53f34f2648dd984097a3c7e1c1baab1f54dd2c32..0e3ab6de12ce113b2abef9745151e03ecf7a1a18 100644 |
| --- a/third_party/WebKit/Source/platform/graphics/ImageBuffer.cpp |
| +++ b/third_party/WebKit/Source/platform/graphics/ImageBuffer.cpp |
| @@ -73,9 +73,9 @@ std::unique_ptr<ImageBuffer> ImageBuffer::create(std::unique_ptr<ImageBufferSurf |
| return wrapUnique(new ImageBuffer(std::move(surface))); |
| } |
| -std::unique_ptr<ImageBuffer> ImageBuffer::create(const IntSize& size, OpacityMode opacityMode, ImageInitializationMode initializationMode) |
| +std::unique_ptr<ImageBuffer> ImageBuffer::create(const IntSize& size, OpacityMode opacityMode, ImageInitializationMode initializationMode, sk_sp<SkColorSpace> colorSpace) |
| { |
| - std::unique_ptr<ImageBufferSurface> surface(wrapUnique(new UnacceleratedImageBufferSurface(size, opacityMode, initializationMode))); |
| + std::unique_ptr<ImageBufferSurface> surface(wrapUnique(new UnacceleratedImageBufferSurface(size, opacityMode, initializationMode, colorSpace))); |
|
Stephen White
2016/08/11 20:41:27
Could we use std::move() here too?
Justin Novosad
2016/08/12 17:40:18
Done.
|
| if (!surface->isValid()) |
| return nullptr; |
| return wrapUnique(new ImageBuffer(std::move(surface))); |
| @@ -411,9 +411,9 @@ void ImageBuffer::updateGPUMemoryUsage() const |
| class UnacceleratedSurfaceFactory : public RecordingImageBufferFallbackSurfaceFactory { |
| public: |
| - virtual std::unique_ptr<ImageBufferSurface> createSurface(const IntSize& size, OpacityMode opacityMode) |
| + virtual std::unique_ptr<ImageBufferSurface> createSurface(const IntSize& size, OpacityMode opacityMode, sk_sp<SkColorSpace> colorSpace) |
| { |
| - return wrapUnique(new UnacceleratedImageBufferSurface(size, opacityMode)); |
| + return wrapUnique(new UnacceleratedImageBufferSurface(size, opacityMode, InitializeImagePixels, colorSpace)); |
| } |
| virtual ~UnacceleratedSurfaceFactory() { } |
| @@ -429,7 +429,7 @@ void ImageBuffer::disableAcceleration() |
| // Create and configure a recording (unaccelerated) surface. |
| std::unique_ptr<RecordingImageBufferFallbackSurfaceFactory> surfaceFactory = wrapUnique(new UnacceleratedSurfaceFactory()); |
| - std::unique_ptr<ImageBufferSurface> surface = wrapUnique(new RecordingImageBufferSurface(m_surface->size(), std::move(surfaceFactory), m_surface->getOpacityMode())); |
| + std::unique_ptr<ImageBufferSurface> surface = wrapUnique(new RecordingImageBufferSurface(m_surface->size(), std::move(surfaceFactory), m_surface->getOpacityMode(), m_surface->colorSpace())); |
| surface->canvas()->drawImage(image, 0, 0); |
| surface->setImageBuffer(this); |