From bf0e3f84d01b619f7771466ece1e25ea8b9271bb Mon Sep 17 00:00:00 2001 From: Andrei Volykhin Date: Mon, 14 Jul 2025 13:20:02 +0300 Subject: [PATCH] imagebitmap: Remove ImageBitmap from experimental web platform features (#38050) Enable by default the DOM "ImageBitmap" interface previously gated behind "dom.imagebitmap.enabled" preference as experimental web platform feature. https://html.spec.whatwg.org/multipage/imagebitmap-and-animations.html#imagebitmap NOTE: Non blocking non supported functionality: - vector HTMImageElement, bitmap/vector SVGImageElement - EXIF image orientation Testing: Covered by existing WPT tests Fixes: #34112 Signed-off-by: Andrei Volykhin --- components/config/prefs.rs | 2 -- components/script_bindings/webidls/ImageBitmap.webidl | 2 +- .../script_bindings/webidls/WindowOrWorkerGlobalScope.webidl | 2 -- ports/servoshell/prefs.rs | 1 - 4 files changed, 1 insertion(+), 6 deletions(-) diff --git a/components/config/prefs.rs b/components/config/prefs.rs index 486a3d40c7b..366f6e543c9 100644 --- a/components/config/prefs.rs +++ b/components/config/prefs.rs @@ -84,7 +84,6 @@ pub struct Preferences { pub dom_fontface_enabled: bool, pub dom_fullscreen_test: bool, pub dom_gamepad_enabled: bool, - pub dom_imagebitmap_enabled: bool, pub dom_indexeddb_enabled: bool, pub dom_intersection_observer_enabled: bool, pub dom_microdata_testing_enabled: bool, @@ -262,7 +261,6 @@ impl Preferences { dom_fontface_enabled: false, dom_fullscreen_test: false, dom_gamepad_enabled: true, - dom_imagebitmap_enabled: false, dom_indexeddb_enabled: false, dom_intersection_observer_enabled: false, dom_microdata_testing_enabled: false, diff --git a/components/script_bindings/webidls/ImageBitmap.webidl b/components/script_bindings/webidls/ImageBitmap.webidl index 31230ab9b22..e8fedbe087a 100644 --- a/components/script_bindings/webidls/ImageBitmap.webidl +++ b/components/script_bindings/webidls/ImageBitmap.webidl @@ -9,7 +9,7 @@ * You are granted a license to use, reproduce and create derivative works of this document. */ -[Exposed=(Window,Worker), Serializable, Transferable, Pref="dom_imagebitmap_enabled"] +[Exposed=(Window,Worker), Serializable, Transferable] interface ImageBitmap { readonly attribute unsigned long width; readonly attribute unsigned long height; diff --git a/components/script_bindings/webidls/WindowOrWorkerGlobalScope.webidl b/components/script_bindings/webidls/WindowOrWorkerGlobalScope.webidl index e329048b1fb..45977890524 100644 --- a/components/script_bindings/webidls/WindowOrWorkerGlobalScope.webidl +++ b/components/script_bindings/webidls/WindowOrWorkerGlobalScope.webidl @@ -24,9 +24,7 @@ interface mixin WindowOrWorkerGlobalScope { undefined queueMicrotask(VoidFunction callback); // ImageBitmap - [Pref="dom_imagebitmap_enabled"] Promise createImageBitmap(ImageBitmapSource image, optional ImageBitmapOptions options = {}); - [Pref="dom_imagebitmap_enabled"] Promise createImageBitmap(ImageBitmapSource image, long sx, long sy, long sw, long sh, optional ImageBitmapOptions options = {}); diff --git a/ports/servoshell/prefs.rs b/ports/servoshell/prefs.rs index 6cdbe5b154f..f0af965cfa8 100644 --- a/ports/servoshell/prefs.rs +++ b/ports/servoshell/prefs.rs @@ -589,7 +589,6 @@ pub(crate) fn parse_command_line_arguments(args: Vec) -> ArgumentParsing vec![ "dom_async_clipboard_enabled", "dom_fontface_enabled", - "dom_imagebitmap_enabled", "dom_intersection_observer_enabled", "dom_mouse_event_which_enabled", "dom_notification_enabled",