Index: third_party/WebKit/Source/core/html/HTMLCanvasElement.cpp |
diff --git a/third_party/WebKit/Source/core/html/HTMLCanvasElement.cpp b/third_party/WebKit/Source/core/html/HTMLCanvasElement.cpp |
index ca982ba8904a204e8e1708132e0b9056c52bc48c..006f67e7ff0e6b944e7359bd229fdd27af3bce70 100644 |
--- a/third_party/WebKit/Source/core/html/HTMLCanvasElement.cpp |
+++ b/third_party/WebKit/Source/core/html/HTMLCanvasElement.cpp |
@@ -58,6 +58,7 @@ |
#include "platform/RuntimeEnabledFeatures.h" |
#include "platform/graphics/Canvas2DImageBufferSurface.h" |
#include "platform/graphics/CanvasMetrics.h" |
+#include "platform/graphics/CanvasSurfaceLayerBridgeClientImpl.h" |
#include "platform/graphics/ExpensiveCanvasHeuristicParameters.h" |
#include "platform/graphics/ImageBuffer.h" |
#include "platform/graphics/RecordingImageBufferSurface.h" |
@@ -1184,9 +1185,12 @@ String HTMLCanvasElement::getIdFromControl(const Element* element) |
return String(); |
} |
-void HTMLCanvasElement::createSurfaceLayerBridge() |
+bool HTMLCanvasElement::createSurfaceLayer() |
{ |
- m_surfaceLayerBridge = wrapUnique(new CanvasSurfaceLayerBridge()); |
+ DCHECK(!m_surfaceLayerBridge); |
+ std::unique_ptr<CanvasSurfaceLayerBridgeClient> bridgeClient = wrapUnique(new CanvasSurfaceLayerBridgeClientImpl()); |
+ m_surfaceLayerBridge = wrapUnique(new CanvasSurfaceLayerBridge(std::move(bridgeClient))); |
+ return m_surfaceLayerBridge->createSurfaceLayer(this->width(), this->height()); |
} |
} // namespace blink |