diff options
Diffstat (limited to 'chromium/third_party/blink/renderer/modules/canvas/imagebitmap')
8 files changed, 7 insertions, 151 deletions
diff --git a/chromium/third_party/blink/renderer/modules/canvas/imagebitmap/image_bitmap_factories.cc b/chromium/third_party/blink/renderer/modules/canvas/imagebitmap/image_bitmap_factories.cc index 8f42c005e87..a62c7bf2271 100644 --- a/chromium/third_party/blink/renderer/modules/canvas/imagebitmap/image_bitmap_factories.cc +++ b/chromium/third_party/blink/renderer/modules/canvas/imagebitmap/image_bitmap_factories.cc @@ -80,7 +80,6 @@ enum CreateImageBitmapSource { } // namespace -#if defined(USE_BLINK_V8_BINDING_NEW_IDL_UNION) inline ImageBitmapSource* ToImageBitmapSourceInternal( const V8ImageBitmapSource* value, const ImageBitmapOptions* options, @@ -129,60 +128,6 @@ inline ImageBitmapSource* ToImageBitmapSourceInternal( NOTREACHED(); return nullptr; } -#else // defined(USE_BLINK_V8_BINDING_NEW_IDL_UNION) -static inline ImageBitmapSource* ToImageBitmapSourceInternal( - const ImageBitmapSourceUnion& value, - const ImageBitmapOptions* options, - bool has_crop_rect) { - if (value.IsHTMLVideoElement()) { - UMA_HISTOGRAM_ENUMERATION("Blink.Canvas.CreateImageBitmapSource", - kCreateImageBitmapSourceHTMLVideoElement); - return value.GetAsHTMLVideoElement(); - } - if (value.IsHTMLImageElement()) { - UMA_HISTOGRAM_ENUMERATION("Blink.Canvas.CreateImageBitmapSource", - kCreateImageBitmapSourceHTMLImageElement); - return value.GetAsHTMLImageElement(); - } - if (value.IsSVGImageElement()) { - UMA_HISTOGRAM_ENUMERATION("Blink.Canvas.CreateImageBitmapSource", - kCreateImageBitmapSourceSVGImageElement); - return value.GetAsSVGImageElement(); - } - if (value.IsHTMLCanvasElement()) { - UMA_HISTOGRAM_ENUMERATION("Blink.Canvas.CreateImageBitmapSource", - kCreateImageBitmapSourceHTMLCanvasElement); - return value.GetAsHTMLCanvasElement(); - } - if (value.IsBlob()) { - UMA_HISTOGRAM_ENUMERATION("Blink.Canvas.CreateImageBitmapSource", - kCreateImageBitmapSourceBlob); - return value.GetAsBlob(); - } - if (value.IsImageData()) { - UMA_HISTOGRAM_ENUMERATION("Blink.Canvas.CreateImageBitmapSource", - kCreateImageBitmapSourceImageData); - return value.GetAsImageData(); - } - if (value.IsImageBitmap()) { - UMA_HISTOGRAM_ENUMERATION("Blink.Canvas.CreateImageBitmapSource", - kCreateImageBitmapSourceImageBitmap); - return value.GetAsImageBitmap(); - } - if (value.IsOffscreenCanvas()) { - UMA_HISTOGRAM_ENUMERATION("Blink.Canvas.CreateImageBitmapSource", - kCreateImageBitmapSourceOffscreenCanvas); - return value.GetAsOffscreenCanvas(); - } - if (value.IsVideoFrame()) { - UMA_HISTOGRAM_ENUMERATION("Blink.Canvas.CreateImageBitmapSource", - kCreateImageBitmapSourceVideoFrame); - return value.GetAsVideoFrame(); - } - NOTREACHED(); - return nullptr; -} -#endif // defined(USE_BLINK_V8_BINDING_NEW_IDL_UNION) ScriptPromise ImageBitmapFactories::CreateImageBitmapFromBlob( ScriptState* script_state, @@ -200,11 +145,7 @@ ScriptPromise ImageBitmapFactories::CreateImageBitmapFromBlob( ScriptPromise ImageBitmapFactories::CreateImageBitmap( ScriptState* script_state, -#if defined(USE_BLINK_V8_BINDING_NEW_IDL_UNION) const V8ImageBitmapSource* bitmap_source, -#else // defined(USE_BLINK_V8_BINDING_NEW_IDL_UNION) - const ImageBitmapSourceUnion& bitmap_source, -#endif // defined(USE_BLINK_V8_BINDING_NEW_IDL_UNION) const ImageBitmapOptions* options, ExceptionState& exception_state) { WebFeature feature = WebFeature::kCreateImageBitmap; @@ -219,11 +160,7 @@ ScriptPromise ImageBitmapFactories::CreateImageBitmap( ScriptPromise ImageBitmapFactories::CreateImageBitmap( ScriptState* script_state, -#if defined(USE_BLINK_V8_BINDING_NEW_IDL_UNION) const V8ImageBitmapSource* bitmap_source, -#else // defined(USE_BLINK_V8_BINDING_NEW_IDL_UNION) - const ImageBitmapSourceUnion& bitmap_source, -#endif // defined(USE_BLINK_V8_BINDING_NEW_IDL_UNION) int sx, int sy, int sw, diff --git a/chromium/third_party/blink/renderer/modules/canvas/imagebitmap/image_bitmap_factories.h b/chromium/third_party/blink/renderer/modules/canvas/imagebitmap/image_bitmap_factories.h index 593be689e4a..3b94d2e0796 100644 --- a/chromium/third_party/blink/renderer/modules/canvas/imagebitmap/image_bitmap_factories.h +++ b/chromium/third_party/blink/renderer/modules/canvas/imagebitmap/image_bitmap_factories.h @@ -37,14 +37,12 @@ #include "third_party/blink/renderer/bindings/core/v8/script_promise.h" #include "third_party/blink/renderer/bindings/core/v8/script_promise_resolver.h" #include "third_party/blink/renderer/bindings/core/v8/v8_image_bitmap_options.h" -#include "third_party/blink/renderer/bindings/modules/v8/image_bitmap_source.h" #include "third_party/blink/renderer/bindings/modules/v8/v8_typedefs.h" #include "third_party/blink/renderer/core/execution_context/execution_context_lifecycle_observer.h" #include "third_party/blink/renderer/core/fileapi/file_reader_loader.h" #include "third_party/blink/renderer/core/fileapi/file_reader_loader_client.h" #include "third_party/blink/renderer/core/frame/local_dom_window.h" #include "third_party/blink/renderer/core/workers/worker_global_scope.h" -#include "third_party/blink/renderer/modules/canvas/imagebitmap/image_bitmap_source_union.h" #include "third_party/blink/renderer/modules/modules_export.h" #include "third_party/blink/renderer/platform/bindings/name_client.h" #include "third_party/blink/renderer/platform/bindings/script_state.h" @@ -71,19 +69,11 @@ class MODULES_EXPORT ImageBitmapFactories final ImageBitmapFactories(); static ScriptPromise CreateImageBitmap(ScriptState*, -#if defined(USE_BLINK_V8_BINDING_NEW_IDL_UNION) const V8ImageBitmapSource*, -#else // defined(USE_BLINK_V8_BINDING_NEW_IDL_UNION) - const ImageBitmapSourceUnion&, -#endif // defined(USE_BLINK_V8_BINDING_NEW_IDL_UNION) const ImageBitmapOptions*, ExceptionState&); static ScriptPromise CreateImageBitmap(ScriptState*, -#if defined(USE_BLINK_V8_BINDING_NEW_IDL_UNION) const V8ImageBitmapSource*, -#else // defined(USE_BLINK_V8_BINDING_NEW_IDL_UNION) - const ImageBitmapSourceUnion&, -#endif // defined(USE_BLINK_V8_BINDING_NEW_IDL_UNION) int sx, int sy, int sw, @@ -100,11 +90,7 @@ class MODULES_EXPORT ImageBitmapFactories final static ScriptPromise createImageBitmap( ScriptState* script_state, LocalDOMWindow&, -#if defined(USE_BLINK_V8_BINDING_NEW_IDL_UNION) const V8ImageBitmapSource* bitmap_source, -#else // defined(USE_BLINK_V8_BINDING_NEW_IDL_UNION) - const ImageBitmapSourceUnion& bitmap_source, -#endif // defined(USE_BLINK_V8_BINDING_NEW_IDL_UNION) const ImageBitmapOptions* options, ExceptionState& exception_state) { return CreateImageBitmap(script_state, bitmap_source, options, @@ -113,11 +99,7 @@ class MODULES_EXPORT ImageBitmapFactories final static ScriptPromise createImageBitmap( ScriptState* script_state, LocalDOMWindow&, -#if defined(USE_BLINK_V8_BINDING_NEW_IDL_UNION) const V8ImageBitmapSource* bitmap_source, -#else // defined(USE_BLINK_V8_BINDING_NEW_IDL_UNION) - const ImageBitmapSourceUnion& bitmap_source, -#endif // defined(USE_BLINK_V8_BINDING_NEW_IDL_UNION) int sx, int sy, int sw, @@ -132,11 +114,7 @@ class MODULES_EXPORT ImageBitmapFactories final static ScriptPromise createImageBitmap( ScriptState* script_state, WorkerGlobalScope&, -#if defined(USE_BLINK_V8_BINDING_NEW_IDL_UNION) const V8ImageBitmapSource* bitmap_source, -#else // defined(USE_BLINK_V8_BINDING_NEW_IDL_UNION) - const ImageBitmapSourceUnion& bitmap_source, -#endif // defined(USE_BLINK_V8_BINDING_NEW_IDL_UNION) const ImageBitmapOptions* options, ExceptionState& exception_state) { return CreateImageBitmap(script_state, bitmap_source, options, @@ -145,11 +123,7 @@ class MODULES_EXPORT ImageBitmapFactories final static ScriptPromise createImageBitmap( ScriptState* script_state, WorkerGlobalScope&, -#if defined(USE_BLINK_V8_BINDING_NEW_IDL_UNION) const V8ImageBitmapSource* bitmap_source, -#else // defined(USE_BLINK_V8_BINDING_NEW_IDL_UNION) - const ImageBitmapSourceUnion& bitmap_source, -#endif // defined(USE_BLINK_V8_BINDING_NEW_IDL_UNION) int sx, int sy, int sw, @@ -160,7 +134,7 @@ class MODULES_EXPORT ImageBitmapFactories final options, exception_state); } - virtual ~ImageBitmapFactories() = default; + ~ImageBitmapFactories() override = default; void Trace(Visitor*) const override; const char* NameInHeapSnapshot() const override { diff --git a/chromium/third_party/blink/renderer/modules/canvas/imagebitmap/image_bitmap_rendering_context.cc b/chromium/third_party/blink/renderer/modules/canvas/imagebitmap/image_bitmap_rendering_context.cc index 86abf5bf444..fdc329d73a7 100644 --- a/chromium/third_party/blink/renderer/modules/canvas/imagebitmap/image_bitmap_rendering_context.cc +++ b/chromium/third_party/blink/renderer/modules/canvas/imagebitmap/image_bitmap_rendering_context.cc @@ -6,8 +6,6 @@ #include <utility> -#include "third_party/blink/renderer/bindings/modules/v8/offscreen_rendering_context.h" -#include "third_party/blink/renderer/bindings/modules/v8/rendering_context.h" #include "third_party/blink/renderer/bindings/modules/v8/v8_union_canvasrenderingcontext2d_gpucanvascontext_imagebitmaprenderingcontext_webgl2renderingcontext_webglrenderingcontext.h" #include "third_party/blink/renderer/bindings/modules/v8/v8_union_gpucanvascontext_imagebitmaprenderingcontext_offscreencanvasrenderingcontext2d_webgl2renderingcontext_webglrenderingcontext.h" #include "third_party/blink/renderer/core/imagebitmap/image_bitmap.h" @@ -23,8 +21,6 @@ ImageBitmapRenderingContext::ImageBitmapRenderingContext( ImageBitmapRenderingContext::~ImageBitmapRenderingContext() = default; -#if defined(USE_BLINK_V8_BINDING_NEW_IDL_UNION) - V8RenderingContext* ImageBitmapRenderingContext::AsV8RenderingContext() { return MakeGarbageCollected<V8RenderingContext>(this); } @@ -34,19 +30,6 @@ ImageBitmapRenderingContext::AsV8OffscreenRenderingContext() { return MakeGarbageCollected<V8OffscreenRenderingContext>(this); } -#else // defined(USE_BLINK_V8_BINDING_NEW_IDL_UNION) - -void ImageBitmapRenderingContext::SetCanvasGetContextResult( - RenderingContext& result) { - result.SetImageBitmapRenderingContext(this); -} -void ImageBitmapRenderingContext::SetOffscreenCanvasGetContextResult( - OffscreenRenderingContext& result) { - result.SetImageBitmapRenderingContext(this); -} - -#endif // defined(USE_BLINK_V8_BINDING_NEW_IDL_UNION) - void ImageBitmapRenderingContext::transferFromImageBitmap( ImageBitmap* image_bitmap, ExceptionState& exception_state) { @@ -79,8 +62,6 @@ CanvasRenderingContext* ImageBitmapRenderingContext::Factory::Create( CanvasRenderingContext* rendering_context = MakeGarbageCollected<ImageBitmapRenderingContext>(host, attrs); DCHECK(rendering_context); - rendering_context->RecordUKMCanvasRenderingAPI( - CanvasRenderingContext::CanvasRenderingAPI::kBitmaprenderer); return rendering_context; } diff --git a/chromium/third_party/blink/renderer/modules/canvas/imagebitmap/image_bitmap_rendering_context.h b/chromium/third_party/blink/renderer/modules/canvas/imagebitmap/image_bitmap_rendering_context.h index 6e54e50b239..fe82b05e5bb 100644 --- a/chromium/third_party/blink/renderer/modules/canvas/imagebitmap/image_bitmap_rendering_context.h +++ b/chromium/third_party/blink/renderer/modules/canvas/imagebitmap/image_bitmap_rendering_context.h @@ -50,13 +50,8 @@ class MODULES_EXPORT ImageBitmapRenderingContext final } ImageBitmap* TransferToImageBitmap(ScriptState*) override; -#if defined(USE_BLINK_V8_BINDING_NEW_IDL_UNION) V8RenderingContext* AsV8RenderingContext() final; V8OffscreenRenderingContext* AsV8OffscreenRenderingContext() final; -#else // defined(USE_BLINK_V8_BINDING_NEW_IDL_UNION) - void SetCanvasGetContextResult(RenderingContext&) final; - void SetOffscreenCanvasGetContextResult(OffscreenRenderingContext&) final; -#endif // defined(USE_BLINK_V8_BINDING_NEW_IDL_UNION) ~ImageBitmapRenderingContext() override; }; diff --git a/chromium/third_party/blink/renderer/modules/canvas/imagebitmap/image_bitmap_rendering_context.idl b/chromium/third_party/blink/renderer/modules/canvas/imagebitmap/image_bitmap_rendering_context.idl index 0e7ad6f20c2..a36e36a1453 100644 --- a/chromium/third_party/blink/renderer/modules/canvas/imagebitmap/image_bitmap_rendering_context.idl +++ b/chromium/third_party/blink/renderer/modules/canvas/imagebitmap/image_bitmap_rendering_context.idl @@ -5,6 +5,7 @@ // https://html.spec.whatwg.org/C/#the-imagebitmap-rendering-context [ + ActiveScriptWrappable, Exposed=(Window,Worker) ] interface ImageBitmapRenderingContext { // back-reference to the canvas diff --git a/chromium/third_party/blink/renderer/modules/canvas/imagebitmap/image_bitmap_rendering_context_base.cc b/chromium/third_party/blink/renderer/modules/canvas/imagebitmap/image_bitmap_rendering_context_base.cc index fad044cf917..a3db1e96175 100644 --- a/chromium/third_party/blink/renderer/modules/canvas/imagebitmap/image_bitmap_rendering_context_base.cc +++ b/chromium/third_party/blink/renderer/modules/canvas/imagebitmap/image_bitmap_rendering_context_base.cc @@ -5,8 +5,6 @@ #include "third_party/blink/renderer/modules/canvas/imagebitmap/image_bitmap_rendering_context_base.h" #include "third_party/blink/renderer/bindings/core/v8/v8_union_htmlcanvaselement_offscreencanvas.h" -#include "third_party/blink/renderer/bindings/modules/v8/html_canvas_element_or_offscreen_canvas.h" -#include "third_party/blink/renderer/bindings/modules/v8/rendering_context.h" #include "third_party/blink/renderer/core/imagebitmap/image_bitmap.h" #include "third_party/blink/renderer/platform/graphics/gpu/image_layer_bridge.h" #include "third_party/blink/renderer/platform/graphics/gpu/shared_gpu_context.h" @@ -21,13 +19,12 @@ namespace blink { ImageBitmapRenderingContextBase::ImageBitmapRenderingContextBase( CanvasRenderingContextHost* host, const CanvasContextCreationAttributesCore& attrs) - : CanvasRenderingContext(host, attrs), + : CanvasRenderingContext(host, attrs, CanvasRenderingAPI::kBitmaprenderer), image_layer_bridge_(MakeGarbageCollected<ImageLayerBridge>( attrs.alpha ? kNonOpaque : kOpaque)) {} ImageBitmapRenderingContextBase::~ImageBitmapRenderingContextBase() = default; -#if defined(USE_BLINK_V8_BINDING_NEW_IDL_UNION) V8UnionHTMLCanvasElementOrOffscreenCanvas* ImageBitmapRenderingContextBase::getHTMLOrOffscreenCanvas() const { if (Host()->IsOffscreenCanvas()) { @@ -37,16 +34,6 @@ ImageBitmapRenderingContextBase::getHTMLOrOffscreenCanvas() const { return MakeGarbageCollected<V8UnionHTMLCanvasElementOrOffscreenCanvas>( static_cast<HTMLCanvasElement*>(Host())); } -#else // defined(USE_BLINK_V8_BINDING_NEW_IDL_UNION) -void ImageBitmapRenderingContextBase::getHTMLOrOffscreenCanvas( - HTMLCanvasElementOrOffscreenCanvas& result) const { - if (Host()->IsOffscreenCanvas()) { - result.SetOffscreenCanvas(static_cast<OffscreenCanvas*>(Host())); - } else { - result.SetHTMLCanvasElement(static_cast<HTMLCanvasElement*>(Host())); - } -} -#endif // defined(USE_BLINK_V8_BINDING_NEW_IDL_UNION) void ImageBitmapRenderingContextBase::Stop() { image_layer_bridge_->Dispose(); @@ -75,7 +62,7 @@ void ImageBitmapRenderingContextBase::SetImage(ImageBitmap* image_bitmap) { else ResetInternalBitmapToBlackTransparent(Host()->width(), Host()->height()); - DidDraw(); + DidDraw(CanvasPerformanceMonitor::DrawType::kOther); if (image_bitmap) image_bitmap->close(); @@ -133,6 +120,9 @@ bool ImageBitmapRenderingContextBase::PushFrame() { return false; scoped_refptr<StaticBitmapImage> image = image_layer_bridge_->GetImage(); + if (!image) { + return false; + } cc::PaintFlags paint_flags; paint_flags.setBlendMode(SkBlendMode::kSrc); Host()->ResourceProvider()->Canvas()->drawImage( diff --git a/chromium/third_party/blink/renderer/modules/canvas/imagebitmap/image_bitmap_rendering_context_base.h b/chromium/third_party/blink/renderer/modules/canvas/imagebitmap/image_bitmap_rendering_context_base.h index 591bd77ed31..514ddfa2fc0 100644 --- a/chromium/third_party/blink/renderer/modules/canvas/imagebitmap/image_bitmap_rendering_context_base.h +++ b/chromium/third_party/blink/renderer/modules/canvas/imagebitmap/image_bitmap_rendering_context_base.h @@ -17,7 +17,6 @@ class Layer; namespace blink { -class HTMLCanvasElementOrOffscreenCanvas; class ImageBitmap; class ImageLayerBridge; class V8UnionHTMLCanvasElementOrOffscreenCanvas; @@ -39,11 +38,7 @@ class MODULES_EXPORT ImageBitmapRenderingContextBase } bool CanCreateCanvas2dResourceProvider() const; -#if defined(USE_BLINK_V8_BINDING_NEW_IDL_UNION) V8UnionHTMLCanvasElementOrOffscreenCanvas* getHTMLOrOffscreenCanvas() const; -#else // defined(USE_BLINK_V8_BINDING_NEW_IDL_UNION) - void getHTMLOrOffscreenCanvas(HTMLCanvasElementOrOffscreenCanvas&) const; -#endif // defined(USE_BLINK_V8_BINDING_NEW_IDL_UNION) void SetIsInHiddenPage(bool) override {} void SetIsBeingDisplayed(bool) override {} diff --git a/chromium/third_party/blink/renderer/modules/canvas/imagebitmap/image_bitmap_source_union.h b/chromium/third_party/blink/renderer/modules/canvas/imagebitmap/image_bitmap_source_union.h deleted file mode 100644 index 7f2c0f047d2..00000000000 --- a/chromium/third_party/blink/renderer/modules/canvas/imagebitmap/image_bitmap_source_union.h +++ /dev/null @@ -1,17 +0,0 @@ -// Copyright 2021 The Chromium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -#ifndef THIRD_PARTY_BLINK_RENDERER_MODULES_CANVAS_IMAGEBITMAP_IMAGE_BITMAP_SOURCE_UNION_H_ -#define THIRD_PARTY_BLINK_RENDERER_MODULES_CANVAS_IMAGEBITMAP_IMAGE_BITMAP_SOURCE_UNION_H_ - -#include "third_party/blink/renderer/bindings/modules/v8/image_bitmap_source.h" - -namespace blink { - -using ImageBitmapSourceUnion = - HTMLImageElementOrSVGImageElementOrHTMLVideoElementOrHTMLCanvasElementOrBlobOrImageDataOrImageBitmapOrOffscreenCanvasOrVideoFrame; - -} // namespace blink - -#endif // THIRD_PARTY_BLINK_RENDERER_MODULES_CANVAS_IMAGEBITMAP_IMAGE_BITMAP_SOURCE_UNION_H_ |