Diff
Modified: trunk/LayoutTests/ChangeLog (211340 => 211341)
--- trunk/LayoutTests/ChangeLog 2017-01-28 22:35:17 UTC (rev 211340)
+++ trunk/LayoutTests/ChangeLog 2017-01-28 22:53:54 UTC (rev 211341)
@@ -1,3 +1,35 @@
+2017-01-28 Yoav Weiss <y...@yoav.ws>
+
+ Add Link Preload as an off-by-default experimental feature menu item.
+ https://bugs.webkit.org/show_bug.cgi?id=167201
+
+ Reviewed by Ryosuke Niwa.
+
+ Removed code explicitly enabling Link preload from the tests, as it is now
+ turned on by default for testing. Corrected expectation files accordingly.
+
+ * http/tests/fetch/redirectmode-and-preload.html:
+ * http/tests/preload/delaying_onload_link_preload_after_discovery.html:
+ * http/tests/preload/delaying_onload_link_preload_after_discovery_image.html:
+ * http/tests/preload/download_resources-expected.txt:
+ * http/tests/preload/download_resources.html:
+ * http/tests/preload/download_resources_from_header_iframe.html:
+ * http/tests/preload/download_resources_from_invalid_headers.html:
+ * http/tests/preload/dynamic_adding_preload.html:
+ * http/tests/preload/dynamic_remove_preload_href-expected.txt:
+ * http/tests/preload/dynamic_remove_preload_href.html:
+ * http/tests/preload/not_delaying_window_onload_before_discovery.html:
+ * http/tests/preload/onerror_event-expected.txt:
+ * http/tests/preload/onerror_event.html:
+ * http/tests/preload/onload_event-expected.txt:
+ * http/tests/preload/onload_event.html:
+ * http/tests/preload/resources/download_resources_from_header.php:
+ * http/tests/preload/resources/invalid_resources_from_header.php:
+ * http/tests/preload/single_download_preload-expected.txt:
+ * http/tests/preload/single_download_preload.html:
+ * http/tests/security/cached-cross-origin-preloaded-css-stylesheet.html:
+ * http/tests/security/cached-cross-origin-preloading-css-stylesheet.html:
+
2017-01-28 Antoine Quint <grao...@apple.com>
[Modern Media Controls] REGRESSION: Video stops playing after going into Full Screen in media documents
Modified: trunk/LayoutTests/http/tests/fetch/redirectmode-and-preload.html (211340 => 211341)
--- trunk/LayoutTests/http/tests/fetch/redirectmode-and-preload.html 2017-01-28 22:35:17 UTC (rev 211340)
+++ trunk/LayoutTests/http/tests/fetch/redirectmode-and-preload.html 2017-01-28 22:53:54 UTC (rev 211341)
@@ -8,10 +8,6 @@
<meta name="author" title="Canon Research France" href=""
<script src=""
<script src=""
- <script>
-if (window.internals)
- internals.settings.setLinkPreloadEnabled(true);
- </script>
<link rel=preload _onload_="startTests()" href=""
</head>
<body>
Modified: trunk/LayoutTests/http/tests/preload/delaying_onload_link_preload_after_discovery.html (211340 => 211341)
--- trunk/LayoutTests/http/tests/preload/delaying_onload_link_preload_after_discovery.html 2017-01-28 22:35:17 UTC (rev 211340)
+++ trunk/LayoutTests/http/tests/preload/delaying_onload_link_preload_after_discovery.html 2017-01-28 22:53:54 UTC (rev 211341)
@@ -1,7 +1,5 @@
<!DOCTYPE html>
<script>
- if (window.internals)
- window.internals.settings.setLinkPreloadEnabled(true);
if (window.testRunner) {
testRunner.dumpAsText()
testRunner.waitUntilDone();
@@ -14,8 +12,6 @@
<script>
window.addEventListener("load", function() {
shouldBeTrue("finishedScript");
- if (window.internals)
- window.internals.settings.setLinkPreloadEnabled(false);
setTimeout(function() { testRunner.notifyDone(); }, 0);
});
var scr = document.createElement("script");
Modified: trunk/LayoutTests/http/tests/preload/delaying_onload_link_preload_after_discovery_image.html (211340 => 211341)
--- trunk/LayoutTests/http/tests/preload/delaying_onload_link_preload_after_discovery_image.html 2017-01-28 22:35:17 UTC (rev 211340)
+++ trunk/LayoutTests/http/tests/preload/delaying_onload_link_preload_after_discovery_image.html 2017-01-28 22:53:54 UTC (rev 211341)
@@ -1,7 +1,5 @@
<!DOCTYPE html>
<script>
- if (window.internals)
- window.internals.settings.setLinkPreloadEnabled(true);
if (window.testRunner) {
testRunner.dumpAsText()
testRunner.waitUntilDone();
@@ -14,8 +12,6 @@
<script>
window.addEventListener("load", function() {
shouldBeTrue("finishedImage");
- if (window.internals)
- window.internals.settings.setLinkPreloadEnabled(false);
testRunner.notifyDone();
});
var img = new Image();
Modified: trunk/LayoutTests/http/tests/preload/download_resources-expected.txt (211340 => 211341)
--- trunk/LayoutTests/http/tests/preload/download_resources-expected.txt 2017-01-28 22:35:17 UTC (rev 211340)
+++ trunk/LayoutTests/http/tests/preload/download_resources-expected.txt 2017-01-28 22:53:54 UTC (rev 211341)
@@ -1,4 +1,4 @@
-CONSOLE MESSAGE: line 15: <link rel=preload> must have a valid `as` value
+CONSOLE MESSAGE: line 11: <link rel=preload> must have a valid `as` value
PASS internals.isPreloaded('../resources/dummy.js'); is true
PASS internals.isPreloaded('../resources/dummy.css'); is true
PASS internals.isPreloaded('../resources/square.png'); is true
Modified: trunk/LayoutTests/http/tests/preload/download_resources.html (211340 => 211341)
--- trunk/LayoutTests/http/tests/preload/download_resources.html 2017-01-28 22:35:17 UTC (rev 211340)
+++ trunk/LayoutTests/http/tests/preload/download_resources.html 2017-01-28 22:53:54 UTC (rev 211341)
@@ -1,10 +1,6 @@
<!DOCTYPE html>
<html>
<head>
-<script>
- if (window.internals)
- window.internals.settings.setLinkPreloadEnabled(true);
-</script>
<script src=""
<link rel=preload href="" as=script>
<link rel=preload href="" as=style>
@@ -29,7 +25,3 @@
shouldBeFalse("internals.isPreloaded('../resources/dummy.xml?badvalue');");
shouldBeTrue("internals.isPreloaded('../resources/dummy.xml');");
</script>
-<script>
- if (window.internals)
- window.internals.settings.setLinkPreloadEnabled(false);
-</script>
Modified: trunk/LayoutTests/http/tests/preload/download_resources_from_header_iframe.html (211340 => 211341)
--- trunk/LayoutTests/http/tests/preload/download_resources_from_header_iframe.html 2017-01-28 22:35:17 UTC (rev 211340)
+++ trunk/LayoutTests/http/tests/preload/download_resources_from_header_iframe.html 2017-01-28 22:53:54 UTC (rev 211341)
@@ -1,7 +1,5 @@
<!DOCTYPE html>
<script>
- if (window.internals)
- window.internals.settings.setLinkPreloadEnabled(true);
if (window.testRunner) {
testRunner.dumpAsText();
testRunner.dumpChildFramesAsText();
Modified: trunk/LayoutTests/http/tests/preload/download_resources_from_invalid_headers.html (211340 => 211341)
--- trunk/LayoutTests/http/tests/preload/download_resources_from_invalid_headers.html 2017-01-28 22:35:17 UTC (rev 211340)
+++ trunk/LayoutTests/http/tests/preload/download_resources_from_invalid_headers.html 2017-01-28 22:53:54 UTC (rev 211341)
@@ -1,7 +1,5 @@
<!DOCTYPE html>
<script>
- if (window.internals)
- window.internals.settings.setLinkPreloadEnabled(true);
if (window.testRunner) {
testRunner.dumpAsText();
testRunner.dumpChildFramesAsText();
Modified: trunk/LayoutTests/http/tests/preload/dynamic_adding_preload.html (211340 => 211341)
--- trunk/LayoutTests/http/tests/preload/dynamic_adding_preload.html 2017-01-28 22:35:17 UTC (rev 211340)
+++ trunk/LayoutTests/http/tests/preload/dynamic_adding_preload.html 2017-01-28 22:53:54 UTC (rev 211341)
@@ -1,10 +1,6 @@
<!DOCTYPE html>
<html>
<head>
-<script>
- if (window.internals)
- window.internals.settings.setLinkPreloadEnabled(true);
-</script>
<script src=""
<body>
<script>
@@ -17,8 +13,5 @@
<script src=""
<script>
shouldBeTrue("internals.isPreloaded('../resources/dummy.js');");
-
- if (window.internals)
- window.internals.settings.setLinkPreloadEnabled(false);
</script>
</body>
Modified: trunk/LayoutTests/http/tests/preload/dynamic_remove_preload_href-expected.txt (211340 => 211341)
--- trunk/LayoutTests/http/tests/preload/dynamic_remove_preload_href-expected.txt 2017-01-28 22:35:17 UTC (rev 211340)
+++ trunk/LayoutTests/http/tests/preload/dynamic_remove_preload_href-expected.txt 2017-01-28 22:53:54 UTC (rev 211341)
@@ -1,4 +1,4 @@
-CONSOLE MESSAGE: line 19: <link rel=preload> has an invalid `href` value
+CONSOLE MESSAGE: line 17: <link rel=preload> has an invalid `href` value
PASS downloadedImage is false
PASS successfullyParsed is true
Modified: trunk/LayoutTests/http/tests/preload/dynamic_remove_preload_href.html (211340 => 211341)
--- trunk/LayoutTests/http/tests/preload/dynamic_remove_preload_href.html 2017-01-28 22:35:17 UTC (rev 211340)
+++ trunk/LayoutTests/http/tests/preload/dynamic_remove_preload_href.html 2017-01-28 22:53:54 UTC (rev 211341)
@@ -2,10 +2,8 @@
<html>
<head>
<script>
- if (window.internals) {
- window.internals.settings.setLinkPreloadEnabled(true);
+ if (window.internals)
window.internals.settings.setResourceTimingEnabled(true);
- }
</script>
<script src=""
<body>
@@ -24,10 +22,8 @@
downloadedImage = true;
}
shouldBeFalse("downloadedImage");
- if (window.internals) {
- window.internals.settings.setLinkPreloadEnabled(false);
+ if (window.internals)
window.internals.settings.setResourceTimingEnabled(false);
- }
});
</script>
</body>
Modified: trunk/LayoutTests/http/tests/preload/not_delaying_window_onload_before_discovery.html (211340 => 211341)
--- trunk/LayoutTests/http/tests/preload/not_delaying_window_onload_before_discovery.html 2017-01-28 22:35:17 UTC (rev 211340)
+++ trunk/LayoutTests/http/tests/preload/not_delaying_window_onload_before_discovery.html 2017-01-28 22:53:54 UTC (rev 211341)
@@ -1,7 +1,5 @@
<!DOCTYPE html>
<script>
- if (window.internals)
- window.internals.settings.setLinkPreloadEnabled(true);
if (window.testRunner) {
testRunner.dumpAsText()
testRunner.waitUntilDone();
@@ -15,8 +13,6 @@
function test() {
shouldBeTrue("windowOnLoad");
if (finishedImage && finishedScript) {
- if (window.internals)
- window.internals.settings.setLinkPreloadEnabled(false);
if (window.testRunner)
testRunner.notifyDone();
}
Modified: trunk/LayoutTests/http/tests/preload/onerror_event-expected.txt (211340 => 211341)
--- trunk/LayoutTests/http/tests/preload/onerror_event-expected.txt 2017-01-28 22:35:17 UTC (rev 211340)
+++ trunk/LayoutTests/http/tests/preload/onerror_event-expected.txt 2017-01-28 22:53:54 UTC (rev 211341)
@@ -1,4 +1,4 @@
-CONSOLE MESSAGE: line 29: <link rel=preload> must have a valid `as` value
+CONSOLE MESSAGE: line 27: <link rel=preload> must have a valid `as` value
PASS successfullyParsed is true
TEST COMPLETE
Modified: trunk/LayoutTests/http/tests/preload/onerror_event.html (211340 => 211341)
--- trunk/LayoutTests/http/tests/preload/onerror_event.html 2017-01-28 22:35:17 UTC (rev 211340)
+++ trunk/LayoutTests/http/tests/preload/onerror_event.html 2017-01-28 22:53:54 UTC (rev 211341)
@@ -1,7 +1,5 @@
<!DOCTYPE html>
<script>
- if (window.internals)
- window.internals.settings.setLinkPreloadEnabled(true);
if (window.testRunner) {
testRunner.dumpAsText()
testRunner.waitUntilDone();
@@ -37,8 +35,6 @@
shouldBeTrue("trackFailed");
shouldBeTrue("gibrishFailed");
shouldBeTrue("noTypeFailed");
- if (window.internals)
- window.internals.settings.setLinkPreloadEnabled(false);
if (window.testRunner)
testRunner.notifyDone();
};
Modified: trunk/LayoutTests/http/tests/preload/onload_event-expected.txt (211340 => 211341)
--- trunk/LayoutTests/http/tests/preload/onload_event-expected.txt 2017-01-28 22:35:17 UTC (rev 211340)
+++ trunk/LayoutTests/http/tests/preload/onload_event-expected.txt 2017-01-28 22:53:54 UTC (rev 211341)
@@ -1,5 +1,5 @@
-CONSOLE MESSAGE: line 35: <link rel=preload> must have a valid `as` value
-CONSOLE MESSAGE: line 36: <link rel=preload> must have a valid `as` value
+CONSOLE MESSAGE: line 33: <link rel=preload> must have a valid `as` value
+CONSOLE MESSAGE: line 34: <link rel=preload> must have a valid `as` value
PASS successfullyParsed is true
TEST COMPLETE
Modified: trunk/LayoutTests/http/tests/preload/onload_event.html (211340 => 211341)
--- trunk/LayoutTests/http/tests/preload/onload_event.html 2017-01-28 22:35:17 UTC (rev 211340)
+++ trunk/LayoutTests/http/tests/preload/onload_event.html 2017-01-28 22:53:54 UTC (rev 211341)
@@ -1,7 +1,5 @@
<!DOCTYPE html>
<script>
- if (window.internals)
- window.internals.settings.setLinkPreloadEnabled(true);
if (window.testRunner) {
testRunner.dumpAsText()
testRunner.waitUntilDone();
@@ -50,8 +48,6 @@
shouldBeTrue("xsltErrored");
shouldBeTrue("noTypeLoaded");
shouldBeTrue("emptyTypeLoaded");
- if (window.internals)
- window.internals.settings.setLinkPreloadEnabled(false);
if (window.testRunner)
testRunner.notifyDone();
}
Modified: trunk/LayoutTests/http/tests/preload/resources/download_resources_from_header.php (211340 => 211341)
--- trunk/LayoutTests/http/tests/preload/resources/download_resources_from_header.php 2017-01-28 22:35:17 UTC (rev 211340)
+++ trunk/LayoutTests/http/tests/preload/resources/download_resources_from_header.php 2017-01-28 22:53:54 UTC (rev 211341)
@@ -20,7 +20,3 @@
shouldBeFalse("internals.isPreloaded('../resources/dummy.xml?badvalue');");
shouldBeTrue("internals.isPreloaded('../resources/dummy.xml');");
</script>
-<script>
- if (window.internals)
- window.internals.settings.setLinkPreloadEnabled(false);
-</script>
Modified: trunk/LayoutTests/http/tests/preload/resources/invalid_resources_from_header.php (211340 => 211341)
--- trunk/LayoutTests/http/tests/preload/resources/invalid_resources_from_header.php 2017-01-28 22:35:17 UTC (rev 211340)
+++ trunk/LayoutTests/http/tests/preload/resources/invalid_resources_from_header.php 2017-01-28 22:53:54 UTC (rev 211341)
@@ -40,7 +40,3 @@
shouldBeFalse("internals.isPreloaded('#foobar');");
shouldBeFalse("internals.isPreloaded('../resources/Ahem.ttf');");
</script>
-<script>
- if (window.internals)
- window.internals.settings.setLinkPreloadEnabled(false);
-</script>
Modified: trunk/LayoutTests/http/tests/preload/single_download_preload-expected.txt (211340 => 211341)
--- trunk/LayoutTests/http/tests/preload/single_download_preload-expected.txt 2017-01-28 22:35:17 UTC (rev 211340)
+++ trunk/LayoutTests/http/tests/preload/single_download_preload-expected.txt 2017-01-28 22:53:54 UTC (rev 211341)
@@ -1,4 +1,4 @@
-CONSOLE MESSAGE: line 21: <link rel=preload> must have a valid `as` value
+CONSOLE MESSAGE: line 19: <link rel=preload> must have a valid `as` value
PASS Makes sure that preloaded resources are not downloaded again when used
Modified: trunk/LayoutTests/http/tests/preload/single_download_preload.html (211340 => 211341)
--- trunk/LayoutTests/http/tests/preload/single_download_preload.html 2017-01-28 22:35:17 UTC (rev 211340)
+++ trunk/LayoutTests/http/tests/preload/single_download_preload.html 2017-01-28 22:53:54 UTC (rev 211341)
@@ -1,9 +1,7 @@
<!DOCTYPE html>
<script>
- if (window.internals) {
- internals.settings.setLinkPreloadEnabled(true);
+ if (window.internals)
internals.settings.setResourceTimingEnabled(true);
- }
</script>
<script src=""
<script src=""
@@ -61,10 +59,8 @@
// FIXME: XHR should trigger a single download, but it downloads 2 resources instead.
verifyDownloadNumber("http://127.0.0.1:8000/resources/dummy.xml", 2);
// FIXME: We should verify for video and audio as well, but they seem to (flakily?) trigger multiple partial requests.
- if (window.internals) {
- internals.settings.setLinkPreloadEnabled(false);
+ if (window.internals)
internals.settings.setResourceTimingEnabled(false);
- }
t.done();
}), 100);
}));
Modified: trunk/LayoutTests/http/tests/security/cached-cross-origin-preloaded-css-stylesheet.html (211340 => 211341)
--- trunk/LayoutTests/http/tests/security/cached-cross-origin-preloaded-css-stylesheet.html 2017-01-28 22:35:17 UTC (rev 211340)
+++ trunk/LayoutTests/http/tests/security/cached-cross-origin-preloaded-css-stylesheet.html 2017-01-28 22:53:54 UTC (rev 211341)
@@ -1,7 +1,5 @@
<!DOCTYPE html>
<script>
-if (window.internals)
- internals.settings.setLinkPreloadEnabled(true);
if (window.testRunner) {
testRunner.dumpAsText();
testRunner.waitUntilDone();
Modified: trunk/LayoutTests/http/tests/security/cached-cross-origin-preloading-css-stylesheet.html (211340 => 211341)
--- trunk/LayoutTests/http/tests/security/cached-cross-origin-preloading-css-stylesheet.html 2017-01-28 22:35:17 UTC (rev 211340)
+++ trunk/LayoutTests/http/tests/security/cached-cross-origin-preloading-css-stylesheet.html 2017-01-28 22:53:54 UTC (rev 211341)
@@ -2,8 +2,6 @@
<html>
<body>
<script>
-if (window.internals)
- internals.settings.setLinkPreloadEnabled(true);
if (window.testRunner) {
testRunner.dumpAsText();
testRunner.waitUntilDone();
Modified: trunk/Source/WebCore/ChangeLog (211340 => 211341)
--- trunk/Source/WebCore/ChangeLog 2017-01-28 22:35:17 UTC (rev 211340)
+++ trunk/Source/WebCore/ChangeLog 2017-01-28 22:53:54 UTC (rev 211341)
@@ -1,3 +1,21 @@
+2017-01-28 Yoav Weiss <y...@yoav.ws>
+
+ Add Link Preload as an off-by-default experimental feature menu item.
+ https://bugs.webkit.org/show_bug.cgi?id=167201
+
+ Reviewed by Ryosuke Niwa.
+
+ Removed the explicit setting of the Link Preload experimental feature,
+ as it is now on by default for testing.
+
+ No new tests as this just removes methods from settings.
+
+ * testing/InternalSettings.cpp:
+ (WebCore::InternalSettings::Backup::Backup):
+ (WebCore::InternalSettings::Backup::restoreTo):
+ * testing/InternalSettings.h:
+ * testing/InternalSettings.idl:
+
2017-01-28 Joseph Pecoraro <pecor...@apple.com>
Fix typo in error message
Modified: trunk/Source/WebCore/testing/InternalSettings.cpp (211340 => 211341)
--- trunk/Source/WebCore/testing/InternalSettings.cpp 2017-01-28 22:35:17 UTC (rev 211340)
+++ trunk/Source/WebCore/testing/InternalSettings.cpp 2017-01-28 22:53:54 UTC (rev 211341)
@@ -95,7 +95,6 @@
, m_forcedDisplayIsMonochromeAccessibilityValue(settings.forcedDisplayIsMonochromeAccessibilityValue())
, m_forcedPrefersReducedMotionAccessibilityValue(settings.forcedPrefersReducedMotionAccessibilityValue())
, m_resourceTimingEnabled(RuntimeEnabledFeatures::sharedFeatures().resourceTimingEnabled())
- , m_linkPreloadEnabled(RuntimeEnabledFeatures::sharedFeatures().linkPreloadEnabled())
#if ENABLE(INDEXED_DATABASE_IN_WORKERS)
, m_indexedDBWorkersEnabled(RuntimeEnabledFeatures::sharedFeatures().indexedDBWorkersEnabled())
#endif
@@ -184,7 +183,6 @@
Settings::setAllowsAnySSLCertificate(false);
RuntimeEnabledFeatures::sharedFeatures().setResourceTimingEnabled(m_resourceTimingEnabled);
- RuntimeEnabledFeatures::sharedFeatures().setLinkPreloadEnabled(m_linkPreloadEnabled);
#if ENABLE(INDEXED_DATABASE_IN_WORKERS)
RuntimeEnabledFeatures::sharedFeatures().setIndexedDBWorkersEnabled(m_indexedDBWorkersEnabled);
#endif
@@ -671,11 +669,6 @@
RuntimeEnabledFeatures::sharedFeatures().setResourceTimingEnabled(enabled);
}
-void InternalSettings::setLinkPreloadEnabled(bool enabled)
-{
- RuntimeEnabledFeatures::sharedFeatures().setLinkPreloadEnabled(enabled);
-}
-
void InternalSettings::setIndexedDBWorkersEnabled(bool enabled)
{
#if ENABLE(INDEXED_DATABASE_IN_WORKERS)
Modified: trunk/Source/WebCore/testing/InternalSettings.h (211340 => 211341)
--- trunk/Source/WebCore/testing/InternalSettings.h 2017-01-28 22:35:17 UTC (rev 211340)
+++ trunk/Source/WebCore/testing/InternalSettings.h 2017-01-28 22:53:54 UTC (rev 211341)
@@ -110,7 +110,6 @@
// RuntimeEnabledFeatures.
static void setResourceTimingEnabled(bool);
- static void setLinkPreloadEnabled(bool);
static void setIndexedDBWorkersEnabled(bool);
static void setCSSGridLayoutEnabled(bool);
static void setWebGL2Enabled(bool);
@@ -188,7 +187,6 @@
// Runtime enabled settings.
bool m_resourceTimingEnabled;
- bool m_linkPreloadEnabled;
bool m_indexedDBWorkersEnabled;
bool m_cssGridLayoutEnabled;
bool m_webGL2Enabled;
Modified: trunk/Source/WebCore/testing/InternalSettings.idl (211340 => 211341)
--- trunk/Source/WebCore/testing/InternalSettings.idl 2017-01-28 22:35:17 UTC (rev 211340)
+++ trunk/Source/WebCore/testing/InternalSettings.idl 2017-01-28 22:53:54 UTC (rev 211341)
@@ -83,7 +83,6 @@
// RuntimeEnabledFeatures.
void setResourceTimingEnabled(boolean enabled);
- void setLinkPreloadEnabled(boolean enabled);
void setIndexedDBWorkersEnabled(boolean enabled);
void setCSSGridLayoutEnabled(boolean enabled);
void setWebGL2Enabled(boolean enabled);
Modified: trunk/Source/WebKit/mac/ChangeLog (211340 => 211341)
--- trunk/Source/WebKit/mac/ChangeLog 2017-01-28 22:35:17 UTC (rev 211340)
+++ trunk/Source/WebKit/mac/ChangeLog 2017-01-28 22:53:54 UTC (rev 211341)
@@ -1,3 +1,18 @@
+2017-01-28 Yoav Weiss <y...@yoav.ws>
+
+ Add Link Preload as an off-by-default experimental feature menu item.
+ https://bugs.webkit.org/show_bug.cgi?id=167201
+
+ Reviewed by Ryosuke Niwa.
+
+ * WebView/WebPreferenceKeysPrivate.h:
+ * WebView/WebPreferences.mm:
+ (-[WebPreferences linkPreloadEnabled]):
+ (-[WebPreferences setLinkPreloadEnabled:]):
+ * WebView/WebPreferencesPrivate.h:
+ * WebView/WebView.mm:
+ (-[WebView _preferencesChanged:]):
+
2017-01-28 Joseph Pecoraro <pecor...@apple.com>
Add User Timing Experimental Feature
Modified: trunk/Source/WebKit/mac/WebView/WebPreferenceKeysPrivate.h (211340 => 211341)
--- trunk/Source/WebKit/mac/WebView/WebPreferenceKeysPrivate.h 2017-01-28 22:35:17 UTC (rev 211340)
+++ trunk/Source/WebKit/mac/WebView/WebPreferenceKeysPrivate.h 2017-01-28 22:53:54 UTC (rev 211341)
@@ -176,6 +176,7 @@
#define WebKitSubtleCryptoEnabledPreferenceKey @"WebKitSubtleCryptoEnabled"
#define WebKitMediaStreamEnabledPreferenceKey @"WebKitMediaStreamEnabled"
#define WebKitPeerConnectionEnabledPreferenceKey @"WebKitPeerConnectionEnabled"
+#define WebKitLinkPreloadEnabledPreferenceKey @"WebKitLinkPreloadEnabled"
#if !TARGET_OS_IPHONE
// These are private both because callers should be using the cover methods and because the
Modified: trunk/Source/WebKit/mac/WebView/WebPreferences.mm (211340 => 211341)
--- trunk/Source/WebKit/mac/WebView/WebPreferences.mm 2017-01-28 22:35:17 UTC (rev 211340)
+++ trunk/Source/WebKit/mac/WebView/WebPreferences.mm 2017-01-28 22:53:54 UTC (rev 211341)
@@ -2755,6 +2755,16 @@
[self _setBoolValue:flag forKey:WebKitPeerConnectionEnabledPreferenceKey];
}
+- (BOOL)linkPreloadEnabled
+{
+ return [self _boolValueForKey:WebKitLinkPreloadEnabledPreferenceKey];
+}
+
+- (void)setLinkPreloadEnabled:(BOOL)flag
+{
+ [self _setBoolValue:flag forKey:WebKitLinkPreloadEnabledPreferenceKey];
+}
+
- (void)setMetaRefreshEnabled:(BOOL)enabled
{
[self setHTTPEquivEnabled:enabled];
Modified: trunk/Source/WebKit/mac/WebView/WebPreferencesPrivate.h (211340 => 211341)
--- trunk/Source/WebKit/mac/WebView/WebPreferencesPrivate.h 2017-01-28 22:35:17 UTC (rev 211340)
+++ trunk/Source/WebKit/mac/WebView/WebPreferencesPrivate.h 2017-01-28 22:53:54 UTC (rev 211341)
@@ -529,5 +529,6 @@
@property (nonatomic) BOOL allowsInlineMediaPlaybackAfterFullscreen;
@property (nonatomic) BOOL intersectionObserverEnabled;
@property (nonatomic) BOOL userTimingEnabled;
+@property (nonatomic) BOOL linkPreloadEnabled;
@end
Modified: trunk/Source/WebKit/mac/WebView/WebView.mm (211340 => 211341)
--- trunk/Source/WebKit/mac/WebView/WebView.mm 2017-01-28 22:35:17 UTC (rev 211340)
+++ trunk/Source/WebKit/mac/WebView/WebView.mm 2017-01-28 22:53:54 UTC (rev 211341)
@@ -2912,6 +2912,8 @@
RuntimeEnabledFeatures::sharedFeatures().setUserTimingEnabled(preferences.userTimingEnabled);
+ RuntimeEnabledFeatures::sharedFeatures().setLinkPreloadEnabled(preferences.linkPreloadEnabled);
+
NSTimeInterval timeout = [preferences incrementalRenderingSuppressionTimeoutInSeconds];
if (timeout > 0)
settings.setIncrementalRenderingSuppressionTimeoutInSeconds(timeout);
Modified: trunk/Source/WebKit/win/ChangeLog (211340 => 211341)
--- trunk/Source/WebKit/win/ChangeLog 2017-01-28 22:35:17 UTC (rev 211340)
+++ trunk/Source/WebKit/win/ChangeLog 2017-01-28 22:53:54 UTC (rev 211341)
@@ -1,3 +1,19 @@
+2017-01-28 Yoav Weiss <y...@yoav.ws>
+
+ Add Link Preload as an off-by-default experimental feature menu item.
+ https://bugs.webkit.org/show_bug.cgi?id=167201
+
+ Reviewed by Ryosuke Niwa.
+
+ * WebPreferenceKeysPrivate.h:
+ * WebPreferences.cpp:
+ (WebPreferences::initializeDefaultSettings):
+ (WebPreferences::valueForKey):
+ (WebPreferences::setLinkPreloadEnabled):
+ (WebPreferences::linkPreloadEnabled):
+ * WebPreferences.h:
+ * Interfaces/IWebPreferencesPrivate.idl:
+
2017-01-28 Joseph Pecoraro <pecor...@apple.com>
Add User Timing Experimental Feature
Modified: trunk/Source/WebKit/win/Interfaces/IWebPreferencesPrivate.idl (211340 => 211341)
--- trunk/Source/WebKit/win/Interfaces/IWebPreferencesPrivate.idl 2017-01-28 22:35:17 UTC (rev 211340)
+++ trunk/Source/WebKit/win/Interfaces/IWebPreferencesPrivate.idl 2017-01-28 22:53:54 UTC (rev 211341)
@@ -196,4 +196,6 @@
HRESULT setWebAnimationsEnabled([in] BOOL enabled);
HRESULT userTimingEnabled([out, retval] BOOL*);
HRESULT setUserTimingEnabled([in] BOOL enabled);
+ HRESULT linkPreloadEnabled([out, retval] BOOL*);
+ HRESULT setLinkPreloadEnabled([in] BOOL enabled);
}
Modified: trunk/Source/WebKit/win/WebPreferenceKeysPrivate.h (211340 => 211341)
--- trunk/Source/WebKit/win/WebPreferenceKeysPrivate.h 2017-01-28 22:35:17 UTC (rev 211340)
+++ trunk/Source/WebKit/win/WebPreferenceKeysPrivate.h 2017-01-28 22:53:54 UTC (rev 211341)
@@ -180,3 +180,5 @@
#define WebKitWebAnimationsEnabledPreferenceKey "WebKitWebAnimationsEnabled"
#define WebKitUserTimingEnabledPreferenceKey "WebKitUserTimingEnabled"
+
+#define WebKitLinkPreloadEnabledPreferenceKey "WebKitLinkPreloadEnabled"
Modified: trunk/Source/WebKit/win/WebPreferences.cpp (211340 => 211341)
--- trunk/Source/WebKit/win/WebPreferences.cpp 2017-01-28 22:35:17 UTC (rev 211340)
+++ trunk/Source/WebKit/win/WebPreferences.cpp 2017-01-28 22:53:54 UTC (rev 211341)
@@ -309,6 +309,8 @@
CFDictionaryAddValue(defaults, CFSTR(WebKitUserTimingEnabledPreferenceKey), kCFBooleanFalse);
+ CFDictionaryAddValue(defaults, CFSTR(WebKitLinkPreloadEnabledPreferenceKey), kCFBooleanFalse);
+
defaultSettings = defaults;
}
@@ -2008,6 +2010,20 @@
return S_OK;
}
+HRESULT WebPreferences::setLinkPreloadEnabled(BOOL enabled)
+{
+ setBoolValue(WebKitLinkPreloadEnabledPreferenceKey, enabled);
+ return S_OK;
+}
+
+HRESULT WebPreferences::linkPreloadEnabled(_Out_ BOOL* enabled)
+{
+ if (!enabled)
+ return E_POINTER;
+ *enabled = boolValueForKey(WebKitLinkPreloadEnabledPreferenceKey);
+ return S_OK;
+}
+
HRESULT WebPreferences::setApplicationId(BSTR applicationId)
{
m_applicationId = String(applicationId).createCFString();
Modified: trunk/Source/WebKit/win/WebPreferences.h (211340 => 211341)
--- trunk/Source/WebKit/win/WebPreferences.h 2017-01-28 22:35:17 UTC (rev 211340)
+++ trunk/Source/WebKit/win/WebPreferences.h 2017-01-28 22:53:54 UTC (rev 211341)
@@ -249,6 +249,8 @@
virtual HRESULT STDMETHODCALLTYPE setWebAnimationsEnabled(BOOL);
virtual HRESULT STDMETHODCALLTYPE userTimingEnabled(_Out_ BOOL*);
virtual HRESULT STDMETHODCALLTYPE setUserTimingEnabled(BOOL);
+ virtual HRESULT STDMETHODCALLTYPE linkPreloadEnabled(_Out_ BOOL*);
+ virtual HRESULT STDMETHODCALLTYPE setLinkPreloadEnabled(BOOL);
// WebPreferences
Modified: trunk/Source/WebKit2/ChangeLog (211340 => 211341)
--- trunk/Source/WebKit2/ChangeLog 2017-01-28 22:35:17 UTC (rev 211340)
+++ trunk/Source/WebKit2/ChangeLog 2017-01-28 22:53:54 UTC (rev 211341)
@@ -1,3 +1,18 @@
+2017-01-28 Yoav Weiss <y...@yoav.ws>
+
+ Add Link Preload as an off-by-default experimental feature menu item.
+ https://bugs.webkit.org/show_bug.cgi?id=167201
+
+ Reviewed by Ryosuke Niwa.
+
+ * Shared/WebPreferencesDefinitions.h:
+ * UIProcess/API/C/WKPreferences.cpp:
+ (WKPreferencesSetLinkPreloadEnabled):
+ (WKPreferencesGetLinkPreloadEnabled):
+ * UIProcess/API/C/WKPreferencesRefPrivate.h:
+ * WebProcess/WebPage/WebPage.cpp:
+ (WebKit::WebPage::updatePreferences):
+
2017-01-28 Joseph Pecoraro <pecor...@apple.com>
Add User Timing Experimental Feature
Modified: trunk/Source/WebKit2/Shared/WebPreferencesDefinitions.h (211340 => 211341)
--- trunk/Source/WebKit2/Shared/WebPreferencesDefinitions.h 2017-01-28 22:35:17 UTC (rev 211340)
+++ trunk/Source/WebKit2/Shared/WebPreferencesDefinitions.h 2017-01-28 22:53:54 UTC (rev 211341)
@@ -315,6 +315,7 @@
macro(CSSGridLayoutEnabled, cssGridLayoutEnabled, Bool, bool, DEFAULT_EXPERIMENTAL_FEATURES_ENABLED, "CSS Grid", "CSS Grid Layout Module support") \
macro(SpringTimingFunctionEnabled, springTimingFunctionEnabled, Bool, bool, DEFAULT_EXPERIMENTAL_FEATURES_ENABLED, "CSS Spring Animations", "CSS Spring Animation prototype") \
macro(GamepadsEnabled, gamepadsEnabled, Bool, bool, DEFAULT_EXPERIMENTAL_FEATURES_ENABLED, "Gamepads", "Web Gamepad API support") \
+ macro(LinkPreloadEnabled, linkPreloadEnabled, Bool, bool, DEFAULT_EXPERIMENTAL_FEATURES_ENABLED, "Link Preload", "Link preload support") \
macro(ModernMediaControlsEnabled, modernMediaControlsEnabled, Bool, bool, DEFAULT_EXPERIMENTAL_FEATURES_ENABLED, "Modern Media Controls", "Use modern media controls look") \
macro(InputEventsEnabled, inputEventsEnabled, Bool, bool, DEFAULT_EXPERIMENTAL_FEATURES_ENABLED, "Input Events", "Enable InputEvents support") \
macro(SubtleCryptoEnabled, subtleCryptoEnabled, Bool, bool, DEFAULT_EXPERIMENTAL_FEATURES_ENABLED, "SubtleCrypto", "Enable SubtleCrypto support") \
Modified: trunk/Source/WebKit2/UIProcess/API/C/WKPreferences.cpp (211340 => 211341)
--- trunk/Source/WebKit2/UIProcess/API/C/WKPreferences.cpp 2017-01-28 22:35:17 UTC (rev 211340)
+++ trunk/Source/WebKit2/UIProcess/API/C/WKPreferences.cpp 2017-01-28 22:53:54 UTC (rev 211341)
@@ -1641,6 +1641,16 @@
return toImpl(preferencesRef)->subtleCryptoEnabled();
}
+void WKPreferencesSetLinkPreloadEnabled(WKPreferencesRef preferencesRef, bool flag)
+{
+ toImpl(preferencesRef)->setLinkPreloadEnabled(flag);
+}
+
+bool WKPreferencesGetLinkPreloadEnabled(WKPreferencesRef preferencesRef)
+{
+ return toImpl(preferencesRef)->linkPreloadEnabled();
+}
+
void WKPreferencesSetShouldSuppressKeyboardInputDuringProvisionalNavigation(WKPreferencesRef preferencesRef, bool flag)
{
toImpl(preferencesRef)->setShouldSuppressKeyboardInputDuringProvisionalNavigation(flag);
Modified: trunk/Source/WebKit2/UIProcess/API/C/WKPreferencesRefPrivate.h (211340 => 211341)
--- trunk/Source/WebKit2/UIProcess/API/C/WKPreferencesRefPrivate.h 2017-01-28 22:35:17 UTC (rev 211340)
+++ trunk/Source/WebKit2/UIProcess/API/C/WKPreferencesRefPrivate.h 2017-01-28 22:53:54 UTC (rev 211341)
@@ -461,6 +461,10 @@
WK_EXPORT void WKPreferencesSetShouldSuppressKeyboardInputDuringProvisionalNavigation(WKPreferencesRef, bool flag);
WK_EXPORT bool WKPreferencesGetShouldSuppressKeyboardInputDuringProvisionalNavigation(WKPreferencesRef);
+// Defaults to false.
+WK_EXPORT void WKPreferencesSetLinkPreloadEnabled(WKPreferencesRef, bool flag);
+WK_EXPORT bool WKPreferencesGetLinkPreloadEnabled(WKPreferencesRef);
+
#ifdef __cplusplus
}
#endif
Modified: trunk/Source/WebKit2/WebProcess/WebPage/WebPage.cpp (211340 => 211341)
--- trunk/Source/WebKit2/WebProcess/WebPage/WebPage.cpp 2017-01-28 22:35:17 UTC (rev 211340)
+++ trunk/Source/WebKit2/WebProcess/WebPage/WebPage.cpp 2017-01-28 22:53:54 UTC (rev 211341)
@@ -3240,6 +3240,8 @@
// Experimental Features.
+ RuntimeEnabledFeatures::sharedFeatures().setLinkPreloadEnabled(store.getBoolValueForKey(WebPreferencesKey::linkPreloadEnabledKey()));
+
#if ENABLE(CSS_GRID_LAYOUT)
RuntimeEnabledFeatures::sharedFeatures().setCSSGridLayoutEnabled(store.getBoolValueForKey(WebPreferencesKey::cssGridLayoutEnabledKey()));
#endif
Modified: trunk/Tools/ChangeLog (211340 => 211341)
--- trunk/Tools/ChangeLog 2017-01-28 22:35:17 UTC (rev 211340)
+++ trunk/Tools/ChangeLog 2017-01-28 22:53:54 UTC (rev 211341)
@@ -1,3 +1,15 @@
+2017-01-28 Yoav Weiss <y...@yoav.ws>
+
+ Add Link Preload as an off-by-default experimental feature menu item.
+ https://bugs.webkit.org/show_bug.cgi?id=167201
+
+ Reviewed by Ryosuke Niwa.
+
+ * DumpRenderTree/mac/DumpRenderTree.mm:
+ (resetWebPreferencesToConsistentValues):
+ * DumpRenderTree/win/DumpRenderTree.cpp:
+ (resetWebPreferencesToConsistentValues):
+
2017-01-28 Joseph Pecoraro <pecor...@apple.com>
Add User Timing Experimental Feature
Modified: trunk/Tools/DumpRenderTree/mac/DumpRenderTree.mm (211340 => 211341)
--- trunk/Tools/DumpRenderTree/mac/DumpRenderTree.mm 2017-01-28 22:35:17 UTC (rev 211340)
+++ trunk/Tools/DumpRenderTree/mac/DumpRenderTree.mm 2017-01-28 22:53:54 UTC (rev 211341)
@@ -900,6 +900,7 @@
[preferences setCSSGridLayoutEnabled:YES];
// FIXME: SpringTimingFunction
[preferences setGamepadsEnabled:YES];
+ [preferences setLinkPreloadEnabled:YES];
[preferences setModernMediaControlsEnabled:YES];
// FIXME: InputEvents
[preferences setSubtleCryptoEnabled:YES];
Modified: trunk/Tools/DumpRenderTree/win/DumpRenderTree.cpp (211340 => 211341)
--- trunk/Tools/DumpRenderTree/win/DumpRenderTree.cpp 2017-01-28 22:35:17 UTC (rev 211340)
+++ trunk/Tools/DumpRenderTree/win/DumpRenderTree.cpp 2017-01-28 22:53:54 UTC (rev 211341)
@@ -879,6 +879,7 @@
prefsPrivate4->setShadowDOMEnabled(TRUE);
prefsPrivate4->setCustomElementsEnabled(TRUE);
prefsPrivate4->setModernMediaControlsEnabled(FALSE);
+ prefsPrivate4->setLinkPreloadEnabled(TRUE);
setAlwaysAcceptCookies(false);
}
Modified: trunk/Websites/webkit.org/ChangeLog (211340 => 211341)
--- trunk/Websites/webkit.org/ChangeLog 2017-01-28 22:35:17 UTC (rev 211340)
+++ trunk/Websites/webkit.org/ChangeLog 2017-01-28 22:53:54 UTC (rev 211341)
@@ -1,3 +1,12 @@
+2017-01-28 Yoav Weiss <y...@yoav.ws>
+
+ Add Link Preload as an off-by-default experimental feature menu item.
+ https://bugs.webkit.org/show_bug.cgi?id=167201
+
+ Reviewed by Ryosuke Niwa.
+
+ * experimental-features.html: Added Link Preload.
+
2017-01-28 Joseph Pecoraro <pecor...@apple.com>
Add User Timing Experimental Feature
Modified: trunk/Websites/webkit.org/experimental-features.html (211340 => 211341)
--- trunk/Websites/webkit.org/experimental-features.html 2017-01-28 22:35:17 UTC (rev 211340)
+++ trunk/Websites/webkit.org/experimental-features.html 2017-01-28 22:53:54 UTC (rev 211341)
@@ -78,6 +78,11 @@
return canvas.getContext("webgl2");
}
+function testLinkPreload() {
+ var link = document.createElement("link");
+ return link.relList.supports("preload");
+}
+
function testGamepad() {
return navigator.getGamepads;
}
@@ -140,6 +145,7 @@
<div class="test" id="Gamepad"><p>Gamepad API</p></div>
<div class="test" id="FormValidation"><p>HTML Form Validation</p></div>
<div class="test" id="InputEvents"><p>HTML Input Events</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>
<div class="test" id="UserTiming"><p>User Timing</p></div>