From d3867c32db51e792c7a1854cb6b415a788db7a75 Mon Sep 17 00:00:00 2001 From: Josh Matthews Date: Fri, 22 May 2020 14:32:12 -0400 Subject: [PATCH] Add a preference to control ImageBitmap while it's incomplete. --- components/config/prefs.rs | 3 +++ components/script/dom/webidls/ImageBitmap.webidl | 2 +- .../script/dom/webidls/WindowOrWorkerGlobalScope.webidl | 1 + resources/prefs.json | 1 + tests/wpt/metadata/__dir__.ini | 1 + tests/wpt/mozilla/meta/MANIFEST.json | 4 ++-- tests/wpt/mozilla/tests/mozilla/interfaces.html | 1 - tests/wpt/mozilla/tests/mozilla/interfaces.worker.js | 1 - tests/wpt/webgl/meta/conformance/__dir__.ini | 2 +- tests/wpt/webgl/meta/conformance2/__dir__.ini | 2 +- 10 files changed, 11 insertions(+), 7 deletions(-) create mode 100644 tests/wpt/metadata/__dir__.ini diff --git a/components/config/prefs.rs b/components/config/prefs.rs index e1ec7252481..929a760c0fc 100644 --- a/components/config/prefs.rs +++ b/components/config/prefs.rs @@ -193,6 +193,9 @@ mod gen { gamepad: { enabled: bool, }, + imagebitmap: { + enabled: bool, + }, microdata: { testing: { enabled: bool, diff --git a/components/script/dom/webidls/ImageBitmap.webidl b/components/script/dom/webidls/ImageBitmap.webidl index ea49061a756..51c923bfaf4 100644 --- a/components/script/dom/webidls/ImageBitmap.webidl +++ b/components/script/dom/webidls/ImageBitmap.webidl @@ -10,7 +10,7 @@ */ //[Exposed=(Window,Worker), Serializable, Transferable] -[Exposed=(Window,Worker)] +[Exposed=(Window,Worker), Pref="dom.imagebitmap.enabled"] interface ImageBitmap { readonly attribute unsigned long width; readonly attribute unsigned long height; diff --git a/components/script/dom/webidls/WindowOrWorkerGlobalScope.webidl b/components/script/dom/webidls/WindowOrWorkerGlobalScope.webidl index f348d7cf900..97b36721f8b 100644 --- a/components/script/dom/webidls/WindowOrWorkerGlobalScope.webidl +++ b/components/script/dom/webidls/WindowOrWorkerGlobalScope.webidl @@ -24,6 +24,7 @@ interface mixin WindowOrWorkerGlobalScope { void queueMicrotask(VoidFunction callback); // ImageBitmap + [Pref="dom.imagebitmap.enabled"] Promise createImageBitmap(ImageBitmapSource image, optional ImageBitmapOptions options = {}); // Promise createImageBitmap( // ImageBitmapSource image, long sx, long sy, long sw, long sh, optional ImageBitmapOptions options); diff --git a/resources/prefs.json b/resources/prefs.json index e9005c43253..3d6133d21d2 100644 --- a/resources/prefs.json +++ b/resources/prefs.json @@ -9,6 +9,7 @@ "dom.forcetouch.enabled": false, "dom.fullscreen.test": false, "dom.gamepad.enabled": false, + "dom.imagebitmap.enabled": false, "dom.microdata.enabled": false, "dom.microdata.testing.enabled": false, "dom.mouseevent.which.enabled": false, diff --git a/tests/wpt/metadata/__dir__.ini b/tests/wpt/metadata/__dir__.ini new file mode 100644 index 00000000000..60a490fc6ff --- /dev/null +++ b/tests/wpt/metadata/__dir__.ini @@ -0,0 +1 @@ +prefs: ["dom.imagebitmap.enabled:true"] diff --git a/tests/wpt/mozilla/meta/MANIFEST.json b/tests/wpt/mozilla/meta/MANIFEST.json index 832db1e23ac..f49423f8754 100644 --- a/tests/wpt/mozilla/meta/MANIFEST.json +++ b/tests/wpt/mozilla/meta/MANIFEST.json @@ -13901,14 +13901,14 @@ ] ], "interfaces.html": [ - "b6034be26af3c2edd1ef41703857fa99bd2cd639", + "145c902ff033ba1de46b41dec07992fae4fd2f13", [ null, {} ] ], "interfaces.worker.js": [ - "a74a91489541ab99ae58001e3f63afc9ecc5c553", + "c1223084790b2980c8184e3cd9ab5ae17bc8b303", [ "mozilla/interfaces.worker.html", {} diff --git a/tests/wpt/mozilla/tests/mozilla/interfaces.html b/tests/wpt/mozilla/tests/mozilla/interfaces.html index b6034be26af..145c902ff03 100644 --- a/tests/wpt/mozilla/tests/mozilla/interfaces.html +++ b/tests/wpt/mozilla/tests/mozilla/interfaces.html @@ -162,7 +162,6 @@ test_interfaces([ "HTMLUnknownElement", "HTMLVideoElement", "ImageData", - "ImageBitmap", "Image", "InputEvent", "KeyboardEvent", diff --git a/tests/wpt/mozilla/tests/mozilla/interfaces.worker.js b/tests/wpt/mozilla/tests/mozilla/interfaces.worker.js index a74a9148954..c1223084790 100644 --- a/tests/wpt/mozilla/tests/mozilla/interfaces.worker.js +++ b/tests/wpt/mozilla/tests/mozilla/interfaces.worker.js @@ -35,7 +35,6 @@ test_interfaces([ "Headers", "History", "ImageData", - "ImageBitmap", "MessageChannel", "MessageEvent", "MessagePort", diff --git a/tests/wpt/webgl/meta/conformance/__dir__.ini b/tests/wpt/webgl/meta/conformance/__dir__.ini index 03004f6efd7..268ced65042 100644 --- a/tests/wpt/webgl/meta/conformance/__dir__.ini +++ b/tests/wpt/webgl/meta/conformance/__dir__.ini @@ -1 +1 @@ -prefs: ["dom.offscreen_canvas.enabled:true"] +prefs: ["dom.offscreen_canvas.enabled:true","dom.imagebitmap.enabled:true"] diff --git a/tests/wpt/webgl/meta/conformance2/__dir__.ini b/tests/wpt/webgl/meta/conformance2/__dir__.ini index a1929a9c6b7..2540f857c82 100644 --- a/tests/wpt/webgl/meta/conformance2/__dir__.ini +++ b/tests/wpt/webgl/meta/conformance2/__dir__.ini @@ -1,2 +1,2 @@ -prefs: ["dom.webgl2.enabled:true","dom.offscreen_canvas.enabled:true"] +prefs: ["dom.webgl2.enabled:true","dom.offscreen_canvas.enabled:true","dom.imagebitmap.enabled:true"]