<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>[211341] trunk</title>
</head>
<body>

<style type="text/css"><!--
#msg dl.meta { border: 1px #006 solid; background: #369; padding: 6px; color: #fff; }
#msg dl.meta dt { float: left; width: 6em; font-weight: bold; }
#msg dt:after { content:':';}
#msg dl, #msg dt, #msg ul, #msg li, #header, #footer, #logmsg { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt;  }
#msg dl a { font-weight: bold}
#msg dl a:link    { color:#fc3; }
#msg dl a:active  { color:#ff0; }
#msg dl a:visited { color:#cc6; }
h3 { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; font-weight: bold; }
#msg pre { overflow: auto; background: #ffc; border: 1px #fa0 solid; padding: 6px; }
#logmsg { background: #ffc; border: 1px #fa0 solid; padding: 1em 1em 0 1em; }
#logmsg p, #logmsg pre, #logmsg blockquote { margin: 0 0 1em 0; }
#logmsg p, #logmsg li, #logmsg dt, #logmsg dd { line-height: 14pt; }
#logmsg h1, #logmsg h2, #logmsg h3, #logmsg h4, #logmsg h5, #logmsg h6 { margin: .5em 0; }
#logmsg h1:first-child, #logmsg h2:first-child, #logmsg h3:first-child, #logmsg h4:first-child, #logmsg h5:first-child, #logmsg h6:first-child { margin-top: 0; }
#logmsg ul, #logmsg ol { padding: 0; list-style-position: inside; margin: 0 0 0 1em; }
#logmsg ul { text-indent: -1em; padding-left: 1em; }#logmsg ol { text-indent: -1.5em; padding-left: 1.5em; }
#logmsg > ul, #logmsg > ol { margin: 0 0 1em 0; }
#logmsg pre { background: #eee; padding: 1em; }
#logmsg blockquote { border: 1px solid #fa0; border-left-width: 10px; padding: 1em 1em 0 1em; background: white;}
#logmsg dl { margin: 0; }
#logmsg dt { font-weight: bold; }
#logmsg dd { margin: 0; padding: 0 0 0.5em 0; }
#logmsg dd:before { content:'\00bb';}
#logmsg table { border-spacing: 0px; border-collapse: collapse; border-top: 4px solid #fa0; border-bottom: 1px solid #fa0; background: #fff; }
#logmsg table th { text-align: left; font-weight: normal; padding: 0.2em 0.5em; border-top: 1px dotted #fa0; }
#logmsg table td { text-align: right; border-top: 1px dotted #fa0; padding: 0.2em 0.5em; }
#logmsg table thead th { text-align: center; border-bottom: 1px solid #fa0; }
#logmsg table th.Corner { text-align: left; }
#logmsg hr { border: none 0; border-top: 2px dashed #fa0; height: 1px; }
#header, #footer { color: #fff; background: #636; border: 1px #300 solid; padding: 6px; }
#patch { width: 100%; }
#patch h4 {font-family: verdana,arial,helvetica,sans-serif;font-size:10pt;padding:8px;background:#369;color:#fff;margin:0;}
#patch .propset h4, #patch .binary h4 {margin:0;}
#patch pre {padding:0;line-height:1.2em;margin:0;}
#patch .diff {width:100%;background:#eee;padding: 0 0 10px 0;overflow:auto;}
#patch .propset .diff, #patch .binary .diff  {padding:10px 0;}
#patch span {display:block;padding:0 10px;}
#patch .modfile, #patch .addfile, #patch .delfile, #patch .propset, #patch .binary, #patch .copfile {border:1px solid #ccc;margin:10px 0;}
#patch ins {background:#dfd;text-decoration:none;display:block;padding:0 10px;}
#patch del {background:#fdd;text-decoration:none;display:block;padding:0 10px;}
#patch .lines, .info {color:#888;background:#fff;}
--></style>
<div id="msg">
<dl class="meta">
<dt>Revision</dt> <dd><a href="http://trac.webkit.org/projects/webkit/changeset/211341">211341</a></dd>
<dt>Author</dt> <dd>yoav@yoav.ws</dd>
<dt>Date</dt> <dd>2017-01-28 14:53:54 -0800 (Sat, 28 Jan 2017)</dd>
</dl>

<h3>Log Message</h3>
<pre>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.

Source/WebCore:

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:

Source/WebKit/mac:

* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebPreferences.mm:
(-[WebPreferences linkPreloadEnabled]):
(-[WebPreferences setLinkPreloadEnabled:]):
* WebView/WebPreferencesPrivate.h:
* WebView/WebView.mm:
(-[WebView _preferencesChanged:]):

Source/WebKit/win:

* WebPreferenceKeysPrivate.h:
* WebPreferences.cpp:
(WebPreferences::initializeDefaultSettings):
(WebPreferences::valueForKey):
(WebPreferences::setLinkPreloadEnabled):
(WebPreferences::linkPreloadEnabled):
* WebPreferences.h:
* Interfaces/IWebPreferencesPrivate.idl:

Source/WebKit2:

* Shared/WebPreferencesDefinitions.h:
* UIProcess/API/C/WKPreferences.cpp:
(WKPreferencesSetLinkPreloadEnabled):
(WKPreferencesGetLinkPreloadEnabled):
* UIProcess/API/C/WKPreferencesRefPrivate.h:
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::updatePreferences):

Tools:

* DumpRenderTree/mac/DumpRenderTree.mm:
(resetWebPreferencesToConsistentValues):
* DumpRenderTree/win/DumpRenderTree.cpp:
(resetWebPreferencesToConsistentValues):

Websites/webkit.org:

* experimental-features.html: Added Link Preload.

LayoutTests:

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:</pre>

