| Index: third_party/WebKit/Source/modules/offscreencanvas2d/OffscreenCanvasRenderingContext2D.cpp
|
| diff --git a/third_party/WebKit/Source/modules/offscreencanvas2d/OffscreenCanvasRenderingContext2D.cpp b/third_party/WebKit/Source/modules/offscreencanvas2d/OffscreenCanvasRenderingContext2D.cpp
|
| index 969e1d2f044111ed792b92e087fcddc902cef016..c262bd7db3762d7c2a2c988b27feaaf29b94e944 100644
|
| --- a/third_party/WebKit/Source/modules/offscreencanvas2d/OffscreenCanvasRenderingContext2D.cpp
|
| +++ b/third_party/WebKit/Source/modules/offscreencanvas2d/OffscreenCanvasRenderingContext2D.cpp
|
| @@ -43,11 +43,12 @@ DEFINE_TRACE(OffscreenCanvasRenderingContext2D) {
|
| BaseRenderingContext2D::trace(visitor);
|
| }
|
|
|
| -void OffscreenCanvasRenderingContext2D::commit(ScriptState* scriptState,
|
| - ExceptionState& exceptionState) {
|
| +ScriptPromise OffscreenCanvasRenderingContext2D::commit(
|
| + ScriptState* scriptState,
|
| + ExceptionState& exceptionState) {
|
| UseCounter::Feature feature = UseCounter::OffscreenCanvasCommit2D;
|
| UseCounter::count(scriptState->getExecutionContext(), feature);
|
| - if (!getOffscreenCanvas()->hasPlaceholderCanvas()) {
|
| + if (!offscreenCanvas()->hasPlaceholderCanvas()) {
|
| // If an OffscreenCanvas has no associated canvas Id, it indicates that
|
| // it is not an OffscreenCanvas created by transfering control from html
|
| // canvas.
|
| @@ -55,21 +56,21 @@ void OffscreenCanvasRenderingContext2D::commit(ScriptState* scriptState,
|
| "Commit() was called on a context whose "
|
| "OffscreenCanvas is not associated with a "
|
| "canvas element.");
|
| - return;
|
| + return exceptionState.reject(scriptState);
|
| }
|
| - double commitStartTime = WTF::monotonicallyIncreasingTime();
|
| - RefPtr<StaticBitmapImage> image = transferToStaticBitmapImage();
|
| - getOffscreenCanvas()->getOrCreateFrameDispatcher()->dispatchFrame(
|
| - std::move(image), commitStartTime);
|
| +
|
| + bool isWebGLSoftwareRendering = false;
|
| + return offscreenCanvas()->commit(transferToStaticBitmapImage(),
|
| + isWebGLSoftwareRendering, scriptState);
|
| }
|
|
|
| // BaseRenderingContext2D implementation
|
| bool OffscreenCanvasRenderingContext2D::originClean() const {
|
| - return getOffscreenCanvas()->originClean();
|
| + return offscreenCanvas()->originClean();
|
| }
|
|
|
| void OffscreenCanvasRenderingContext2D::setOriginTainted() {
|
| - return getOffscreenCanvas()->setOriginTainted();
|
| + return offscreenCanvas()->setOriginTainted();
|
| }
|
|
|
| bool OffscreenCanvasRenderingContext2D::wouldTaintOrigin(
|
| @@ -87,11 +88,11 @@ bool OffscreenCanvasRenderingContext2D::wouldTaintOrigin(
|
| }
|
|
|
| int OffscreenCanvasRenderingContext2D::width() const {
|
| - return getOffscreenCanvas()->width();
|
| + return offscreenCanvas()->width();
|
| }
|
|
|
| int OffscreenCanvasRenderingContext2D::height() const {
|
| - return getOffscreenCanvas()->height();
|
| + return offscreenCanvas()->height();
|
| }
|
|
|
| bool OffscreenCanvasRenderingContext2D::hasImageBuffer() const {
|
| @@ -180,7 +181,7 @@ ImageData* OffscreenCanvasRenderingContext2D::toImageData(
|
| m_imageBuffer->newSkImageSnapshot(PreferNoAcceleration, reason);
|
| ImageData* imageData = nullptr;
|
| if (snapshot) {
|
| - imageData = ImageData::create(this->getOffscreenCanvas()->size());
|
| + imageData = ImageData::create(offscreenCanvas()->size());
|
| SkImageInfo imageInfo =
|
| SkImageInfo::Make(this->width(), this->height(), kRGBA_8888_SkColorType,
|
| kUnpremul_SkAlphaType);
|
|
|