Diff
Modified: trunk/LayoutTests/ChangeLog (225745 => 225746)
--- trunk/LayoutTests/ChangeLog 2017-12-11 18:02:37 UTC (rev 225745)
+++ trunk/LayoutTests/ChangeLog 2017-12-11 18:07:48 UTC (rev 225746)
@@ -1,3 +1,14 @@
+2017-12-11 Dean Jackson <d...@apple.com>
+
+ Add a runtime feature flag for ImageBitmap and OffscreenCanvas
+ https://bugs.webkit.org/show_bug.cgi?id=180652
+ <rdar://problem/35969611>
+
+ Reviewed by Antoine Quint.
+
+ * fast/canvas/offscreen-enabled-expected.txt: Added.
+ * fast/canvas/offscreen-enabled.html: Added.
+
2017-12-11 Ms2ger <ms2...@igalia.com>
[WPE] Enable most wpt html tests.
Added: trunk/LayoutTests/fast/canvas/offscreen-enabled-expected.txt (0 => 225746)
--- trunk/LayoutTests/fast/canvas/offscreen-enabled-expected.txt (rev 0)
+++ trunk/LayoutTests/fast/canvas/offscreen-enabled-expected.txt 2017-12-11 18:07:48 UTC (rev 225746)
@@ -0,0 +1,3 @@
+createImageBitmap exists
+
+OffscreenCanvas exists
Property changes on: trunk/LayoutTests/fast/canvas/offscreen-enabled-expected.txt
___________________________________________________________________
Added: svn:eol-style
+native
\ No newline at end of property
Added: svn:keywords
+Date Revision
\ No newline at end of property
Added: svn:mime-type
+text/plain
\ No newline at end of property
Added: trunk/LayoutTests/fast/canvas/offscreen-enabled.html (0 => 225746)
--- trunk/LayoutTests/fast/canvas/offscreen-enabled.html (rev 0)
+++ trunk/LayoutTests/fast/canvas/offscreen-enabled.html 2017-12-11 18:07:48 UTC (rev 225746)
@@ -0,0 +1,16 @@
+<script>
+ function log(msg) {
+ const out = document.querySelector("div");
+ const p = document.createElement("p");
+ p.textContent = msg;
+ out.appendChild(p);
+ }
+ if (window.testRunner)
+ window.testRunner.dumpAsText();
+
+ window.addEventListener("load", function () {
+ log('createImageBitmap' in window ? "createImageBitmap exists" : "FAIL: createImageBitmap should exist");
+ log('OffscreenCanvas' in window ? "OffscreenCanvas exists" : "FAIL: OffscreenCanvas should exist");
+ }, false);
+</script>
+<div></div>
Property changes on: trunk/LayoutTests/fast/canvas/offscreen-enabled.html
___________________________________________________________________
Added: svn:eol-style
+native
\ No newline at end of property
Added: svn:keywords
+Date Revision
\ No newline at end of property
Added: svn:mime-type
+text/html
\ No newline at end of property
Modified: trunk/Source/WebCore/ChangeLog (225745 => 225746)
--- trunk/Source/WebCore/ChangeLog 2017-12-11 18:02:37 UTC (rev 225745)
+++ trunk/Source/WebCore/ChangeLog 2017-12-11 18:07:48 UTC (rev 225746)
@@ -1,3 +1,24 @@
+2017-12-11 Dean Jackson <d...@apple.com>
+
+ Add a runtime feature flag for ImageBitmap and OffscreenCanvas
+ https://bugs.webkit.org/show_bug.cgi?id=180652
+ <rdar://problem/35969611>
+
+ Reviewed by Antoine Quint.
+
+ Add a RuntimeEnabledFeature for these interfaces, and link the bindings
+ to the feature.
+
+ Test: fast/canvas/offscreen-enabled.html
+
+ * bindings/js/WebCoreBuiltinNames.h:
+ * html/ImageBitmap.idl:
+ * html/OffscreenCanvas.idl:
+ * page/RuntimeEnabledFeatures.h:
+ (WebCore::RuntimeEnabledFeatures::setImageBitmapOffscreenCanvasEnabled):
+ (WebCore::RuntimeEnabledFeatures::imageBitmapOffscreenCanvasEnabled const):
+ * page/WindowOrWorkerGlobalScope.idl:
+
2017-12-11 Antoine Quint <grao...@apple.com>
[Web Animations] Implement AnimationPlaybackEvent and AnimationPlaybackEventInit
Modified: trunk/Source/WebCore/bindings/js/WebCoreBuiltinNames.h (225745 => 225746)
--- trunk/Source/WebCore/bindings/js/WebCoreBuiltinNames.h 2017-12-11 18:02:37 UTC (rev 225745)
+++ trunk/Source/WebCore/bindings/js/WebCoreBuiltinNames.h 2017-12-11 18:07:48 UTC (rev 225746)
@@ -78,6 +78,7 @@
macro(IDBRequest) \
macro(IDBTransaction) \
macro(IDBVersionChangeEvent) \
+ macro(ImageBitmap) \
macro(InputEvent) \
macro(IntersectionObserver) \
macro(IntersectionObserverEntry) \
@@ -96,6 +97,7 @@
macro(NavigatorCredentials) \
macro(NavigatorMediaDevices) \
macro(NavigatorUserMedia) \
+ macro(OffscreenCanvas) \
macro(PasswordCredential) \
macro(PaymentAddress) \
macro(PaymentRequest) \
@@ -196,6 +198,7 @@
macro(consumeChunk) \
macro(controlledReadableStream) \
macro(controller) \
+ macro(createImageBitmap) \
macro(createReadableStream) \
macro(customElements) \
macro(disturbed) \
Modified: trunk/Source/WebCore/html/ImageBitmap.idl (225745 => 225746)
--- trunk/Source/WebCore/html/ImageBitmap.idl 2017-12-11 18:02:37 UTC (rev 225745)
+++ trunk/Source/WebCore/html/ImageBitmap.idl 2017-12-11 18:07:48 UTC (rev 225746)
@@ -24,6 +24,7 @@
*/
[
+ EnabledAtRuntime=ImageBitmapOffscreenCanvas,
Exposed=(Window,Worker),
ImplementationLacksVTable
] interface ImageBitmap {
Modified: trunk/Source/WebCore/html/OffscreenCanvas.idl (225745 => 225746)
--- trunk/Source/WebCore/html/OffscreenCanvas.idl 2017-12-11 18:02:37 UTC (rev 225745)
+++ trunk/Source/WebCore/html/OffscreenCanvas.idl 2017-12-11 18:07:48 UTC (rev 225746)
@@ -40,6 +40,7 @@
[
ConstructorCallWith=ScriptExecutionContext,
Constructor([EnforceRange] unsigned long width, [EnforceRange] unsigned long height),
+ EnabledAtRuntime=ImageBitmapOffscreenCanvas,
Exposed=(Window)
] interface OffscreenCanvas : EventTarget {
attribute [EnforceRange] unsigned long width;
Modified: trunk/Source/WebCore/page/RuntimeEnabledFeatures.h (225745 => 225746)
--- trunk/Source/WebCore/page/RuntimeEnabledFeatures.h 2017-12-11 18:02:37 UTC (rev 225745)
+++ trunk/Source/WebCore/page/RuntimeEnabledFeatures.h 2017-12-11 18:07:48 UTC (rev 225746)
@@ -174,6 +174,9 @@
bool webGPUEnabled() const { return m_isWebGPUEnabled; }
#endif
+ void setImageBitmapOffscreenCanvasEnabled(bool isEnabled) { m_isImageBitmapOffscreenCanvasEnabled = isEnabled; }
+ bool imageBitmapOffscreenCanvasEnabled() const { return m_isImageBitmapOffscreenCanvasEnabled; }
+
void setCacheAPIEnabled(bool isEnabled) { m_isCacheAPIEnabled = isEnabled; }
bool cacheAPIEnabled() const { return m_isCacheAPIEnabled; }
@@ -320,6 +323,8 @@
bool m_isWebGPUEnabled { false };
#endif
+ bool m_isImageBitmapOffscreenCanvasEnabled { true };
+
bool m_isCacheAPIEnabled { false };
bool m_isFetchAPIEnabled { true };
Modified: trunk/Source/WebCore/page/WindowOrWorkerGlobalScope.idl (225745 => 225746)
--- trunk/Source/WebCore/page/WindowOrWorkerGlobalScope.idl 2017-12-11 18:02:37 UTC (rev 225745)
+++ trunk/Source/WebCore/page/WindowOrWorkerGlobalScope.idl 2017-12-11 18:07:48 UTC (rev 225746)
@@ -54,6 +54,6 @@
[EnabledAtRuntime=IsSecureContextAttribute] readonly attribute boolean isSecureContext;
// ImageBitmap.
- Promise<ImageBitmap> createImageBitmap(ImageBitmapSource image, optional ImageBitmapOptions options);
- Promise<ImageBitmap> createImageBitmap(ImageBitmapSource image, long sx, long sy, long sw, long sh, optional ImageBitmapOptions options);
+ [EnabledAtRuntime=ImageBitmapOffscreenCanvas] Promise<ImageBitmap> createImageBitmap(ImageBitmapSource image, optional ImageBitmapOptions options);
+ [EnabledAtRuntime=ImageBitmapOffscreenCanvas] Promise<ImageBitmap> createImageBitmap(ImageBitmapSource image, long sx, long sy, long sw, long sh, optional ImageBitmapOptions options);
};
Modified: trunk/Source/WebKit/ChangeLog (225745 => 225746)
--- trunk/Source/WebKit/ChangeLog 2017-12-11 18:02:37 UTC (rev 225745)
+++ trunk/Source/WebKit/ChangeLog 2017-12-11 18:07:48 UTC (rev 225746)
@@ -1,3 +1,15 @@
+2017-12-11 Dean Jackson <d...@apple.com>
+
+ Add a runtime feature flag for ImageBitmap and OffscreenCanvas
+ https://bugs.webkit.org/show_bug.cgi?id=180652
+ <rdar://problem/35969611>
+
+ Reviewed by Antoine Quint.
+
+ Add an experimental feature flag for these interfaces.
+
+ * Shared/WebPreferences.yaml:
+
2017-12-10 Stephan Szabo <stephan.sz...@sony.com>
APIClient.h uses things from <tuple> without including it explicitly
Modified: trunk/Source/WebKit/Shared/WebPreferences.yaml (225745 => 225746)
--- trunk/Source/WebKit/Shared/WebPreferences.yaml 2017-12-11 18:02:37 UTC (rev 225745)
+++ trunk/Source/WebKit/Shared/WebPreferences.yaml 2017-12-11 18:07:48 UTC (rev 225746)
@@ -1077,6 +1077,14 @@
humanReadableDescription: "CSS Spring Animation prototype"
category: experimental
+ImageBitmapOffscreenCanvasEnabled:
+ type: bool
+ defaultValue: true
+ humanReadableName: "ImageBitmap and OffscreenCanvas"
+ humanReadableDescription: "Support for the ImageBitmap and OffscreenCanvas APIs"
+ category: experimental
+ webcoreBinding: RuntimeEnabledFeatures
+
LinkPreloadEnabled:
type: bool
defaultValue: DEFAULT_EXPERIMENTAL_FEATURES_ENABLED
Modified: trunk/Websites/webkit.org/ChangeLog (225745 => 225746)
--- trunk/Websites/webkit.org/ChangeLog 2017-12-11 18:02:37 UTC (rev 225745)
+++ trunk/Websites/webkit.org/ChangeLog 2017-12-11 18:07:48 UTC (rev 225746)
@@ -1,3 +1,15 @@
+2017-12-11 Dean Jackson <d...@apple.com>
+
+ Add a runtime feature flag for ImageBitmap and OffscreenCanvas
+ https://bugs.webkit.org/show_bug.cgi?id=180652
+ <rdar://problem/35969611>
+
+ Reviewed by Antoine Quint.
+
+ Simple test to validate if these interfaces are enabled.
+
+ * experimental-features.html:
+
2017-11-28 Dean Jackson <d...@apple.com>
Include gl-matrix directly since github doesn't serve the correct mime type
Modified: trunk/Websites/webkit.org/experimental-features.html (225745 => 225746)
--- trunk/Websites/webkit.org/experimental-features.html 2017-12-11 18:02:37 UTC (rev 225745)
+++ trunk/Websites/webkit.org/experimental-features.html 2017-12-11 18:07:48 UTC (rev 225746)
@@ -116,6 +116,9 @@
return true;
}
+function testImageBitmapOffscreenCanvas() {
+ return 'createImageBitmap' in window && 'OffscreenCanvas' in window;
+}
window.addEventListener("load", function () {
Array.from(document.querySelectorAll(".test")).forEach(element => {
var enabled = false;
@@ -138,6 +141,7 @@
<div class="test" id="SpringAnimation"><p>CSS Spring Animations</p></div>
<div class="test" id="ES6Modules"><p>ES6 Modules in HTML</p></div>
+ <div class="test" id="ImageBitmapOffscreenCanvas"><p>ImageBitmap and OffscreenCanvas</p></div>
<div class="test" id="LinkPreload"><p>Link Preload</p></div>
<div class="test" id="SubtleCrypto"><p>SubtleCrypto</p></div>
<div class="test" id="VariationFonts"><p>Variation Fonts</p></div>