<h3>Modified Paths</h3>
<ul>
<li><a href="#trunkLayoutTestsChangeLog">trunk/LayoutTests/ChangeLog</a></li>
<li><a href="#trunkLayoutTestshttptestsfetchredirectmodeandpreloadhtml">trunk/LayoutTests/http/tests/fetch/redirectmode-and-preload.html</a></li>
<li><a href="#trunkLayoutTestshttptestspreloaddelaying_onload_link_preload_after_discoveryhtml">trunk/LayoutTests/http/tests/preload/delaying_onload_link_preload_after_discovery.html</a></li>
<li><a href="#trunkLayoutTestshttptestspreloaddelaying_onload_link_preload_after_discovery_imagehtml">trunk/LayoutTests/http/tests/preload/delaying_onload_link_preload_after_discovery_image.html</a></li>
<li><a href="#trunkLayoutTestshttptestspreloaddownload_resourcesexpectedtxt">trunk/LayoutTests/http/tests/preload/download_resources-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestspreloaddownload_resourceshtml">trunk/LayoutTests/http/tests/preload/download_resources.html</a></li>
<li><a href="#trunkLayoutTestshttptestspreloaddownload_resources_from_header_iframehtml">trunk/LayoutTests/http/tests/preload/download_resources_from_header_iframe.html</a></li>
<li><a href="#trunkLayoutTestshttptestspreloaddownload_resources_from_invalid_headershtml">trunk/LayoutTests/http/tests/preload/download_resources_from_invalid_headers.html</a></li>
<li><a href="#trunkLayoutTestshttptestspreloaddynamic_adding_preloadhtml">trunk/LayoutTests/http/tests/preload/dynamic_adding_preload.html</a></li>
<li><a href="#trunkLayoutTestshttptestspreloaddynamic_remove_preload_hrefexpectedtxt">trunk/LayoutTests/http/tests/preload/dynamic_remove_preload_href-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestspreloaddynamic_remove_preload_hrefhtml">trunk/LayoutTests/http/tests/preload/dynamic_remove_preload_href.html</a></li>
<li><a href="#trunkLayoutTestshttptestspreloadnot_delaying_window_onload_before_discoveryhtml">trunk/LayoutTests/http/tests/preload/not_delaying_window_onload_before_discovery.html</a></li>
<li><a href="#trunkLayoutTestshttptestspreloadonerror_eventexpectedtxt">trunk/LayoutTests/http/tests/preload/onerror_event-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestspreloadonerror_eventhtml">trunk/LayoutTests/http/tests/preload/onerror_event.html</a></li>
<li><a href="#trunkLayoutTestshttptestspreloadonload_eventexpectedtxt">trunk/LayoutTests/http/tests/preload/onload_event-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestspreloadonload_eventhtml">trunk/LayoutTests/http/tests/preload/onload_event.html</a></li>
<li><a href="#trunkLayoutTestshttptestspreloadresourcesdownload_resources_from_headerphp">trunk/LayoutTests/http/tests/preload/resources/download_resources_from_header.php</a></li>
<li><a href="#trunkLayoutTestshttptestspreloadresourcesinvalid_resources_from_headerphp">trunk/LayoutTests/http/tests/preload/resources/invalid_resources_from_header.php</a></li>
<li><a href="#trunkLayoutTestshttptestspreloadsingle_download_preloadexpectedtxt">trunk/LayoutTests/http/tests/preload/single_download_preload-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestspreloadsingle_download_preloadhtml">trunk/LayoutTests/http/tests/preload/single_download_preload.html</a></li>
<li><a href="#trunkLayoutTestshttptestssecuritycachedcrossoriginpreloadedcssstylesheethtml">trunk/LayoutTests/http/tests/security/cached-cross-origin-preloaded-css-stylesheet.html</a></li>
<li><a href="#trunkLayoutTestshttptestssecuritycachedcrossoriginpreloadingcssstylesheethtml">trunk/LayoutTests/http/tests/security/cached-cross-origin-preloading-css-stylesheet.html</a></li>
<li><a href="#trunkSourceWebCoreChangeLog">trunk/Source/WebCore/ChangeLog</a></li>
<li><a href="#trunkSourceWebCoretestingInternalSettingscpp">trunk/Source/WebCore/testing/InternalSettings.cpp</a></li>
<li><a href="#trunkSourceWebCoretestingInternalSettingsh">trunk/Source/WebCore/testing/InternalSettings.h</a></li>
<li><a href="#trunkSourceWebCoretestingInternalSettingsidl">trunk/Source/WebCore/testing/InternalSettings.idl</a></li>
<li><a href="#trunkSourceWebKitmacChangeLog">trunk/Source/WebKit/mac/ChangeLog</a></li>
<li><a href="#trunkSourceWebKitmacWebViewWebPreferenceKeysPrivateh">trunk/Source/WebKit/mac/WebView/WebPreferenceKeysPrivate.h</a></li>
<li><a href="#trunkSourceWebKitmacWebViewWebPreferencesmm">trunk/Source/WebKit/mac/WebView/WebPreferences.mm</a></li>
<li><a href="#trunkSourceWebKitmacWebViewWebPreferencesPrivateh">trunk/Source/WebKit/mac/WebView/WebPreferencesPrivate.h</a></li>
<li><a href="#trunkSourceWebKitmacWebViewWebViewmm">trunk/Source/WebKit/mac/WebView/WebView.mm</a></li>
<li><a href="#trunkSourceWebKitwinChangeLog">trunk/Source/WebKit/win/ChangeLog</a></li>
<li><a href="#trunkSourceWebKitwinInterfacesIWebPreferencesPrivateidl">trunk/Source/WebKit/win/Interfaces/IWebPreferencesPrivate.idl</a></li>
<li><a href="#trunkSourceWebKitwinWebPreferenceKeysPrivateh">trunk/Source/WebKit/win/WebPreferenceKeysPrivate.h</a></li>
<li><a href="#trunkSourceWebKitwinWebPreferencescpp">trunk/Source/WebKit/win/WebPreferences.cpp</a></li>
<li><a href="#trunkSourceWebKitwinWebPreferencesh">trunk/Source/WebKit/win/WebPreferences.h</a></li>
<li><a href="#trunkSourceWebKit2ChangeLog">trunk/Source/WebKit2/ChangeLog</a></li>
<li><a href="#trunkSourceWebKit2SharedWebPreferencesDefinitionsh">trunk/Source/WebKit2/Shared/WebPreferencesDefinitions.h</a></li>
<li><a href="#trunkSourceWebKit2UIProcessAPICWKPreferencescpp">trunk/Source/WebKit2/UIProcess/API/C/WKPreferences.cpp</a></li>
<li><a href="#trunkSourceWebKit2UIProcessAPICWKPreferencesRefPrivateh">trunk/Source/WebKit2/UIProcess/API/C/WKPreferencesRefPrivate.h</a></li>
<li><a href="#trunkSourceWebKit2WebProcessWebPageWebPagecpp">trunk/Source/WebKit2/WebProcess/WebPage/WebPage.cpp</a></li>
<li><a href="#trunkToolsChangeLog">trunk/Tools/ChangeLog</a></li>
<li><a href="#trunkToolsDumpRenderTreemacDumpRenderTreemm">trunk/Tools/DumpRenderTree/mac/DumpRenderTree.mm</a></li>
<li><a href="#trunkToolsDumpRenderTreewinDumpRenderTreecpp">trunk/Tools/DumpRenderTree/win/DumpRenderTree.cpp</a></li>
<li><a href="#trunkWebsiteswebkitorgChangeLog">trunk/Websites/webkit.org/ChangeLog</a></li>
<li><a href="#trunkWebsiteswebkitorgexperimentalfeatureshtml">trunk/Websites/webkit.org/experimental-features.html</a></li>
</ul>

</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunkLayoutTestsChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/ChangeLog (211340 => 211341)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/ChangeLog        2017-01-28 22:35:17 UTC (rev 211340)
+++ trunk/LayoutTests/ChangeLog        2017-01-28 22:53:54 UTC (rev 211341)
</span><span class="lines">@@ -1,3 +1,35 @@
</span><ins>+2017-01-28  Yoav Weiss  &lt;yoav@yoav.ws&gt;
+
+        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:
+
</ins><span class="cx"> 2017-01-28  Antoine Quint  &lt;graouts@apple.com&gt;
</span><span class="cx"> 
</span><span class="cx">         [Modern Media Controls] REGRESSION: Video stops playing after going into Full Screen in media documents
</span></span></pre></div>
<a id="trunkLayoutTestshttptestsfetchredirectmodeandpreloadhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/http/tests/fetch/redirectmode-and-preload.html (211340 => 211341)</h4>
<pre class="diff"><span>
<span class="info">--- 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)
</span><span class="lines">@@ -8,10 +8,6 @@
</span><span class="cx">     &lt;meta name=&quot;author&quot; title=&quot;Canon Research France&quot; href=&quot;https://www.crf.canon.fr&quot;&gt;
</span><span class="cx">     &lt;script src=&quot;/js-test-resources/testharness.js&quot;&gt;&lt;/script&gt;
</span><span class="cx">     &lt;script src=&quot;/js-test-resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
</span><del>-    &lt;script&gt;
-if (window.internals)
-    internals.settings.setLinkPreloadEnabled(true);
-    &lt;/script&gt;
</del><span class="cx">     &lt;link rel=preload onload=&quot;startTests()&quot; href=&quot;./resources/redirect-with-cache.php?enableCaching&amp;url=http://localhost:8000/security/resources/allow-if-origin.php?allowCache&amp;origin=http%3A%2F%2F127.0.0.1%3A8000&amp;name=alert-fail.js&amp;contentType=text/ascii&quot;&gt;
</span><span class="cx">   &lt;/head&gt;
</span><span class="cx">   &lt;body&gt;
</span></span></pre></div>
<a id="trunkLayoutTestshttptestspreloaddelaying_onload_link_preload_after_discoveryhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/http/tests/preload/delaying_onload_link_preload_after_discovery.html (211340 => 211341)</h4>
<pre class="diff"><span>
<span class="info">--- 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)
</span><span class="lines">@@ -1,7 +1,5 @@
</span><span class="cx"> &lt;!DOCTYPE html&gt;
</span><span class="cx"> &lt;script&gt;
</span><del>-    if (window.internals)
-        window.internals.settings.setLinkPreloadEnabled(true);
</del><span class="cx">     if (window.testRunner) {
</span><span class="cx">         testRunner.dumpAsText()
</span><span class="cx">         testRunner.waitUntilDone();
</span><span class="lines">@@ -14,8 +12,6 @@
</span><span class="cx"> &lt;script&gt;
</span><span class="cx">     window.addEventListener(&quot;load&quot;, function() {
</span><span class="cx">         shouldBeTrue(&quot;finishedScript&quot;);
</span><del>-        if (window.internals)
-            window.internals.settings.setLinkPreloadEnabled(false);
</del><span class="cx">         setTimeout(function() { testRunner.notifyDone(); }, 0);
</span><span class="cx">     });
</span><span class="cx">     var scr = document.createElement(&quot;script&quot;);
</span></span></pre></div>
<a id="trunkLayoutTestshttptestspreloaddelaying_onload_link_preload_after_discovery_imagehtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/http/tests/preload/delaying_onload_link_preload_after_discovery_image.html (211340 => 211341)</h4>
<pre class="diff"><span>
<span class="info">--- 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)
</span><span class="lines">@@ -1,7 +1,5 @@
</span><span class="cx"> &lt;!DOCTYPE html&gt;
</span><span class="cx"> &lt;script&gt;
</span><del>-    if (window.internals)
-        window.internals.settings.setLinkPreloadEnabled(true);
</del><span class="cx">     if (window.testRunner) {
</span><span class="cx">         testRunner.dumpAsText()
</span><span class="cx">         testRunner.waitUntilDone();
</span><span class="lines">@@ -14,8 +12,6 @@
</span><span class="cx"> &lt;script&gt;
</span><span class="cx">     window.addEventListener(&quot;load&quot;, function() {
</span><span class="cx">         shouldBeTrue(&quot;finishedImage&quot;);
</span><del>-        if (window.internals)
-            window.internals.settings.setLinkPreloadEnabled(false);
</del><span class="cx">         testRunner.notifyDone();
</span><span class="cx">     });
</span><span class="cx">     var img = new Image();
</span></span></pre></div>
<a id="trunkLayoutTestshttptestspreloaddownload_resourcesexpectedtxt"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/http/tests/preload/download_resources-expected.txt (211340 => 211341)</h4>
<pre class="diff"><span>
<span class="info">--- 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)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-CONSOLE MESSAGE: line 15: &lt;link rel=preload&gt; must have a valid `as` value
</del><ins>+CONSOLE MESSAGE: line 11: &lt;link rel=preload&gt; must have a valid `as` value
</ins><span class="cx"> PASS internals.isPreloaded('../resources/dummy.js'); is true
</span><span class="cx"> PASS internals.isPreloaded('../resources/dummy.css'); is true
</span><span class="cx"> PASS internals.isPreloaded('../resources/square.png'); is true
</span></span></pre></div>
<a id="trunkLayoutTestshttptestspreloaddownload_resourceshtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/http/tests/preload/download_resources.html (211340 => 211341)</h4>
<pre class="diff"><span>
<span class="info">--- 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)
</span><span class="lines">@@ -1,10 +1,6 @@
</span><span class="cx"> &lt;!DOCTYPE html&gt;
</span><span class="cx"> &lt;html&gt;
</span><span class="cx"> &lt;head&gt;
</span><del>-&lt;script&gt;
-    if (window.internals)
-        window.internals.settings.setLinkPreloadEnabled(true);
-&lt;/script&gt;
</del><span class="cx"> &lt;script src=&quot;/js-test-resources/js-test.js&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;link rel=preload href=&quot;../resources/dummy.js&quot; as=script&gt;
</span><span class="cx"> &lt;link rel=preload href=&quot;../resources/dummy.css&quot; as=style&gt;
</span><span class="lines">@@ -29,7 +25,3 @@
</span><span class="cx">     shouldBeFalse(&quot;internals.isPreloaded('../resources/dummy.xml?badvalue');&quot;);
</span><span class="cx">     shouldBeTrue(&quot;internals.isPreloaded('../resources/dummy.xml');&quot;);
</span><span class="cx"> &lt;/script&gt;
</span><del>-&lt;script&gt;
-    if (window.internals)
-        window.internals.settings.setLinkPreloadEnabled(false);
-&lt;/script&gt;
</del></span></pre></div>
<a id="trunkLayoutTestshttptestspreloaddownload_resources_from_header_iframehtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/http/tests/preload/download_resources_from_header_iframe.html (211340 => 211341)</h4>
<pre class="diff"><span>
<span class="info">--- 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)
</span><span class="lines">@@ -1,7 +1,5 @@
</span><span class="cx"> &lt;!DOCTYPE html&gt;
</span><span class="cx"> &lt;script&gt;
</span><del>-    if (window.internals)
-        window.internals.settings.setLinkPreloadEnabled(true);
</del><span class="cx">     if (window.testRunner) {
</span><span class="cx">         testRunner.dumpAsText();
</span><span class="cx">         testRunner.dumpChildFramesAsText();
</span></span></pre></div>
<a id="trunkLayoutTestshttptestspreloaddownload_resources_from_invalid_headershtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/http/tests/preload/download_resources_from_invalid_headers.html (211340 => 211341)</h4>
<pre class="diff"><span>
<span class="info">--- 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)
</span><span class="lines">@@ -1,7 +1,5 @@
</span><span class="cx"> &lt;!DOCTYPE html&gt;
</span><span class="cx"> &lt;script&gt;
</span><del>-    if (window.internals)
-        window.internals.settings.setLinkPreloadEnabled(true);
</del><span class="cx">     if (window.testRunner) {
</span><span class="cx">         testRunner.dumpAsText();
</span><span class="cx">         testRunner.dumpChildFramesAsText();
</span></span></pre></div>
<a id="trunkLayoutTestshttptestspreloaddynamic_adding_preloadhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/http/tests/preload/dynamic_adding_preload.html (211340 => 211341)</h4>
<pre class="diff"><span>
<span class="info">--- 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)
</span><span class="lines">@@ -1,10 +1,6 @@
</span><span class="cx"> &lt;!DOCTYPE html&gt;
</span><span class="cx"> &lt;html&gt;
</span><span class="cx"> &lt;head&gt;
</span><del>-&lt;script&gt;
-    if (window.internals)
-        window.internals.settings.setLinkPreloadEnabled(true);
-&lt;/script&gt;
</del><span class="cx"> &lt;script src=&quot;/js-test-resources/js-test.js&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;body&gt;
</span><span class="cx"> &lt;script&gt;
</span><span class="lines">@@ -17,8 +13,5 @@
</span><span class="cx"> &lt;script src=&quot;http://127.0.0.1:8000/resources/slow-script.pl?delay=100&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;script&gt;
</span><span class="cx">     shouldBeTrue(&quot;internals.isPreloaded('../resources/dummy.js');&quot;);
</span><del>-
-    if (window.internals)
-        window.internals.settings.setLinkPreloadEnabled(false);
</del><span class="cx"> &lt;/script&gt;
</span><span class="cx"> &lt;/body&gt;
</span></span></pre></div>
<a id="trunkLayoutTestshttptestspreloaddynamic_remove_preload_hrefexpectedtxt"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/http/tests/preload/dynamic_remove_preload_href-expected.txt (211340 => 211341)</h4>
<pre class="diff"><span>
<span class="info">--- 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)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-CONSOLE MESSAGE: line 19: &lt;link rel=preload&gt; has an invalid `href` value
</del><ins>+CONSOLE MESSAGE: line 17: &lt;link rel=preload&gt; has an invalid `href` value
</ins><span class="cx"> PASS downloadedImage is false
</span><span class="cx"> PASS successfullyParsed is true
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkLayoutTestshttptestspreloaddynamic_remove_preload_hrefhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/http/tests/preload/dynamic_remove_preload_href.html (211340 => 211341)</h4>
<pre class="diff"><span>
<span class="info">--- 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)
</span><span class="lines">@@ -2,10 +2,8 @@
</span><span class="cx"> &lt;html&gt;
</span><span class="cx"> &lt;head&gt;
</span><span class="cx"> &lt;script&gt;
</span><del>-    if (window.internals) {
-        window.internals.settings.setLinkPreloadEnabled(true);
</del><ins>+    if (window.internals)
</ins><span class="cx">         window.internals.settings.setResourceTimingEnabled(true);
</span><del>-    }
</del><span class="cx"> &lt;/script&gt;
</span><span class="cx"> &lt;script src=&quot;/js-test-resources/js-test.js&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;body&gt;
</span><span class="lines">@@ -24,10 +22,8 @@
</span><span class="cx">                 downloadedImage = true;
</span><span class="cx">         }
</span><span class="cx">         shouldBeFalse(&quot;downloadedImage&quot;);
</span><del>-        if (window.internals) {
-            window.internals.settings.setLinkPreloadEnabled(false);
</del><ins>+        if (window.internals)
</ins><span class="cx">             window.internals.settings.setResourceTimingEnabled(false);
</span><del>-        }
</del><span class="cx">     });
</span><span class="cx"> &lt;/script&gt;
</span><span class="cx"> &lt;/body&gt;
</span></span></pre></div>
<a id="trunkLayoutTestshttptestspreloadnot_delaying_window_onload_before_discoveryhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/http/tests/preload/not_delaying_window_onload_before_discovery.html (211340 => 211341)</h4>
<pre class="diff"><span>
<span class="info">--- 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)
</span><span class="lines">@@ -1,7 +1,5 @@
</span><span class="cx"> &lt;!DOCTYPE html&gt;
</span><span class="cx"> &lt;script&gt;
</span><del>-    if (window.internals)
-        window.internals.settings.setLinkPreloadEnabled(true);
</del><span class="cx">     if (window.testRunner) {
</span><span class="cx">         testRunner.dumpAsText()
</span><span class="cx">         testRunner.waitUntilDone();
</span><span class="lines">@@ -15,8 +13,6 @@
</span><span class="cx">     function test() {
</span><span class="cx">         shouldBeTrue(&quot;windowOnLoad&quot;);
</span><span class="cx">         if (finishedImage &amp;&amp; finishedScript) {
</span><del>-            if (window.internals)
-                window.internals.settings.setLinkPreloadEnabled(false);
</del><span class="cx">             if (window.testRunner)
</span><span class="cx">                 testRunner.notifyDone();
</span><span class="cx">         }
</span></span></pre></div>
<a id="trunkLayoutTestshttptestspreloadonerror_eventexpectedtxt"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/http/tests/preload/onerror_event-expected.txt (211340 => 211341)</h4>
<pre class="diff"><span>
<span class="info">--- 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)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-CONSOLE MESSAGE: line 29: &lt;link rel=preload&gt; must have a valid `as` value
</del><ins>+CONSOLE MESSAGE: line 27: &lt;link rel=preload&gt; must have a valid `as` value
</ins><span class="cx"> PASS successfullyParsed is true
</span><span class="cx"> 
</span><span class="cx"> TEST COMPLETE
</span></span></pre></div>
<a id="trunkLayoutTestshttptestspreloadonerror_eventhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/http/tests/preload/onerror_event.html (211340 => 211341)</h4>
<pre class="diff"><span>
<span class="info">--- 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)
</span><span class="lines">@@ -1,7 +1,5 @@
</span><span class="cx"> &lt;!DOCTYPE html&gt;
</span><span class="cx"> &lt;script&gt;
</span><del>-    if (window.internals)
-        window.internals.settings.setLinkPreloadEnabled(true);
</del><span class="cx">     if (window.testRunner) {
</span><span class="cx">         testRunner.dumpAsText()
</span><span class="cx">         testRunner.waitUntilDone();
</span><span class="lines">@@ -37,8 +35,6 @@
</span><span class="cx">         shouldBeTrue(&quot;trackFailed&quot;);
</span><span class="cx">         shouldBeTrue(&quot;gibrishFailed&quot;);
</span><span class="cx">         shouldBeTrue(&quot;noTypeFailed&quot;);
</span><del>-        if (window.internals)
-            window.internals.settings.setLinkPreloadEnabled(false);
</del><span class="cx">         if (window.testRunner)
</span><span class="cx">             testRunner.notifyDone();
</span><span class="cx">     };
</span></span></pre></div>
<a id="trunkLayoutTestshttptestspreloadonload_eventexpectedtxt"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/http/tests/preload/onload_event-expected.txt (211340 => 211341)</h4>
<pre class="diff"><span>
<span class="info">--- 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)
</span><span class="lines">@@ -1,5 +1,5 @@
</span><del>-CONSOLE MESSAGE: line 35: &lt;link rel=preload&gt; must have a valid `as` value
-CONSOLE MESSAGE: line 36: &lt;link rel=preload&gt; must have a valid `as` value
</del><ins>+CONSOLE MESSAGE: line 33: &lt;link rel=preload&gt; must have a valid `as` value
+CONSOLE MESSAGE: line 34: &lt;link rel=preload&gt; must have a valid `as` value
</ins><span class="cx"> PASS successfullyParsed is true
</span><span class="cx"> 
</span><span class="cx"> TEST COMPLETE
</span></span></pre></div>
<a id="trunkLayoutTestshttptestspreloadonload_eventhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/http/tests/preload/onload_event.html (211340 => 211341)</h4>
<pre class="diff"><span>
<span class="info">--- 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)
</span><span class="lines">@@ -1,7 +1,5 @@
</span><span class="cx"> &lt;!DOCTYPE html&gt;
</span><span class="cx"> &lt;script&gt;
</span><del>-    if (window.internals)
-        window.internals.settings.setLinkPreloadEnabled(true);
</del><span class="cx">     if (window.testRunner) {
</span><span class="cx">         testRunner.dumpAsText()
</span><span class="cx">         testRunner.waitUntilDone();
</span><span class="lines">@@ -50,8 +48,6 @@
</span><span class="cx">         shouldBeTrue(&quot;xsltErrored&quot;);
</span><span class="cx">         shouldBeTrue(&quot;noTypeLoaded&quot;);
</span><span class="cx">         shouldBeTrue(&quot;emptyTypeLoaded&quot;);
</span><del>-        if (window.internals)
-            window.internals.settings.setLinkPreloadEnabled(false);
</del><span class="cx">         if (window.testRunner)
</span><span class="cx">             testRunner.notifyDone();
</span><span class="cx">     }
</span></span></pre></div>
<a id="trunkLayoutTestshttptestspreloadresourcesdownload_resources_from_headerphp"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/http/tests/preload/resources/download_resources_from_header.php (211340 => 211341)</h4>
<pre class="diff"><span>
<span class="info">--- 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)
</span><span class="lines">@@ -20,7 +20,3 @@
</span><span class="cx">     shouldBeFalse(&quot;internals.isPreloaded('../resources/dummy.xml?badvalue');&quot;);
</span><span class="cx">     shouldBeTrue(&quot;internals.isPreloaded('../resources/dummy.xml');&quot;);
</span><span class="cx"> &lt;/script&gt;
</span><del>-&lt;script&gt;
-    if (window.internals)
-        window.internals.settings.setLinkPreloadEnabled(false);
-&lt;/script&gt;
</del></span></pre></div>
<a id="trunkLayoutTestshttptestspreloadresourcesinvalid_resources_from_headerphp"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/http/tests/preload/resources/invalid_resources_from_header.php (211340 => 211341)</h4>
<pre class="diff"><span>
<span class="info">--- 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)
</span><span class="lines">@@ -40,7 +40,3 @@
</span><span class="cx">     shouldBeFalse(&quot;internals.isPreloaded('#foobar');&quot;);
</span><span class="cx">     shouldBeFalse(&quot;internals.isPreloaded('../resources/Ahem.ttf');&quot;);
</span><span class="cx"> &lt;/script&gt;
</span><del>-&lt;script&gt;
-    if (window.internals)
-        window.internals.settings.setLinkPreloadEnabled(false);
-&lt;/script&gt;
</del></span></pre></div>
<a id="trunkLayoutTestshttptestspreloadsingle_download_preloadexpectedtxt"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/http/tests/preload/single_download_preload-expected.txt (211340 => 211341)</h4>
<pre class="diff"><span>
<span class="info">--- 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)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-CONSOLE MESSAGE: line 21: &lt;link rel=preload&gt; must have a valid `as` value
</del><ins>+CONSOLE MESSAGE: line 19: &lt;link rel=preload&gt; must have a valid `as` value
</ins><span class="cx">  
</span><span class="cx"> 
</span><span class="cx"> PASS Makes sure that preloaded resources are not downloaded again when used 
</span></span></pre></div>
<a id="trunkLayoutTestshttptestspreloadsingle_download_preloadhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/http/tests/preload/single_download_preload.html (211340 => 211341)</h4>
<pre class="diff"><span>
<span class="info">--- 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)
</span><span class="lines">@@ -1,9 +1,7 @@
</span><span class="cx"> &lt;!DOCTYPE html&gt;
</span><span class="cx"> &lt;script&gt;
</span><del>-    if (window.internals) {
-        internals.settings.setLinkPreloadEnabled(true);
</del><ins>+    if (window.internals)
</ins><span class="cx">         internals.settings.setResourceTimingEnabled(true);
</span><del>-    }
</del><span class="cx"> &lt;/script&gt;
</span><span class="cx"> &lt;script src=&quot;/js-test-resources/testharness.js&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;script src=&quot;/js-test-resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
</span><span class="lines">@@ -61,10 +59,8 @@
</span><span class="cx">             // FIXME: XHR should trigger a single download, but it downloads 2 resources instead.
</span><span class="cx">             verifyDownloadNumber(&quot;http://127.0.0.1:8000/resources/dummy.xml&quot;, 2);
</span><span class="cx">             // FIXME: We should verify for video and audio as well, but they seem to (flakily?) trigger multiple partial requests.
</span><del>-            if (window.internals) {
-                internals.settings.setLinkPreloadEnabled(false);
</del><ins>+            if (window.internals)
</ins><span class="cx">                 internals.settings.setResourceTimingEnabled(false);
</span><del>-            }
</del><span class="cx">             t.done();
</span><span class="cx">             }), 100);
</span><span class="cx">     }));
</span></span></pre></div>
<a id="trunkLayoutTestshttptestssecuritycachedcrossoriginpreloadedcssstylesheethtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/http/tests/security/cached-cross-origin-preloaded-css-stylesheet.html (211340 => 211341)</h4>
<pre class="diff"><span>
<span class="info">--- 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)
</span><span class="lines">@@ -1,7 +1,5 @@
</span><span class="cx"> &lt;!DOCTYPE html&gt;
</span><span class="cx"> &lt;script&gt;
</span><del>-if (window.internals)
-    internals.settings.setLinkPreloadEnabled(true);
</del><span class="cx"> if (window.testRunner) {
</span><span class="cx">    testRunner.dumpAsText();
</span><span class="cx">    testRunner.waitUntilDone();
</span></span></pre></div>
<a id="trunkLayoutTestshttptestssecuritycachedcrossoriginpreloadingcssstylesheethtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/http/tests/security/cached-cross-origin-preloading-css-stylesheet.html (211340 => 211341)</h4>
<pre class="diff"><span>
<span class="info">--- 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)
</span><span class="lines">@@ -2,8 +2,6 @@
</span><span class="cx"> &lt;html&gt;
</span><span class="cx"> &lt;body&gt;
</span><span class="cx"> &lt;script&gt;
</span><del>-if (window.internals)
-    internals.settings.setLinkPreloadEnabled(true);
</del><span class="cx"> if (window.testRunner) {
</span><span class="cx">    testRunner.dumpAsText();
</span><span class="cx">    testRunner.waitUntilDone();
</span></span></pre></div>
<a id="trunkSourceWebCoreChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/ChangeLog (211340 => 211341)</h4>
<pre class="diff"><span>
<span class="info">--- 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)
</span><span class="lines">@@ -1,3 +1,21 @@
</span><ins>+2017-01-28  Yoav Weiss  &lt;yoav@yoav.ws&gt;
+
+        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:
+
</ins><span class="cx"> 2017-01-28  Joseph Pecoraro  &lt;pecoraro@apple.com&gt;
</span><span class="cx"> 
</span><span class="cx">         Fix typo in error message
</span></span></pre></div>
<a id="trunkSourceWebCoretestingInternalSettingscpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/testing/InternalSettings.cpp (211340 => 211341)</h4>
<pre class="diff"><span>
<span class="info">--- 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)
</span><span class="lines">@@ -95,7 +95,6 @@
</span><span class="cx">     , m_forcedDisplayIsMonochromeAccessibilityValue(settings.forcedDisplayIsMonochromeAccessibilityValue())
</span><span class="cx">     , m_forcedPrefersReducedMotionAccessibilityValue(settings.forcedPrefersReducedMotionAccessibilityValue())
</span><span class="cx">     , m_resourceTimingEnabled(RuntimeEnabledFeatures::sharedFeatures().resourceTimingEnabled())
</span><del>-    , m_linkPreloadEnabled(RuntimeEnabledFeatures::sharedFeatures().linkPreloadEnabled())
</del><span class="cx"> #if ENABLE(INDEXED_DATABASE_IN_WORKERS)
</span><span class="cx">     , m_indexedDBWorkersEnabled(RuntimeEnabledFeatures::sharedFeatures().indexedDBWorkersEnabled())
</span><span class="cx"> #endif
</span><span class="lines">@@ -184,7 +183,6 @@
</span><span class="cx">     Settings::setAllowsAnySSLCertificate(false);
</span><span class="cx"> 
</span><span class="cx">     RuntimeEnabledFeatures::sharedFeatures().setResourceTimingEnabled(m_resourceTimingEnabled);
</span><del>-    RuntimeEnabledFeatures::sharedFeatures().setLinkPreloadEnabled(m_linkPreloadEnabled);
</del><span class="cx"> #if ENABLE(INDEXED_DATABASE_IN_WORKERS)
</span><span class="cx">     RuntimeEnabledFeatures::sharedFeatures().setIndexedDBWorkersEnabled(m_indexedDBWorkersEnabled);
</span><span class="cx"> #endif
</span><span class="lines">@@ -671,11 +669,6 @@
</span><span class="cx">     RuntimeEnabledFeatures::sharedFeatures().setResourceTimingEnabled(enabled);
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-void InternalSettings::setLinkPreloadEnabled(bool enabled)
-{
-    RuntimeEnabledFeatures::sharedFeatures().setLinkPreloadEnabled(enabled);
-}
-
</del><span class="cx"> void InternalSettings::setIndexedDBWorkersEnabled(bool enabled)
</span><span class="cx"> {
</span><span class="cx"> #if ENABLE(INDEXED_DATABASE_IN_WORKERS)
</span></span></pre></div>
<a id="trunkSourceWebCoretestingInternalSettingsh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/testing/InternalSettings.h (211340 => 211341)</h4>
<pre class="diff"><span>
<span class="info">--- 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)
</span><span class="lines">@@ -110,7 +110,6 @@
</span><span class="cx"> 
</span><span class="cx">     // RuntimeEnabledFeatures.
</span><span class="cx">     static void setResourceTimingEnabled(bool);
</span><del>-    static void setLinkPreloadEnabled(bool);
</del><span class="cx">     static void setIndexedDBWorkersEnabled(bool);
</span><span class="cx">     static void setCSSGridLayoutEnabled(bool);
</span><span class="cx">     static void setWebGL2Enabled(bool);
</span><span class="lines">@@ -188,7 +187,6 @@
</span><span class="cx"> 
</span><span class="cx">         // Runtime enabled settings.
</span><span class="cx">         bool m_resourceTimingEnabled;
</span><del>-        bool m_linkPreloadEnabled;
</del><span class="cx">         bool m_indexedDBWorkersEnabled;
</span><span class="cx">         bool m_cssGridLayoutEnabled;
</span><span class="cx">         bool m_webGL2Enabled;
</span></span></pre></div>
<a id="trunkSourceWebCoretestingInternalSettingsidl"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/testing/InternalSettings.idl (211340 => 211341)</h4>
<pre class="diff"><span>
<span class="info">--- 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)
</span><span class="lines">@@ -83,7 +83,6 @@
</span><span class="cx"> 
</span><span class="cx">     // RuntimeEnabledFeatures.
</span><span class="cx">     void setResourceTimingEnabled(boolean enabled);
</span><del>-    void setLinkPreloadEnabled(boolean enabled);
</del><span class="cx">     void setIndexedDBWorkersEnabled(boolean enabled);
</span><span class="cx">     void setCSSGridLayoutEnabled(boolean enabled);
</span><span class="cx">     void setWebGL2Enabled(boolean enabled);
</span></span></pre></div>
<a id="trunkSourceWebKitmacChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/mac/ChangeLog (211340 => 211341)</h4>
<pre class="diff"><span>
<span class="info">--- 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)
</span><span class="lines">@@ -1,3 +1,18 @@
</span><ins>+2017-01-28  Yoav Weiss  &lt;yoav@yoav.ws&gt;
+
+        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:]):
+
</ins><span class="cx"> 2017-01-28  Joseph Pecoraro  &lt;pecoraro@apple.com&gt;
</span><span class="cx"> 
</span><span class="cx">         Add User Timing Experimental Feature
</span></span></pre></div>
<a id="trunkSourceWebKitmacWebViewWebPreferenceKeysPrivateh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/mac/WebView/WebPreferenceKeysPrivate.h (211340 => 211341)</h4>
<pre class="diff"><span>
<span class="info">--- 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)
</span><span class="lines">@@ -176,6 +176,7 @@
</span><span class="cx"> #define WebKitSubtleCryptoEnabledPreferenceKey @&quot;WebKitSubtleCryptoEnabled&quot;
</span><span class="cx"> #define WebKitMediaStreamEnabledPreferenceKey @&quot;WebKitMediaStreamEnabled&quot;
</span><span class="cx"> #define WebKitPeerConnectionEnabledPreferenceKey @&quot;WebKitPeerConnectionEnabled&quot;
</span><ins>+#define WebKitLinkPreloadEnabledPreferenceKey @&quot;WebKitLinkPreloadEnabled&quot;
</ins><span class="cx"> 
</span><span class="cx"> #if !TARGET_OS_IPHONE
</span><span class="cx"> // These are private both because callers should be using the cover methods and because the
</span></span></pre></div>
<a id="trunkSourceWebKitmacWebViewWebPreferencesmm"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/mac/WebView/WebPreferences.mm (211340 => 211341)</h4>
<pre class="diff"><span>
<span class="info">--- 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)
</span><span class="lines">@@ -2755,6 +2755,16 @@
</span><span class="cx">     [self _setBoolValue:flag forKey:WebKitPeerConnectionEnabledPreferenceKey];
</span><span class="cx"> }
</span><span class="cx"> 
</span><ins>+- (BOOL)linkPreloadEnabled
+{
+    return [self _boolValueForKey:WebKitLinkPreloadEnabledPreferenceKey];
+}
+
+- (void)setLinkPreloadEnabled:(BOOL)flag
+{
+    [self _setBoolValue:flag forKey:WebKitLinkPreloadEnabledPreferenceKey];
+}
+
</ins><span class="cx"> - (void)setMetaRefreshEnabled:(BOOL)enabled
</span><span class="cx"> {
</span><span class="cx">     [self setHTTPEquivEnabled:enabled];
</span></span></pre></div>
<a id="trunkSourceWebKitmacWebViewWebPreferencesPrivateh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/mac/WebView/WebPreferencesPrivate.h (211340 => 211341)</h4>
<pre class="diff"><span>
<span class="info">--- 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)
</span><span class="lines">@@ -529,5 +529,6 @@
</span><span class="cx"> @property (nonatomic) BOOL allowsInlineMediaPlaybackAfterFullscreen;
</span><span class="cx"> @property (nonatomic) BOOL intersectionObserverEnabled;
</span><span class="cx"> @property (nonatomic) BOOL userTimingEnabled;
</span><ins>+@property (nonatomic) BOOL linkPreloadEnabled;
</ins><span class="cx"> 
</span><span class="cx"> @end
</span></span></pre></div>
<a id="trunkSourceWebKitmacWebViewWebViewmm"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/mac/WebView/WebView.mm (211340 => 211341)</h4>
<pre class="diff"><span>
<span class="info">--- 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)
</span><span class="lines">@@ -2912,6 +2912,8 @@
</span><span class="cx"> 
</span><span class="cx">     RuntimeEnabledFeatures::sharedFeatures().setUserTimingEnabled(preferences.userTimingEnabled);
</span><span class="cx"> 
</span><ins>+    RuntimeEnabledFeatures::sharedFeatures().setLinkPreloadEnabled(preferences.linkPreloadEnabled);
+
</ins><span class="cx">     NSTimeInterval timeout = [preferences incrementalRenderingSuppressionTimeoutInSeconds];
</span><span class="cx">     if (timeout &gt; 0)
</span><span class="cx">         settings.setIncrementalRenderingSuppressionTimeoutInSeconds(timeout);
</span></span></pre></div>
<a id="trunkSourceWebKitwinChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/win/ChangeLog (211340 => 211341)</h4>
<pre class="diff"><span>
<span class="info">--- 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)
</span><span class="lines">@@ -1,3 +1,19 @@
</span><ins>+2017-01-28  Yoav Weiss  &lt;yoav@yoav.ws&gt;
+
+        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:
+
</ins><span class="cx"> 2017-01-28  Joseph Pecoraro  &lt;pecoraro@apple.com&gt;
</span><span class="cx"> 
</span><span class="cx">         Add User Timing Experimental Feature
</span></span></pre></div>
<a id="trunkSourceWebKitwinInterfacesIWebPreferencesPrivateidl"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/win/Interfaces/IWebPreferencesPrivate.idl (211340 => 211341)</h4>
<pre class="diff"><span>
<span class="info">--- 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)
</span><span class="lines">@@ -196,4 +196,6 @@
</span><span class="cx">     HRESULT setWebAnimationsEnabled([in] BOOL enabled);
</span><span class="cx">     HRESULT userTimingEnabled([out, retval] BOOL*);
</span><span class="cx">     HRESULT setUserTimingEnabled([in] BOOL enabled);
</span><ins>+    HRESULT linkPreloadEnabled([out, retval] BOOL*);
+    HRESULT setLinkPreloadEnabled([in] BOOL enabled);
</ins><span class="cx"> }
</span></span></pre></div>
<a id="trunkSourceWebKitwinWebPreferenceKeysPrivateh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/win/WebPreferenceKeysPrivate.h (211340 => 211341)</h4>
<pre class="diff"><span>
<span class="info">--- 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)
</span><span class="lines">@@ -180,3 +180,5 @@
</span><span class="cx"> #define WebKitWebAnimationsEnabledPreferenceKey &quot;WebKitWebAnimationsEnabled&quot;
</span><span class="cx"> 
</span><span class="cx"> #define WebKitUserTimingEnabledPreferenceKey &quot;WebKitUserTimingEnabled&quot;
</span><ins>+
+#define WebKitLinkPreloadEnabledPreferenceKey &quot;WebKitLinkPreloadEnabled&quot;
</ins></span></pre></div>
<a id="trunkSourceWebKitwinWebPreferencescpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/win/WebPreferences.cpp (211340 => 211341)</h4>
<pre class="diff"><span>
<span class="info">--- 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)
</span><span class="lines">@@ -309,6 +309,8 @@
</span><span class="cx"> 
</span><span class="cx">     CFDictionaryAddValue(defaults, CFSTR(WebKitUserTimingEnabledPreferenceKey), kCFBooleanFalse);
</span><span class="cx"> 
</span><ins>+    CFDictionaryAddValue(defaults, CFSTR(WebKitLinkPreloadEnabledPreferenceKey), kCFBooleanFalse);
+
</ins><span class="cx">     defaultSettings = defaults;
</span><span class="cx"> }
</span><span class="cx"> 
</span><span class="lines">@@ -2008,6 +2010,20 @@
</span><span class="cx">     return S_OK;
</span><span class="cx"> }
</span><span class="cx"> 
</span><ins>+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;
+}
+
</ins><span class="cx"> HRESULT WebPreferences::setApplicationId(BSTR applicationId)
</span><span class="cx"> {
</span><span class="cx">     m_applicationId = String(applicationId).createCFString();
</span></span></pre></div>
<a id="trunkSourceWebKitwinWebPreferencesh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/win/WebPreferences.h (211340 => 211341)</h4>
<pre class="diff"><span>
<span class="info">--- 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)
</span><span class="lines">@@ -249,6 +249,8 @@
</span><span class="cx">     virtual HRESULT STDMETHODCALLTYPE setWebAnimationsEnabled(BOOL);
</span><span class="cx">     virtual HRESULT STDMETHODCALLTYPE userTimingEnabled(_Out_ BOOL*);
</span><span class="cx">     virtual HRESULT STDMETHODCALLTYPE setUserTimingEnabled(BOOL);
</span><ins>+    virtual HRESULT STDMETHODCALLTYPE linkPreloadEnabled(_Out_ BOOL*);
+    virtual HRESULT STDMETHODCALLTYPE setLinkPreloadEnabled(BOOL);
</ins><span class="cx"> 
</span><span class="cx">     // WebPreferences
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkSourceWebKit2ChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/ChangeLog (211340 => 211341)</h4>
<pre class="diff"><span>
<span class="info">--- 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)
</span><span class="lines">@@ -1,3 +1,18 @@
</span><ins>+2017-01-28  Yoav Weiss  &lt;yoav@yoav.ws&gt;
+
+        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):
+
</ins><span class="cx"> 2017-01-28  Joseph Pecoraro  &lt;pecoraro@apple.com&gt;
</span><span class="cx"> 
</span><span class="cx">         Add User Timing Experimental Feature
</span></span></pre></div>
<a id="trunkSourceWebKit2SharedWebPreferencesDefinitionsh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/Shared/WebPreferencesDefinitions.h (211340 => 211341)</h4>
<pre class="diff"><span>
<span class="info">--- 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)
</span><span class="lines">@@ -315,6 +315,7 @@
</span><span class="cx">     macro(CSSGridLayoutEnabled, cssGridLayoutEnabled, Bool, bool, DEFAULT_EXPERIMENTAL_FEATURES_ENABLED, &quot;CSS Grid&quot;, &quot;CSS Grid Layout Module support&quot;) \
</span><span class="cx">     macro(SpringTimingFunctionEnabled, springTimingFunctionEnabled, Bool, bool, DEFAULT_EXPERIMENTAL_FEATURES_ENABLED, &quot;CSS Spring Animations&quot;, &quot;CSS Spring Animation prototype&quot;) \
</span><span class="cx">     macro(GamepadsEnabled, gamepadsEnabled, Bool, bool, DEFAULT_EXPERIMENTAL_FEATURES_ENABLED, &quot;Gamepads&quot;, &quot;Web Gamepad API support&quot;) \
</span><ins>+    macro(LinkPreloadEnabled, linkPreloadEnabled, Bool, bool, DEFAULT_EXPERIMENTAL_FEATURES_ENABLED, &quot;Link Preload&quot;, &quot;Link preload support&quot;) \
</ins><span class="cx">     macro(ModernMediaControlsEnabled, modernMediaControlsEnabled, Bool, bool, DEFAULT_EXPERIMENTAL_FEATURES_ENABLED, &quot;Modern Media Controls&quot;, &quot;Use modern media controls look&quot;) \
</span><span class="cx">     macro(InputEventsEnabled, inputEventsEnabled, Bool, bool, DEFAULT_EXPERIMENTAL_FEATURES_ENABLED, &quot;Input Events&quot;, &quot;Enable InputEvents support&quot;) \
</span><span class="cx">     macro(SubtleCryptoEnabled, subtleCryptoEnabled, Bool, bool, DEFAULT_EXPERIMENTAL_FEATURES_ENABLED, &quot;SubtleCrypto&quot;, &quot;Enable SubtleCrypto support&quot;) \
</span></span></pre></div>
<a id="trunkSourceWebKit2UIProcessAPICWKPreferencescpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/UIProcess/API/C/WKPreferences.cpp (211340 => 211341)</h4>
<pre class="diff"><span>
<span class="info">--- 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)
</span><span class="lines">@@ -1641,6 +1641,16 @@
</span><span class="cx">     return toImpl(preferencesRef)-&gt;subtleCryptoEnabled();
</span><span class="cx"> }
</span><span class="cx"> 
</span><ins>+void WKPreferencesSetLinkPreloadEnabled(WKPreferencesRef preferencesRef, bool flag)
+{
+    toImpl(preferencesRef)-&gt;setLinkPreloadEnabled(flag);
+}
+
+bool WKPreferencesGetLinkPreloadEnabled(WKPreferencesRef preferencesRef)
+{
+    return toImpl(preferencesRef)-&gt;linkPreloadEnabled();
+}
+
</ins><span class="cx"> void WKPreferencesSetShouldSuppressKeyboardInputDuringProvisionalNavigation(WKPreferencesRef preferencesRef, bool flag)
</span><span class="cx"> {
</span><span class="cx">     toImpl(preferencesRef)-&gt;setShouldSuppressKeyboardInputDuringProvisionalNavigation(flag);
</span></span></pre></div>
<a id="trunkSourceWebKit2UIProcessAPICWKPreferencesRefPrivateh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/UIProcess/API/C/WKPreferencesRefPrivate.h (211340 => 211341)</h4>
<pre class="diff"><span>
<span class="info">--- 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)
</span><span class="lines">@@ -461,6 +461,10 @@
</span><span class="cx"> WK_EXPORT void WKPreferencesSetShouldSuppressKeyboardInputDuringProvisionalNavigation(WKPreferencesRef, bool flag);
</span><span class="cx"> WK_EXPORT bool WKPreferencesGetShouldSuppressKeyboardInputDuringProvisionalNavigation(WKPreferencesRef);
</span><span class="cx"> 
</span><ins>+// Defaults to false.
+WK_EXPORT void WKPreferencesSetLinkPreloadEnabled(WKPreferencesRef, bool flag);
+WK_EXPORT bool WKPreferencesGetLinkPreloadEnabled(WKPreferencesRef);
+
</ins><span class="cx"> #ifdef __cplusplus
</span><span class="cx"> }
</span><span class="cx"> #endif
</span></span></pre></div>
<a id="trunkSourceWebKit2WebProcessWebPageWebPagecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/WebProcess/WebPage/WebPage.cpp (211340 => 211341)</h4>
<pre class="diff"><span>
<span class="info">--- 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)
</span><span class="lines">@@ -3240,6 +3240,8 @@
</span><span class="cx"> 
</span><span class="cx">     // Experimental Features.
</span><span class="cx"> 
</span><ins>+    RuntimeEnabledFeatures::sharedFeatures().setLinkPreloadEnabled(store.getBoolValueForKey(WebPreferencesKey::linkPreloadEnabledKey()));
+
</ins><span class="cx"> #if ENABLE(CSS_GRID_LAYOUT)
</span><span class="cx">     RuntimeEnabledFeatures::sharedFeatures().setCSSGridLayoutEnabled(store.getBoolValueForKey(WebPreferencesKey::cssGridLayoutEnabledKey()));
</span><span class="cx"> #endif
</span></span></pre></div>
<a id="trunkToolsChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Tools/ChangeLog (211340 => 211341)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Tools/ChangeLog        2017-01-28 22:35:17 UTC (rev 211340)
+++ trunk/Tools/ChangeLog        2017-01-28 22:53:54 UTC (rev 211341)
</span><span class="lines">@@ -1,3 +1,15 @@
</span><ins>+2017-01-28  Yoav Weiss  &lt;yoav@yoav.ws&gt;
+
+        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):
+
</ins><span class="cx"> 2017-01-28  Joseph Pecoraro  &lt;pecoraro@apple.com&gt;
</span><span class="cx"> 
</span><span class="cx">         Add User Timing Experimental Feature
</span></span></pre></div>
<a id="trunkToolsDumpRenderTreemacDumpRenderTreemm"></a>
<div class="modfile"><h4>Modified: trunk/Tools/DumpRenderTree/mac/DumpRenderTree.mm (211340 => 211341)</h4>
<pre class="diff"><span>
<span class="info">--- 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)
</span><span class="lines">@@ -900,6 +900,7 @@
</span><span class="cx">     [preferences setCSSGridLayoutEnabled:YES];
</span><span class="cx">     // FIXME: SpringTimingFunction
</span><span class="cx">     [preferences setGamepadsEnabled:YES];
</span><ins>+    [preferences setLinkPreloadEnabled:YES];
</ins><span class="cx">     [preferences setModernMediaControlsEnabled:YES];
</span><span class="cx">     // FIXME: InputEvents
</span><span class="cx">     [preferences setSubtleCryptoEnabled:YES];
</span></span></pre></div>
<a id="trunkToolsDumpRenderTreewinDumpRenderTreecpp"></a>
<div class="modfile"><h4>Modified: trunk/Tools/DumpRenderTree/win/DumpRenderTree.cpp (211340 => 211341)</h4>
<pre class="diff"><span>
<span class="info">--- 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)
</span><span class="lines">@@ -879,6 +879,7 @@
</span><span class="cx">     prefsPrivate4-&gt;setShadowDOMEnabled(TRUE);
</span><span class="cx">     prefsPrivate4-&gt;setCustomElementsEnabled(TRUE);
</span><span class="cx">     prefsPrivate4-&gt;setModernMediaControlsEnabled(FALSE);
</span><ins>+    prefsPrivate4-&gt;setLinkPreloadEnabled(TRUE);
</ins><span class="cx"> 
</span><span class="cx">     setAlwaysAcceptCookies(false);
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkWebsiteswebkitorgChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Websites/webkit.org/ChangeLog (211340 => 211341)</h4>
<pre class="diff"><span>
<span class="info">--- 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)
</span><span class="lines">@@ -1,3 +1,12 @@
</span><ins>+2017-01-28  Yoav Weiss  &lt;yoav@yoav.ws&gt;
+
+        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.
+
</ins><span class="cx"> 2017-01-28  Joseph Pecoraro  &lt;pecoraro@apple.com&gt;
</span><span class="cx"> 
</span><span class="cx">         Add User Timing Experimental Feature
</span></span></pre></div>
<a id="trunkWebsiteswebkitorgexperimentalfeatureshtml"></a>
<div class="modfile"><h4>Modified: trunk/Websites/webkit.org/experimental-features.html (211340 => 211341)</h4>
<pre class="diff"><span>
<span class="info">--- 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)
</span><span class="lines">@@ -78,6 +78,11 @@
</span><span class="cx">     return canvas.getContext(&quot;webgl2&quot;);
</span><span class="cx"> }
</span><span class="cx"> 
</span><ins>+function testLinkPreload() {
+    var link = document.createElement(&quot;link&quot;);
+    return link.relList.supports(&quot;preload&quot;);
+}
+
</ins><span class="cx"> function testGamepad() {
</span><span class="cx">     return navigator.getGamepads;
</span><span class="cx"> }
</span><span class="lines">@@ -140,6 +145,7 @@
</span><span class="cx">         &lt;div class=&quot;test&quot; id=&quot;Gamepad&quot;&gt;&lt;p&gt;Gamepad API&lt;/p&gt;&lt;/div&gt;
</span><span class="cx">         &lt;div class=&quot;test&quot; id=&quot;FormValidation&quot;&gt;&lt;p&gt;HTML Form Validation&lt;/p&gt;&lt;/div&gt;
</span><span class="cx">         &lt;div class=&quot;test&quot; id=&quot;InputEvents&quot;&gt;&lt;p&gt;HTML Input Events&lt;/p&gt;&lt;/div&gt;
</span><ins>+        &lt;div class=&quot;test&quot; id=&quot;LinkPreload&quot;&gt;&lt;p&gt;Link Preload&lt;/p&gt;&lt;/div&gt;
</ins><span class="cx">         &lt;div class=&quot;test&quot; id=&quot;SubtleCrypto&quot;&gt;&lt;p&gt;SubtleCrypto&lt;/p&gt;&lt;/div&gt;
</span><span class="cx">         &lt;div class=&quot;test&quot; id=&quot;VariationFonts&quot;&gt;&lt;p&gt;Variation Fonts&lt;/p&gt;&lt;/div&gt;
</span><span class="cx">         &lt;div class=&quot;test&quot; id=&quot;UserTiming&quot;&gt;&lt;p&gt;User Timing&lt;/p&gt;&lt;/div&gt;
</span></span></pre>
</div>
</div>

</body>
</html>