<!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>[211006] 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/211006">211006</a></dd>
<dt>Author</dt> <dd>joepeck@webkit.org</dd>
<dt>Date</dt> <dd>2017-01-20 18:23:47 -0800 (Fri, 20 Jan 2017)</dd>
</dl>

<h3>Log Message</h3>
<pre>Cleanup RuntimeEnabledFeatures
https://bugs.webkit.org/show_bug.cgi?id=167228

Reviewed by Simon Fraser.

LayoutTests/imported/w3c:

* web-platform-tests/resource-timing/resource_cached-expected.txt:
* web-platform-tests/resource-timing/resource_connection_reuse-expected.txt:
* web-platform-tests/resource-timing/resource_dynamic_insertion-expected.txt:
The previous internals API didn't appear to be working. Making it work
improved these results.

Source/WebCore:

RuntimeEnabledFeatures::reset() is bad for tests. It was getting called
after the TestRunners had set up all the Settings and RuntimeEnabledFeatures
they expected, so it was clearing the &quot;consistent state&quot; set by TestRunners.

Cleanup within RuntimeEnabledFeatures:

  - Initialize all members.
  - Remove unused features.
  - Remove reset() no longer used.
  - Document features that do not change (potentially removable).
  - Document features that are not used but have APIs (use or remove later).
  - Drop webkit prefix for these internal only apis.
  - Move things around a bit to make it more readable.
  - Enable the Fetch API by default (WebKit levels all were enabling it).

Cleanup within Internals:

  - Move all RuntimeEnabledFeature toggling to InternalSettings
  - Save and restore these RuntimeEnabledFeatures in InternalSettings

* Modules/mediastream/MediaStreamEvent.idl:
* Modules/mediastream/NavigatorMediaDevices.idl:
* Modules/mediastream/NavigatorUserMedia.idl:
* Modules/mediastream/RTCDTMFToneChangeEvent.idl:
* Modules/mediastream/RTCIceCandidate.idl:
* Modules/mediastream/RTCPeerConnection.idl:
* Modules/mediastream/RTCRtpReceiver.idl:
* Modules/mediastream/RTCRtpSender.idl:
* Modules/mediastream/RTCRtpTransceiver.idl:
* Modules/mediastream/RTCSessionDescription.idl:
* Modules/mediastream/RTCTrackEvent.idl:
Canonical usage is to start with a capital letter.

* dom/EventNames.in:
No port has API/SPI to disable this feature at runtime and the default is
to have the feature enabled, so this is no different from the runtime flag.

* page/DOMWindow.cpp:
(WebCore::DOMWindow::addEventListener):
These features were always enabled and not toggleable. So drop the runtime
feature check.

* page/csp/ContentSecurityPolicy.h:
* page/csp/ContentSecurityPolicy.cpp:
(WebCore::ContentSecurityPolicy::experimentalFeaturesEnabled): Deleted.
Nobody calls this method. Drop it.

* page/RuntimeEnabledFeatures.cpp:
(WebCore::RuntimeEnabledFeatures::RuntimeEnabledFeatures):
(WebCore::RuntimeEnabledFeatures::reset):
(WebCore::RuntimeEnabledFeatures::javaScriptI18NAPIEnabled): Deleted.
* page/RuntimeEnabledFeatures.h:
(WebCore::RuntimeEnabledFeatures::langAttributeAwareFormControlUIEnabled):
(WebCore::RuntimeEnabledFeatures::setLangAttributeAwareFormControlUIEnabled):
(WebCore::RuntimeEnabledFeatures::setLinkPreloadEnabled):
(WebCore::RuntimeEnabledFeatures::linkPreloadEnabled):
(WebCore::RuntimeEnabledFeatures::setResourceTimingEnabled):
(WebCore::RuntimeEnabledFeatures::resourceTimingEnabled):
(WebCore::RuntimeEnabledFeatures::setShadowDOMEnabled):
(WebCore::RuntimeEnabledFeatures::shadowDOMEnabled):
(WebCore::RuntimeEnabledFeatures::setInputEventsEnabled):
(WebCore::RuntimeEnabledFeatures::inputEventsEnabled):
(WebCore::RuntimeEnabledFeatures::setInteractiveFormValidationEnabled):
(WebCore::RuntimeEnabledFeatures::interactiveFormValidationEnabled):
(WebCore::RuntimeEnabledFeatures::setCustomElementsEnabled):
(WebCore::RuntimeEnabledFeatures::customElementsEnabled):
(WebCore::RuntimeEnabledFeatures::setModernMediaControlsEnabled):
(WebCore::RuntimeEnabledFeatures::modernMediaControlsEnabled):
(WebCore::RuntimeEnabledFeatures::setIndexedDBEnabled):
(WebCore::RuntimeEnabledFeatures::fontLoadEventsEnabled):
(WebCore::RuntimeEnabledFeatures::setMediaStreamEnabled):
(WebCore::RuntimeEnabledFeatures::setPeerConnectionEnabled):
(WebCore::RuntimeEnabledFeatures::setLocalStorageEnabled): Deleted.
(WebCore::RuntimeEnabledFeatures::localStorageEnabled): Deleted.
(WebCore::RuntimeEnabledFeatures::setSessionStorageEnabled): Deleted.
(WebCore::RuntimeEnabledFeatures::sessionStorageEnabled): Deleted.
(WebCore::RuntimeEnabledFeatures::setWebkitNotificationsEnabled): Deleted.
(WebCore::RuntimeEnabledFeatures::webkitNotificationsEnabled): Deleted.
(WebCore::RuntimeEnabledFeatures::setApplicationCacheEnabled): Deleted.
(WebCore::RuntimeEnabledFeatures::applicationCacheEnabled): Deleted.
(WebCore::RuntimeEnabledFeatures::setDataTransferItemsEnabled): Deleted.
(WebCore::RuntimeEnabledFeatures::dataTransferItemsEnabled): Deleted.
(WebCore::RuntimeEnabledFeatures::setWebkitIndexedDBEnabled): Deleted.
(WebCore::RuntimeEnabledFeatures::webkitIndexedDBEnabled): Deleted.
(WebCore::RuntimeEnabledFeatures::touchEnabled): Deleted.
(WebCore::RuntimeEnabledFeatures::setTouchEnabled): Deleted.
(WebCore::RuntimeEnabledFeatures::setDeviceMotionEnabled): Deleted.
(WebCore::RuntimeEnabledFeatures::deviceMotionEnabled): Deleted.
(WebCore::RuntimeEnabledFeatures::deviceMotionEventEnabled): Deleted.
(WebCore::RuntimeEnabledFeatures::ondevicemotionEnabled): Deleted.
(WebCore::RuntimeEnabledFeatures::setDeviceOrientationEnabled): Deleted.
(WebCore::RuntimeEnabledFeatures::deviceOrientationEnabled): Deleted.
(WebCore::RuntimeEnabledFeatures::deviceOrientationEventEnabled): Deleted.
(WebCore::RuntimeEnabledFeatures::ondeviceorientationEnabled): Deleted.
(WebCore::RuntimeEnabledFeatures::setJavaScriptI18NAPIEnabled): Deleted.
(WebCore::RuntimeEnabledFeatures::webkitGetUserMediaEnabled): Deleted.
(WebCore::RuntimeEnabledFeatures::webkitMediaStreamEnabled): Deleted.
(WebCore::RuntimeEnabledFeatures::webkitRTCPeerConnectionEnabled): Deleted.
(WebCore::RuntimeEnabledFeatures::experimentalContentSecurityPolicyFeaturesEnabled): Deleted.
(WebCore::RuntimeEnabledFeatures::setExperimentalContentSecurityPolicyFeaturesEnabled): Deleted.

* testing/InternalSettings.cpp:
(WebCore::InternalSettings::Backup::Backup):
(WebCore::InternalSettings::Backup::restoreTo):
(WebCore::InternalSettings::setLangAttributeAwareFormControlUIEnabled):
(WebCore::InternalSettings::setResourceTimingEnabled):
(WebCore::InternalSettings::setLinkPreloadEnabled):
(WebCore::InternalSettings::setCSSGridLayoutEnabled):
(WebCore::InternalSettings::setWebGL2Enabled):
* testing/InternalSettings.h:
* testing/InternalSettings.idl:
* testing/Internals.cpp:
(WebCore::Internals::Internals):
(WebCore::Internals::setLinkPreloadSupport): Deleted.
(WebCore::Internals::setCSSGridLayoutEnabled): Deleted.
(WebCore::Internals::webGL2Enabled): Deleted.
(WebCore::Internals::setWebGL2Enabled): Deleted.
(WebCore::Internals::setResourceTimingSupport): Deleted.
* testing/Internals.h:
* testing/Internals.idl:
Move toggling of RuntimeEnabledFeatures to InternalSettings and
properly remember to save and restore them in Internals.

Source/WebKit/mac:

* WebView/WebView.mm:
(-[WebView _preferencesChanged:]):

Source/WebKit/win:

* WebView.cpp:
(WebView::notifyPreferencesChanged):

Source/WebKit2:

* WebProcess/WebProcess.cpp:
(WebKit::m_resourceLoadStatisticsStorage):

Tools:

* DumpRenderTree/mac/DumpRenderTree.mm:
(enableExperimentalFeatures):
(resetWebPreferencesToConsistentValues):
(setWebPreferencesForTestOptions):
(resetWebViewToConsistentStateBeforeTesting):
* DumpRenderTree/win/DumpRenderTree.cpp:
(enableExperimentalFeatures):
(resetWebPreferencesToConsistentValues):
More closely match WebKitTestRunner initialization of preferences
for experimental features.

LayoutTests:

Update tests that toggle runtime enabled features to use
consistently named internals.settings.setFooEnabled setters.

* css3/flexbox/flexbox-lines-must-be-stretched-by-default.html:
* css3/flexbox/new-alignment-values-invalid-if-grid-not-enabled.html:
* fast/canvas/webgl/bufferData-offset-length.html:
* fast/canvas/webgl/copyBufferSubData.html:
* fast/canvas/webgl/getBufferSubData-webgl1.html:
* fast/canvas/webgl/webgl2-buffer-targets.html:
* fast/canvas/webgl/webgl2-buffers.html:
* fast/canvas/webgl/webgl2-context-creation.html:
* fast/canvas/webgl/webgl2-runtime-flag.html:
* fast/canvas/webgl/webgl2-texStorage.html:
* fast/canvas/webgl/webgl2-texture-upload-enums.html:
* fast/css-grid-layout/grid-disable.html:
* fast/css/ensure-flexbox-compatibility-with-initial-values.html:
* fast/dom/Window/window-properties-performance-resource-timing.html:
* http/tests/fetch/redirectmode-and-preload.html:
* http/tests/misc/resource-timing-resolution.html:
* http/tests/performance/performance-resource-timing-cached-entries.html:
* http/tests/performance/performance-resource-timing-entries-iterable.html:
* http/tests/performance/performance-resource-timing-entries.html:
* http/tests/performance/performance-resource-timing-initiator-css.html:
* http/tests/performance/performance-resource-timing-initiator-no-override.html:
* http/tests/performance/performance-resource-timing-xhr-single-entry.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.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.html:
* http/tests/preload/not_delaying_window_onload_before_discovery.html:
* http/tests/preload/onerror_event.html:
* 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_runner.html:
* http/tests/security/cached-cross-origin-preloading-css-stylesheet.html:
* resources/testharnessreport.js:</pre>

<h3>Modified Paths</h3>
<ul>
<li><a href="#trunkLayoutTestsChangeLog">trunk/LayoutTests/ChangeLog</a></li>
<li><a href="#trunkLayoutTestscss3flexboxflexboxlinesmustbestretchedbydefaulthtml">trunk/LayoutTests/css3/flexbox/flexbox-lines-must-be-stretched-by-default.html</a></li>
<li><a href="#trunkLayoutTestscss3flexboxnewalignmentvaluesinvalidifgridnotenabledhtml">trunk/LayoutTests/css3/flexbox/new-alignment-values-invalid-if-grid-not-enabled.html</a></li>
<li><a href="#trunkLayoutTestsfastcanvaswebglbufferDataoffsetlengthhtml">trunk/LayoutTests/fast/canvas/webgl/bufferData-offset-length.html</a></li>
<li><a href="#trunkLayoutTestsfastcanvaswebglcopyBufferSubDatahtml">trunk/LayoutTests/fast/canvas/webgl/copyBufferSubData.html</a></li>
<li><a href="#trunkLayoutTestsfastcanvaswebglgetBufferSubDatawebgl1html">trunk/LayoutTests/fast/canvas/webgl/getBufferSubData-webgl1.html</a></li>
<li><a href="#trunkLayoutTestsfastcanvaswebglwebgl2buffertargetshtml">trunk/LayoutTests/fast/canvas/webgl/webgl2-buffer-targets.html</a></li>
<li><a href="#trunkLayoutTestsfastcanvaswebglwebgl2buffershtml">trunk/LayoutTests/fast/canvas/webgl/webgl2-buffers.html</a></li>
<li><a href="#trunkLayoutTestsfastcanvaswebglwebgl2contextcreationhtml">trunk/LayoutTests/fast/canvas/webgl/webgl2-context-creation.html</a></li>
<li><a href="#trunkLayoutTestsfastcanvaswebglwebgl2runtimeflaghtml">trunk/LayoutTests/fast/canvas/webgl/webgl2-runtime-flag.html</a></li>
<li><a href="#trunkLayoutTestsfastcanvaswebglwebgl2texStoragehtml">trunk/LayoutTests/fast/canvas/webgl/webgl2-texStorage.html</a></li>
<li><a href="#trunkLayoutTestsfastcanvaswebglwebgl2textureuploadenumshtml">trunk/LayoutTests/fast/canvas/webgl/webgl2-texture-upload-enums.html</a></li>
<li><a href="#trunkLayoutTestsfastcssensureflexboxcompatibilitywithinitialvalueshtml">trunk/LayoutTests/fast/css/ensure-flexbox-compatibility-with-initial-values.html</a></li>
<li><a href="#trunkLayoutTestsfastcssgridlayoutgriddisablehtml">trunk/LayoutTests/fast/css-grid-layout/grid-disable.html</a></li>
<li><a href="#trunkLayoutTestsfastdomWindowwindowpropertiesperformanceresourcetiminghtml">trunk/LayoutTests/fast/dom/Window/window-properties-performance-resource-timing.html</a></li>
<li><a href="#trunkLayoutTestsfastdomnavigatordetachednocrashhtml">trunk/LayoutTests/fast/dom/navigator-detached-no-crash.html</a></li>
<li><a href="#trunkLayoutTestshttptestsfetchredirectmodeandpreloadhtml">trunk/LayoutTests/http/tests/fetch/redirectmode-and-preload.html</a></li>
<li><a href="#trunkLayoutTestshttptestsmiscresourcetimingresolutionhtml">trunk/LayoutTests/http/tests/misc/resource-timing-resolution.html</a></li>
<li><a href="#trunkLayoutTestshttptestsperformanceperformanceresourcetimingcachedentrieshtml">trunk/LayoutTests/http/tests/performance/performance-resource-timing-cached-entries.html</a></li>
<li><a href="#trunkLayoutTestshttptestsperformanceperformanceresourcetimingentriesiterablehtml">trunk/LayoutTests/http/tests/performance/performance-resource-timing-entries-iterable.html</a></li>
<li><a href="#trunkLayoutTestshttptestsperformanceperformanceresourcetimingentrieshtml">trunk/LayoutTests/http/tests/performance/performance-resource-timing-entries.html</a></li>
<li><a href="#trunkLayoutTestshttptestsperformanceperformanceresourcetiminginitiatorcsshtml">trunk/LayoutTests/http/tests/performance/performance-resource-timing-initiator-css.html</a></li>
<li><a href="#trunkLayoutTestshttptestsperformanceperformanceresourcetiminginitiatornooverridehtml">trunk/LayoutTests/http/tests/performance/performance-resource-timing-initiator-no-override.html</a></li>
<li><a href="#trunkLayoutTestshttptestsperformanceperformanceresourcetimingxhrsingleentryhtml">trunk/LayoutTests/http/tests/performance/performance-resource-timing-xhr-single-entry.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_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_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_eventhtml">trunk/LayoutTests/http/tests/preload/onerror_event.html</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_preload_runnerhtml">trunk/LayoutTests/http/tests/preload/single_download_preload_runner.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="#trunkLayoutTestsimportedw3cChangeLog">trunk/LayoutTests/imported/w3c/ChangeLog</a></li>
<li><a href="#trunkLayoutTestsimportedw3cwebplatformtestsresourcetimingresource_cachedexpectedtxt">trunk/LayoutTests/imported/w3c/web-platform-tests/resource-timing/resource_cached-expected.txt</a></li>
<li><a href="#trunkLayoutTestsimportedw3cwebplatformtestsresourcetimingresource_connection_reuseexpectedtxt">trunk/LayoutTests/imported/w3c/web-platform-tests/resource-timing/resource_connection_reuse-expected.txt</a></li>
<li><a href="#trunkLayoutTestsimportedw3cwebplatformtestsresourcetimingresource_dynamic_insertionexpectedtxt">trunk/LayoutTests/imported/w3c/web-platform-tests/resource-timing/resource_dynamic_insertion-expected.txt</a></li>
<li><a href="#trunkLayoutTestsresourcestestharnessreportjs">trunk/LayoutTests/resources/testharnessreport.js</a></li>
<li><a href="#trunkSourceWebCoreChangeLog">trunk/Source/WebCore/ChangeLog</a></li>
<li><a href="#trunkSourceWebCoreModulesmediastreamMediaStreamEventidl">trunk/Source/WebCore/Modules/mediastream/MediaStreamEvent.idl</a></li>
<li><a href="#trunkSourceWebCoreModulesmediastreamNavigatorMediaDevicesidl">trunk/Source/WebCore/Modules/mediastream/NavigatorMediaDevices.idl</a></li>
<li><a href="#trunkSourceWebCoreModulesmediastreamNavigatorUserMediaidl">trunk/Source/WebCore/Modules/mediastream/NavigatorUserMedia.idl</a></li>
<li><a href="#trunkSourceWebCoreModulesmediastreamRTCDTMFToneChangeEventidl">trunk/Source/WebCore/Modules/mediastream/RTCDTMFToneChangeEvent.idl</a></li>
<li><a href="#trunkSourceWebCoreModulesmediastreamRTCIceCandidateidl">trunk/Source/WebCore/Modules/mediastream/RTCIceCandidate.idl</a></li>
<li><a href="#trunkSourceWebCoreModulesmediastreamRTCPeerConnectionidl">trunk/Source/WebCore/Modules/mediastream/RTCPeerConnection.idl</a></li>
<li><a href="#trunkSourceWebCoreModulesmediastreamRTCRtpReceiveridl">trunk/Source/WebCore/Modules/mediastream/RTCRtpReceiver.idl</a></li>
<li><a href="#trunkSourceWebCoreModulesmediastreamRTCRtpSenderidl">trunk/Source/WebCore/Modules/mediastream/RTCRtpSender.idl</a></li>
<li><a href="#trunkSourceWebCoreModulesmediastreamRTCRtpTransceiveridl">trunk/Source/WebCore/Modules/mediastream/RTCRtpTransceiver.idl</a></li>
<li><a href="#trunkSourceWebCoreModulesmediastreamRTCSessionDescriptionidl">trunk/Source/WebCore/Modules/mediastream/RTCSessionDescription.idl</a></li>
<li><a href="#trunkSourceWebCoreModulesmediastreamRTCTrackEventidl">trunk/Source/WebCore/Modules/mediastream/RTCTrackEvent.idl</a></li>
<li><a href="#trunkSourceWebCoredomEventNamesin">trunk/Source/WebCore/dom/EventNames.in</a></li>
<li><a href="#trunkSourceWebCorepageDOMWindowcpp">trunk/Source/WebCore/page/DOMWindow.cpp</a></li>
<li><a href="#trunkSourceWebCorepageRuntimeEnabledFeaturescpp">trunk/Source/WebCore/page/RuntimeEnabledFeatures.cpp</a></li>
<li><a href="#trunkSourceWebCorepageRuntimeEnabledFeaturesh">trunk/Source/WebCore/page/RuntimeEnabledFeatures.h</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="#trunkSourceWebCoretestingInternalscpp">trunk/Source/WebCore/testing/Internals.cpp</a></li>
<li><a href="#trunkSourceWebCoretestingInternalsh">trunk/Source/WebCore/testing/Internals.h</a></li>
<li><a href="#trunkSourceWebCoretestingInternalsidl">trunk/Source/WebCore/testing/Internals.idl</a></li>
<li><a href="#trunkSourceWebKitmacChangeLog">trunk/Source/WebKit/mac/ChangeLog</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="#trunkSourceWebKitwinWebViewcpp">trunk/Source/WebKit/win/WebView.cpp</a></li>
<li><a href="#trunkSourceWebKit2ChangeLog">trunk/Source/WebKit2/ChangeLog</a></li>
<li><a href="#trunkSourceWebKit2WebProcessWebProcesscpp">trunk/Source/WebKit2/WebProcess/WebProcess.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>
</ul>

<h3>Removed Paths</h3>
<ul>
<li><a href="#trunkLayoutTestsplatformmacwk2fastdomnavigatordetachednocrashexpectedtxt">trunk/LayoutTests/platform/mac-wk2/fast/dom/navigator-detached-no-crash-expected.txt</a></li>
</ul>

</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunkLayoutTestsChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/ChangeLog (211005 => 211006)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/ChangeLog        2017-01-21 01:46:18 UTC (rev 211005)
+++ trunk/LayoutTests/ChangeLog        2017-01-21 02:23:47 UTC (rev 211006)
</span><span class="lines">@@ -1,3 +1,51 @@
</span><ins>+2017-01-20  Joseph Pecoraro  &lt;pecoraro@apple.com&gt;
+
+        Cleanup RuntimeEnabledFeatures
+        https://bugs.webkit.org/show_bug.cgi?id=167228
+
+        Reviewed by Simon Fraser.
+
+        Update tests that toggle runtime enabled features to use
+        consistently named internals.settings.setFooEnabled setters.
+
+        * css3/flexbox/flexbox-lines-must-be-stretched-by-default.html:
+        * css3/flexbox/new-alignment-values-invalid-if-grid-not-enabled.html:
+        * fast/canvas/webgl/bufferData-offset-length.html:
+        * fast/canvas/webgl/copyBufferSubData.html:
+        * fast/canvas/webgl/getBufferSubData-webgl1.html:
+        * fast/canvas/webgl/webgl2-buffer-targets.html:
+        * fast/canvas/webgl/webgl2-buffers.html:
+        * fast/canvas/webgl/webgl2-context-creation.html:
+        * fast/canvas/webgl/webgl2-runtime-flag.html:
+        * fast/canvas/webgl/webgl2-texStorage.html:
+        * fast/canvas/webgl/webgl2-texture-upload-enums.html:
+        * fast/css-grid-layout/grid-disable.html:
+        * fast/css/ensure-flexbox-compatibility-with-initial-values.html:
+        * fast/dom/Window/window-properties-performance-resource-timing.html:
+        * http/tests/fetch/redirectmode-and-preload.html:
+        * http/tests/misc/resource-timing-resolution.html:
+        * http/tests/performance/performance-resource-timing-cached-entries.html:
+        * http/tests/performance/performance-resource-timing-entries-iterable.html:
+        * http/tests/performance/performance-resource-timing-entries.html:
+        * http/tests/performance/performance-resource-timing-initiator-css.html:
+        * http/tests/performance/performance-resource-timing-initiator-no-override.html:
+        * http/tests/performance/performance-resource-timing-xhr-single-entry.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.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.html:
+        * http/tests/preload/not_delaying_window_onload_before_discovery.html:
+        * http/tests/preload/onerror_event.html:
+        * 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_runner.html:
+        * http/tests/security/cached-cross-origin-preloading-css-stylesheet.html:
+        * resources/testharnessreport.js:
+
</ins><span class="cx"> 2017-01-20  Megan Gardner  &lt;megan_gardner@apple.com&gt;
</span><span class="cx"> 
</span><span class="cx">         REGRESSION (r210941): LayoutTest scrollingcoordinator/ios/sync-layer-positions-after-scroll.html failing
</span></span></pre></div>
<a id="trunkLayoutTestscss3flexboxflexboxlinesmustbestretchedbydefaulthtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/css3/flexbox/flexbox-lines-must-be-stretched-by-default.html (211005 => 211006)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/css3/flexbox/flexbox-lines-must-be-stretched-by-default.html        2017-01-21 01:46:18 UTC (rev 211005)
+++ trunk/LayoutTests/css3/flexbox/flexbox-lines-must-be-stretched-by-default.html        2017-01-21 02:23:47 UTC (rev 211006)
</span><span class="lines">@@ -25,7 +25,7 @@
</span><span class="cx"> function runTest(gridEnabled)
</span><span class="cx"> {
</span><span class="cx">     if (window.internals)
</span><del>-        window.internals.setCSSGridLayoutEnabled(gridEnabled);
</del><ins>+        window.internals.settings.setCSSGridLayoutEnabled(gridEnabled);
</ins><span class="cx"> 
</span><span class="cx">     var flexContainer = document.createElement(&quot;div&quot;);
</span><span class="cx">     if (gridEnabled)
</span></span></pre></div>
<a id="trunkLayoutTestscss3flexboxnewalignmentvaluesinvalidifgridnotenabledhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/css3/flexbox/new-alignment-values-invalid-if-grid-not-enabled.html (211005 => 211006)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/css3/flexbox/new-alignment-values-invalid-if-grid-not-enabled.html        2017-01-21 01:46:18 UTC (rev 211005)
+++ trunk/LayoutTests/css3/flexbox/new-alignment-values-invalid-if-grid-not-enabled.html        2017-01-21 02:23:47 UTC (rev 211006)
</span><span class="lines">@@ -33,7 +33,7 @@
</span><span class="cx"> function checkAlignmentValues(gridEnabled)
</span><span class="cx"> {
</span><span class="cx">     if (window.internals)
</span><del>-        internals.setCSSGridLayoutEnabled(gridEnabled);
</del><ins>+        internals.settings.setCSSGridLayoutEnabled(gridEnabled);
</ins><span class="cx"> 
</span><span class="cx">     debug('&lt;br&gt;Testing Self-Alignment values.');
</span><span class="cx">     checkAlignSelfValue(&quot;start unsafe&quot;, &quot;'start unsafe'&quot;, gridEnabled)
</span></span></pre></div>
<a id="trunkLayoutTestsfastcanvaswebglbufferDataoffsetlengthhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/fast/canvas/webgl/bufferData-offset-length.html (211005 => 211006)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/fast/canvas/webgl/bufferData-offset-length.html        2017-01-21 01:46:18 UTC (rev 211005)
+++ trunk/LayoutTests/fast/canvas/webgl/bufferData-offset-length.html        2017-01-21 02:23:47 UTC (rev 211006)
</span><span class="lines">@@ -39,7 +39,7 @@
</span><span class="cx">     debug(&quot;&quot;);
</span><span class="cx"> 
</span><span class="cx">     if (window.internals)
</span><del>-            internals.setWebGL2Enabled(true);
</del><ins>+            internals.settings.setWebGL2Enabled(true);
</ins><span class="cx">     gl = initWebGL(&quot;example&quot;, &quot;vshader&quot;, &quot;fshader&quot;, [ &quot;vPosition&quot;, &quot;index&quot; ],
</span><span class="cx">                    [ 1, 1, 1, 1 ], 1, null, true);
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkLayoutTestsfastcanvaswebglcopyBufferSubDatahtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/fast/canvas/webgl/copyBufferSubData.html (211005 => 211006)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/fast/canvas/webgl/copyBufferSubData.html        2017-01-21 01:46:18 UTC (rev 211005)
+++ trunk/LayoutTests/fast/canvas/webgl/copyBufferSubData.html        2017-01-21 02:23:47 UTC (rev 211006)
</span><span class="lines">@@ -9,7 +9,7 @@
</span><span class="cx"> description(&quot;Make sure that getBufferSubData() doesn't work on WebGL 1 contexts&quot;);
</span><span class="cx"> 
</span><span class="cx"> if (window.internals)
</span><del>-        internals.setWebGL2Enabled(true);
</del><ins>+        internals.settings.setWebGL2Enabled(true);
</ins><span class="cx"> 
</span><span class="cx"> var arrayBuffer = new ArrayBuffer(40);
</span><span class="cx"> var fullArrayView = new Float32Array(arrayBuffer); // [15, 16, 17, 18, 19, 20, 21, 22, 23, 24], 40 bytes
</span></span></pre></div>
<a id="trunkLayoutTestsfastcanvaswebglgetBufferSubDatawebgl1html"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/fast/canvas/webgl/getBufferSubData-webgl1.html (211005 => 211006)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/fast/canvas/webgl/getBufferSubData-webgl1.html        2017-01-21 01:46:18 UTC (rev 211005)
+++ trunk/LayoutTests/fast/canvas/webgl/getBufferSubData-webgl1.html        2017-01-21 02:23:47 UTC (rev 211006)
</span><span class="lines">@@ -9,7 +9,7 @@
</span><span class="cx"> description(&quot;Make sure that getBufferSubData() doesn't work on WebGL 1 contexts&quot;);
</span><span class="cx"> 
</span><span class="cx"> if (window.internals)
</span><del>-        internals.setWebGL2Enabled(true);
</del><ins>+        internals.settings.setWebGL2Enabled(true);
</ins><span class="cx"> 
</span><span class="cx"> var arrayBuffer = new ArrayBuffer(40);
</span><span class="cx"> var fullArrayView = new Float32Array(arrayBuffer); // [15, 16, 17, 18, 19, 20, 21, 22, 23, 24], 40 bytes
</span><span class="lines">@@ -28,7 +28,7 @@
</span><span class="cx"> tryFailUploadDownload();
</span><span class="cx"> 
</span><span class="cx"> if (window.internals)
</span><del>-        internals.setWebGL2Enabled(false);
</del><ins>+        internals.settings.setWebGL2Enabled(false);
</ins><span class="cx"> 
</span><span class="cx"> canvas = document.createElement(&quot;canvas&quot;);
</span><span class="cx"> canvas.width = 40;
</span></span></pre></div>
<a id="trunkLayoutTestsfastcanvaswebglwebgl2buffertargetshtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/fast/canvas/webgl/webgl2-buffer-targets.html (211005 => 211006)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/fast/canvas/webgl/webgl2-buffer-targets.html        2017-01-21 01:46:18 UTC (rev 211005)
+++ trunk/LayoutTests/fast/canvas/webgl/webgl2-buffer-targets.html        2017-01-21 02:23:47 UTC (rev 211006)
</span><span class="lines">@@ -9,7 +9,7 @@
</span><span class="cx"> description(&quot;Checks that using WebGL 2 buffer targets don't cause errors&quot;);
</span><span class="cx"> 
</span><span class="cx"> if (window.internals)
</span><del>-        internals.setWebGL2Enabled(true);
</del><ins>+        internals.settings.setWebGL2Enabled(true);
</ins><span class="cx"> 
</span><span class="cx"> var canvas = document.getElementById(&quot;c&quot;);
</span><span class="cx"> var context = canvas.getContext(&quot;webgl2&quot;);
</span></span></pre></div>
<a id="trunkLayoutTestsfastcanvaswebglwebgl2buffershtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/fast/canvas/webgl/webgl2-buffers.html (211005 => 211006)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/fast/canvas/webgl/webgl2-buffers.html        2017-01-21 01:46:18 UTC (rev 211005)
+++ trunk/LayoutTests/fast/canvas/webgl/webgl2-buffers.html        2017-01-21 02:23:47 UTC (rev 211006)
</span><span class="lines">@@ -9,7 +9,7 @@
</span><span class="cx"> description(&quot;Make sure that reading and writing WebGL2 buffers works as expected.&quot;);
</span><span class="cx"> 
</span><span class="cx"> if (window.internals)
</span><del>-        internals.setWebGL2Enabled(true);
</del><ins>+        internals.settings.setWebGL2Enabled(true);
</ins><span class="cx"> 
</span><span class="cx"> var arrayBuffer = new ArrayBuffer(40);
</span><span class="cx"> var fullArrayView = new Float32Array(arrayBuffer); // [15, 16, 17, 18, 19, 20, 21, 22, 23, 24], 40 bytes
</span></span></pre></div>
<a id="trunkLayoutTestsfastcanvaswebglwebgl2contextcreationhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/fast/canvas/webgl/webgl2-context-creation.html (211005 => 211006)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/fast/canvas/webgl/webgl2-context-creation.html        2017-01-21 01:46:18 UTC (rev 211005)
+++ trunk/LayoutTests/fast/canvas/webgl/webgl2-context-creation.html        2017-01-21 02:23:47 UTC (rev 211006)
</span><span class="lines">@@ -9,7 +9,7 @@
</span><span class="cx"> description(&quot;Checks that using a WebGL 2 context doesn't cause an error.&quot;);
</span><span class="cx"> 
</span><span class="cx"> if (window.internals)
</span><del>-        internals.setWebGL2Enabled(true);
</del><ins>+        internals.settings.setWebGL2Enabled(true);
</ins><span class="cx"> 
</span><span class="cx"> var canvas = document.getElementById(&quot;c&quot;);
</span><span class="cx"> var context = canvas.getContext(&quot;webgl2&quot;);
</span></span></pre></div>
<a id="trunkLayoutTestsfastcanvaswebglwebgl2runtimeflaghtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/fast/canvas/webgl/webgl2-runtime-flag.html (211005 => 211006)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/fast/canvas/webgl/webgl2-runtime-flag.html        2017-01-21 01:46:18 UTC (rev 211005)
+++ trunk/LayoutTests/fast/canvas/webgl/webgl2-runtime-flag.html        2017-01-21 02:23:47 UTC (rev 211006)
</span><span class="lines">@@ -18,9 +18,7 @@
</span><span class="cx">         return;
</span><span class="cx">     }
</span><span class="cx"> 
</span><del>-    var originalSetting = window.internals.webGL2Enabled();
-
-    window.internals.setWebGL2Enabled(true);
</del><ins>+    window.internals.settings.setWebGL2Enabled(true);
</ins><span class="cx">     var ctx = getContext(&quot;webgl2&quot;);
</span><span class="cx">     if (ctx)
</span><span class="cx">         output.textContent = &quot;PASS: WebGL 2.0 was available when enabled.&quot;;
</span><span class="lines">@@ -29,14 +27,12 @@
</span><span class="cx"> 
</span><span class="cx">     output = document.getElementById(&quot;output2&quot;);
</span><span class="cx"> 
</span><del>-    window.internals.setWebGL2Enabled(false);
</del><ins>+    window.internals.settings.setWebGL2Enabled(false);
</ins><span class="cx">     var ctx = getContext(&quot;webgl2&quot;);
</span><span class="cx">     if (ctx)
</span><span class="cx">         output.textContent = &quot;FAIL: WebGL 2.0 was available when disabled.&quot;;
</span><span class="cx">     else
</span><span class="cx">         output.textContent = &quot;PASS: WebGL 2.0 was not available when disabled.&quot;;
</span><del>-
-    window.internals.setWebGL2Enabled(originalSetting);
</del><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> window.addEventListener(&quot;load&quot;, run, false);
</span></span></pre></div>
<a id="trunkLayoutTestsfastcanvaswebglwebgl2texStoragehtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/fast/canvas/webgl/webgl2-texStorage.html (211005 => 211006)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/fast/canvas/webgl/webgl2-texStorage.html        2017-01-21 01:46:18 UTC (rev 211005)
+++ trunk/LayoutTests/fast/canvas/webgl/webgl2-texStorage.html        2017-01-21 02:23:47 UTC (rev 211006)
</span><span class="lines">@@ -9,7 +9,7 @@
</span><span class="cx"> description(&quot;Test that texStorage2D() works.&quot;);
</span><span class="cx"> 
</span><span class="cx"> if (window.internals)
</span><del>-    internals.setWebGL2Enabled(true);
</del><ins>+    internals.settings.setWebGL2Enabled(true);
</ins><span class="cx"> 
</span><span class="cx"> var canvas = document.getElementById(&quot;canvas&quot;);
</span><span class="cx"> var width = canvas.width;
</span></span></pre></div>
<a id="trunkLayoutTestsfastcanvaswebglwebgl2textureuploadenumshtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/fast/canvas/webgl/webgl2-texture-upload-enums.html (211005 => 211006)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/fast/canvas/webgl/webgl2-texture-upload-enums.html        2017-01-21 01:46:18 UTC (rev 211005)
+++ trunk/LayoutTests/fast/canvas/webgl/webgl2-texture-upload-enums.html        2017-01-21 02:23:47 UTC (rev 211006)
</span><span class="lines">@@ -9,7 +9,7 @@
</span><span class="cx"> description(&quot;Test that glTexImage2D and glTexSubImage2D accept new WebGL 2 enum values&quot;);
</span><span class="cx"> 
</span><span class="cx"> if (window.internals)
</span><del>-        internals.setWebGL2Enabled(true);
</del><ins>+        internals.settings.setWebGL2Enabled(true);
</ins><span class="cx"> 
</span><span class="cx"> var canvas = document.getElementById(&quot;canvas&quot;);
</span><span class="cx"> var width = canvas.width;
</span></span></pre></div>
<a id="trunkLayoutTestsfastcssensureflexboxcompatibilitywithinitialvalueshtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/fast/css/ensure-flexbox-compatibility-with-initial-values.html (211005 => 211006)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/fast/css/ensure-flexbox-compatibility-with-initial-values.html        2017-01-21 01:46:18 UTC (rev 211005)
+++ trunk/LayoutTests/fast/css/ensure-flexbox-compatibility-with-initial-values.html        2017-01-21 02:23:47 UTC (rev 211006)
</span><span class="lines">@@ -23,7 +23,7 @@
</span><span class="cx"> function checkInitialValues(gridEnabled)
</span><span class="cx"> {
</span><span class="cx">     if (window.internals)
</span><del>-        window.internals.setCSSGridLayoutEnabled(gridEnabled);
</del><ins>+        window.internals.settings.setCSSGridLayoutEnabled(gridEnabled);
</ins><span class="cx"> 
</span><span class="cx">     var root = document.createElement(&quot;div&quot;);
</span><span class="cx">     document.body.appendChild(root);
</span></span></pre></div>
<a id="trunkLayoutTestsfastcssgridlayoutgriddisablehtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/fast/css-grid-layout/grid-disable.html (211005 => 211006)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/fast/css-grid-layout/grid-disable.html        2017-01-21 01:46:18 UTC (rev 211005)
+++ trunk/LayoutTests/fast/css-grid-layout/grid-disable.html        2017-01-21 02:23:47 UTC (rev 211006)
</span><span class="lines">@@ -1,7 +1,7 @@
</span><span class="cx"> &lt;!DOCTYPE html&gt;
</span><span class="cx"> &lt;script&gt;
</span><span class="cx"> if (window.internals)
</span><del>-    window.internals.setCSSGridLayoutEnabled(false);
</del><ins>+    window.internals.settings.setCSSGridLayoutEnabled(false);
</ins><span class="cx"> &lt;/script&gt;
</span><span class="cx"> 
</span><span class="cx"> &lt;div id=&quot;grid&quot; style=&quot;display: grid&quot;&gt;&lt;/div&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsfastdomWindowwindowpropertiesperformanceresourcetiminghtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/fast/dom/Window/window-properties-performance-resource-timing.html (211005 => 211006)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/fast/dom/Window/window-properties-performance-resource-timing.html        2017-01-21 01:46:18 UTC (rev 211005)
+++ trunk/LayoutTests/fast/dom/Window/window-properties-performance-resource-timing.html        2017-01-21 02:23:47 UTC (rev 211006)
</span><span class="lines">@@ -7,7 +7,7 @@
</span><span class="cx">     testRunner.dumpAsText();
</span><span class="cx"> 
</span><span class="cx"> if (window.internals)
</span><del>-    internals.setResourceTimingSupport(true);
</del><ins>+    internals.settings.setResourceTimingEnabled(true);
</ins><span class="cx">     
</span><span class="cx"> var logBuffer = [];
</span><span class="cx"> function log(s)
</span><span class="lines">@@ -100,5 +100,5 @@
</span><span class="cx"> logValue('window.performance');
</span><span class="cx"> flushLog();
</span><span class="cx"> if (window.internals)
</span><del>-    internals.setResourceTimingSupport(false);
</del><ins>+    internals.settings.setResourceTimingEnabled(false);
</ins><span class="cx"> &lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestsfastdomnavigatordetachednocrashhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/fast/dom/navigator-detached-no-crash.html (211005 => 211006)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/fast/dom/navigator-detached-no-crash.html        2017-01-21 01:46:18 UTC (rev 211005)
+++ trunk/LayoutTests/fast/dom/navigator-detached-no-crash.html        2017-01-21 02:23:47 UTC (rev 211006)
</span><span class="lines">@@ -52,7 +52,8 @@
</span><span class="cx"> function check_navigator() {
</span><span class="cx">   var strings = [ ];
</span><span class="cx">   for (p in old_nav) {
</span><del>-    if (p == 'geolocation' || p == 'webkitGetUserMedia' || p == 'mediaDevices') // Don't include Geolocation or the Media Stream API functions until most platforms have support.
</del><ins>+    // Don't include some features until most platforms have support.
+    if (p == 'geolocation' || p == 'webkitGetUserMedia' || p == 'mediaDevices' || p == &quot;getGamepads&quot;)
</ins><span class="cx">       continue;
</span><span class="cx"> 
</span><span class="cx">     if (typeof old_nav[p] == 'function') {
</span></span></pre></div>
<a id="trunkLayoutTestshttptestsfetchredirectmodeandpreloadhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/http/tests/fetch/redirectmode-and-preload.html (211005 => 211006)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/fetch/redirectmode-and-preload.html        2017-01-21 01:46:18 UTC (rev 211005)
+++ trunk/LayoutTests/http/tests/fetch/redirectmode-and-preload.html        2017-01-21 02:23:47 UTC (rev 211006)
</span><span class="lines">@@ -10,7 +10,7 @@
</span><span class="cx">     &lt;script src=&quot;/js-test-resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
</span><span class="cx">     &lt;script&gt;
</span><span class="cx"> if (window.internals)
</span><del>-    internals.setLinkPreloadSupport(true);
</del><ins>+    internals.settings.setLinkPreloadEnabled(true);
</ins><span class="cx">     &lt;/script&gt;
</span><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></pre></div>
<a id="trunkLayoutTestshttptestsmiscresourcetimingresolutionhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/http/tests/misc/resource-timing-resolution.html (211005 => 211006)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/misc/resource-timing-resolution.html        2017-01-21 01:46:18 UTC (rev 211005)
+++ trunk/LayoutTests/http/tests/misc/resource-timing-resolution.html        2017-01-21 02:23:47 UTC (rev 211006)
</span><span class="lines">@@ -4,7 +4,7 @@
</span><span class="cx"> &lt;script&gt;
</span><span class="cx">     window.jsTestIsAsync = true;
</span><span class="cx">     if (window.internals)
</span><del>-        window.internals.setResourceTimingSupport(true);
</del><ins>+        window.internals.settings.setResourceTimingEnabled(true);
</ins><span class="cx"> &lt;/script&gt;
</span><span class="cx"> &lt;/head&gt;
</span><span class="cx"> &lt;body&gt;
</span><span class="lines">@@ -27,7 +27,7 @@
</span><span class="cx">     shouldBeNearZeroOrOne = integerMultipleOfResolution % 1;
</span><span class="cx">     shouldBe(&quot;shouldBeNearZeroOrOne &lt; 1e-10 || Math.abs(shouldBeNearZeroOrOne - 1) &lt; 1e-10&quot;, &quot;true&quot;);
</span><span class="cx">     if (window.internals)
</span><del>-        window.internals.setResourceTimingSupport(false);
</del><ins>+        window.internals.settings.setResourceTimingEnabled(false);
</ins><span class="cx">     finishJSTest();
</span><span class="cx"> });
</span><span class="cx"> &lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestshttptestsperformanceperformanceresourcetimingcachedentrieshtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/http/tests/performance/performance-resource-timing-cached-entries.html (211005 => 211006)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/performance/performance-resource-timing-cached-entries.html        2017-01-21 01:46:18 UTC (rev 211005)
+++ trunk/LayoutTests/http/tests/performance/performance-resource-timing-cached-entries.html        2017-01-21 02:23:47 UTC (rev 211006)
</span><span class="lines">@@ -2,7 +2,7 @@
</span><span class="cx"> &lt;html&gt;
</span><span class="cx"> &lt;script&gt;
</span><span class="cx">     if (window.internals)
</span><del>-        internals.setResourceTimingSupport(true);
</del><ins>+        internals.settings.setResourceTimingEnabled(true);
</ins><span class="cx">     if (window.testRunner) {
</span><span class="cx">         testRunner.dumpAsText()
</span><span class="cx">         testRunner.waitUntilDone();
</span><span class="lines">@@ -23,7 +23,7 @@
</span><span class="cx">         };
</span><span class="cx">         shouldBe(&quot;foundResource&quot;, &quot;2&quot;);
</span><span class="cx">         if (window.internals)
</span><del>-            window.internals.setResourceTimingSupport(false);
</del><ins>+            window.internals.settings.setResourceTimingEnabled(false);
</ins><span class="cx">         if (window.testRunner)
</span><span class="cx">             testRunner.notifyDone();
</span><span class="cx">     };
</span></span></pre></div>
<a id="trunkLayoutTestshttptestsperformanceperformanceresourcetimingentriesiterablehtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/http/tests/performance/performance-resource-timing-entries-iterable.html (211005 => 211006)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/performance/performance-resource-timing-entries-iterable.html        2017-01-21 01:46:18 UTC (rev 211005)
+++ trunk/LayoutTests/http/tests/performance/performance-resource-timing-entries-iterable.html        2017-01-21 02:23:47 UTC (rev 211006)
</span><span class="lines">@@ -2,7 +2,7 @@
</span><span class="cx"> &lt;html&gt;
</span><span class="cx"> &lt;script&gt;
</span><span class="cx">     if (window.internals)
</span><del>-        internals.setResourceTimingSupport(true);
</del><ins>+        internals.settings.setResourceTimingEnabled(true);
</ins><span class="cx">     function resolve(path) {
</span><span class="cx">         var a = document.createElement(&quot;a&quot;);
</span><span class="cx">         a.href = path;
</span><span class="lines">@@ -27,7 +27,7 @@
</span><span class="cx">         entryTypes = resources.map((entry) =&gt; entry.entryType);
</span><span class="cx">         shouldBeEqualToString(&quot;entryTypes[0]&quot;, &quot;resource&quot;);
</span><span class="cx">         if (window.internals)
</span><del>-            window.internals.setResourceTimingSupport(false);
</del><ins>+            window.internals.settings.setResourceTimingEnabled(false);
</ins><span class="cx">         finishJSTest();
</span><span class="cx">     });
</span><span class="cx"> &lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestshttptestsperformanceperformanceresourcetimingentrieshtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/http/tests/performance/performance-resource-timing-entries.html (211005 => 211006)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/performance/performance-resource-timing-entries.html        2017-01-21 01:46:18 UTC (rev 211005)
+++ trunk/LayoutTests/http/tests/performance/performance-resource-timing-entries.html        2017-01-21 02:23:47 UTC (rev 211006)
</span><span class="lines">@@ -2,7 +2,7 @@
</span><span class="cx"> &lt;html&gt;
</span><span class="cx"> &lt;script&gt;
</span><span class="cx">     if (window.internals)
</span><del>-        internals.setResourceTimingSupport(true);
</del><ins>+        internals.settings.setResourceTimingEnabled(true);
</ins><span class="cx">     var url = &quot;../../resources/square100.png?&quot;;
</span><span class="cx">     url += Math.random();
</span><span class="cx">     document.write(&quot;&lt;img src='&quot; + url + &quot;'&gt;&quot;);
</span><span class="lines">@@ -21,7 +21,7 @@
</span><span class="cx">         };
</span><span class="cx">         shouldBeTrue(&quot;foundImg&quot;);
</span><span class="cx">         if (window.internals)
</span><del>-            window.internals.setResourceTimingSupport(false);
</del><ins>+            window.internals.settings.setResourceTimingEnabled(false);
</ins><span class="cx">     });
</span><span class="cx"> &lt;/script&gt;
</span><span class="cx"> &lt;/body&gt;
</span></span></pre></div>
<a id="trunkLayoutTestshttptestsperformanceperformanceresourcetiminginitiatorcsshtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/http/tests/performance/performance-resource-timing-initiator-css.html (211005 => 211006)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/performance/performance-resource-timing-initiator-css.html        2017-01-21 01:46:18 UTC (rev 211005)
+++ trunk/LayoutTests/http/tests/performance/performance-resource-timing-initiator-css.html        2017-01-21 02:23:47 UTC (rev 211006)
</span><span class="lines">@@ -2,7 +2,7 @@
</span><span class="cx"> &lt;html&gt;
</span><span class="cx"> &lt;script&gt;
</span><span class="cx">     if (window.internals)
</span><del>-        internals.setResourceTimingSupport(true);
</del><ins>+        internals.settings.setResourceTimingEnabled(true);
</ins><span class="cx">     if (window.testRunner) {
</span><span class="cx">         testRunner.dumpAsText()
</span><span class="cx">         testRunner.waitUntilDone();
</span><span class="lines">@@ -24,7 +24,7 @@
</span><span class="cx">             }
</span><span class="cx">         };
</span><span class="cx">         if (window.internals)
</span><del>-            window.internals.setResourceTimingSupport(false);
</del><ins>+            window.internals.settings.setResourceTimingEnabled(false);
</ins><span class="cx">         if (window.testRunner)
</span><span class="cx">             testRunner.notifyDone();
</span><span class="cx">     };
</span></span></pre></div>
<a id="trunkLayoutTestshttptestsperformanceperformanceresourcetiminginitiatornooverridehtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/http/tests/performance/performance-resource-timing-initiator-no-override.html (211005 => 211006)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/performance/performance-resource-timing-initiator-no-override.html        2017-01-21 01:46:18 UTC (rev 211005)
+++ trunk/LayoutTests/http/tests/performance/performance-resource-timing-initiator-no-override.html        2017-01-21 02:23:47 UTC (rev 211006)
</span><span class="lines">@@ -2,7 +2,7 @@
</span><span class="cx"> &lt;html&gt;
</span><span class="cx"> &lt;script&gt;
</span><span class="cx">     if (window.internals)
</span><del>-        internals.setResourceTimingSupport(true);
</del><ins>+        internals.settings.setResourceTimingEnabled(true);
</ins><span class="cx">     if (window.testRunner) {
</span><span class="cx">         testRunner.dumpAsText()
</span><span class="cx">         testRunner.waitUntilDone();
</span><span class="lines">@@ -28,7 +28,7 @@
</span><span class="cx">         };
</span><span class="cx">         shouldBe(&quot;foundResources&quot;, &quot;1&quot;);
</span><span class="cx">         if (window.internals)
</span><del>-            window.internals.setResourceTimingSupport(false);
</del><ins>+            window.internals.settings.setResourceTimingEnabled(false);
</ins><span class="cx">         if (window.testRunner)
</span><span class="cx">             testRunner.notifyDone();
</span><span class="cx">     };
</span></span></pre></div>
<a id="trunkLayoutTestshttptestsperformanceperformanceresourcetimingxhrsingleentryhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/http/tests/performance/performance-resource-timing-xhr-single-entry.html (211005 => 211006)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/performance/performance-resource-timing-xhr-single-entry.html        2017-01-21 01:46:18 UTC (rev 211005)
+++ trunk/LayoutTests/http/tests/performance/performance-resource-timing-xhr-single-entry.html        2017-01-21 02:23:47 UTC (rev 211006)
</span><span class="lines">@@ -2,7 +2,7 @@
</span><span class="cx"> &lt;html&gt;
</span><span class="cx"> &lt;script&gt;
</span><span class="cx">     if (window.internals)
</span><del>-        internals.setResourceTimingSupport(true);
</del><ins>+        internals.settings.setResourceTimingEnabled(true);
</ins><span class="cx">     if (window.testRunner) {
</span><span class="cx">         testRunner.dumpAsText()
</span><span class="cx">         testRunner.waitUntilDone();
</span><span class="lines">@@ -23,7 +23,7 @@
</span><span class="cx">         shouldBe(&quot;foundResource&quot;, &quot;1&quot;);
</span><span class="cx">         shouldBeEqualToString(&quot;initiator&quot;, &quot;xmlhttprequest&quot;);
</span><span class="cx">         if (window.internals)
</span><del>-            window.internals.setResourceTimingSupport(false);
</del><ins>+            window.internals.settings.setResourceTimingEnabled(false);
</ins><span class="cx">         if (window.testRunner)
</span><span class="cx">             testRunner.notifyDone();
</span><span class="cx">     };
</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 (211005 => 211006)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/preload/delaying_onload_link_preload_after_discovery.html        2017-01-21 01:46:18 UTC (rev 211005)
+++ trunk/LayoutTests/http/tests/preload/delaying_onload_link_preload_after_discovery.html        2017-01-21 02:23:47 UTC (rev 211006)
</span><span class="lines">@@ -1,7 +1,7 @@
</span><span class="cx"> &lt;!DOCTYPE html&gt;
</span><span class="cx"> &lt;script&gt;
</span><span class="cx">     if (window.internals)
</span><del>-        window.internals.setLinkPreloadSupport(true);
</del><ins>+        window.internals.settings.setLinkPreloadEnabled(true);
</ins><span class="cx">     if (window.testRunner) {
</span><span class="cx">         testRunner.dumpAsText()
</span><span class="cx">         testRunner.waitUntilDone();
</span><span class="lines">@@ -15,7 +15,7 @@
</span><span class="cx">     window.addEventListener(&quot;load&quot;, function() {
</span><span class="cx">         shouldBeTrue(&quot;finishedScript&quot;);
</span><span class="cx">         if (window.internals)
</span><del>-            window.internals.setLinkPreloadSupport(false);
</del><ins>+            window.internals.settings.setLinkPreloadEnabled(false);
</ins><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 (211005 => 211006)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/preload/delaying_onload_link_preload_after_discovery_image.html        2017-01-21 01:46:18 UTC (rev 211005)
+++ trunk/LayoutTests/http/tests/preload/delaying_onload_link_preload_after_discovery_image.html        2017-01-21 02:23:47 UTC (rev 211006)
</span><span class="lines">@@ -1,7 +1,7 @@
</span><span class="cx"> &lt;!DOCTYPE html&gt;
</span><span class="cx"> &lt;script&gt;
</span><span class="cx">     if (window.internals)
</span><del>-        window.internals.setLinkPreloadSupport(true);
</del><ins>+        window.internals.settings.setLinkPreloadEnabled(true);
</ins><span class="cx">     if (window.testRunner) {
</span><span class="cx">         testRunner.dumpAsText()
</span><span class="cx">         testRunner.waitUntilDone();
</span><span class="lines">@@ -15,7 +15,7 @@
</span><span class="cx">     window.addEventListener(&quot;load&quot;, function() {
</span><span class="cx">         shouldBeTrue(&quot;finishedImage&quot;);
</span><span class="cx">         if (window.internals)
</span><del>-            window.internals.setLinkPreloadSupport(false);
</del><ins>+            window.internals.settings.setLinkPreloadEnabled(false);
</ins><span class="cx">         testRunner.notifyDone();
</span><span class="cx">     });
</span><span class="cx">     var img = new Image();
</span></span></pre></div>
<a id="trunkLayoutTestshttptestspreloaddownload_resourceshtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/http/tests/preload/download_resources.html (211005 => 211006)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/preload/download_resources.html        2017-01-21 01:46:18 UTC (rev 211005)
+++ trunk/LayoutTests/http/tests/preload/download_resources.html        2017-01-21 02:23:47 UTC (rev 211006)
</span><span class="lines">@@ -3,7 +3,7 @@
</span><span class="cx"> &lt;head&gt;
</span><span class="cx"> &lt;script&gt;
</span><span class="cx">     if (window.internals)
</span><del>-        window.internals.setLinkPreloadSupport(true);
</del><ins>+        window.internals.settings.setLinkPreloadEnabled(true);
</ins><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;link rel=preload href=&quot;../resources/dummy.js&quot; as=script&gt;
</span><span class="lines">@@ -31,5 +31,5 @@
</span><span class="cx"> &lt;/script&gt;
</span><span class="cx"> &lt;script&gt;
</span><span class="cx">     if (window.internals)
</span><del>-        window.internals.setLinkPreloadSupport(false);
</del><ins>+        window.internals.settings.setLinkPreloadEnabled(false);
</ins><span class="cx"> &lt;/script&gt;
</span></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 (211005 => 211006)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/preload/download_resources_from_header_iframe.html        2017-01-21 01:46:18 UTC (rev 211005)
+++ trunk/LayoutTests/http/tests/preload/download_resources_from_header_iframe.html        2017-01-21 02:23:47 UTC (rev 211006)
</span><span class="lines">@@ -1,7 +1,7 @@
</span><span class="cx"> &lt;!DOCTYPE html&gt;
</span><span class="cx"> &lt;script&gt;
</span><span class="cx">     if (window.internals)
</span><del>-        window.internals.setLinkPreloadSupport(true);
</del><ins>+        window.internals.settings.setLinkPreloadEnabled(true);
</ins><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 (211005 => 211006)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/preload/download_resources_from_invalid_headers.html        2017-01-21 01:46:18 UTC (rev 211005)
+++ trunk/LayoutTests/http/tests/preload/download_resources_from_invalid_headers.html        2017-01-21 02:23:47 UTC (rev 211006)
</span><span class="lines">@@ -1,7 +1,7 @@
</span><span class="cx"> &lt;!DOCTYPE html&gt;
</span><span class="cx"> &lt;script&gt;
</span><span class="cx">     if (window.internals)
</span><del>-        window.internals.setLinkPreloadSupport(true);
</del><ins>+        window.internals.settings.setLinkPreloadEnabled(true);
</ins><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 (211005 => 211006)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/preload/dynamic_adding_preload.html        2017-01-21 01:46:18 UTC (rev 211005)
+++ trunk/LayoutTests/http/tests/preload/dynamic_adding_preload.html        2017-01-21 02:23:47 UTC (rev 211006)
</span><span class="lines">@@ -3,7 +3,7 @@
</span><span class="cx"> &lt;head&gt;
</span><span class="cx"> &lt;script&gt;
</span><span class="cx">     if (window.internals)
</span><del>-        window.internals.setLinkPreloadSupport(true);
</del><ins>+        window.internals.settings.setLinkPreloadEnabled(true);
</ins><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">@@ -19,6 +19,6 @@
</span><span class="cx">     shouldBeTrue(&quot;internals.isPreloaded('../resources/dummy.js');&quot;);
</span><span class="cx"> 
</span><span class="cx">     if (window.internals)
</span><del>-        window.internals.setLinkPreloadSupport(false);
</del><ins>+        window.internals.settings.setLinkPreloadEnabled(false);
</ins><span class="cx"> &lt;/script&gt;
</span><span class="cx"> &lt;/body&gt;
</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 (211005 => 211006)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/preload/dynamic_remove_preload_href.html        2017-01-21 01:46:18 UTC (rev 211005)
+++ trunk/LayoutTests/http/tests/preload/dynamic_remove_preload_href.html        2017-01-21 02:23:47 UTC (rev 211006)
</span><span class="lines">@@ -3,8 +3,8 @@
</span><span class="cx"> &lt;head&gt;
</span><span class="cx"> &lt;script&gt;
</span><span class="cx">     if (window.internals) {
</span><del>-        window.internals.setLinkPreloadSupport(true);
-        window.internals.setResourceTimingSupport(true);
</del><ins>+        window.internals.settings.setLinkPreloadEnabled(true);
+        window.internals.settings.setResourceTimingEnabled(true);
</ins><span class="cx">     }
</span><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="lines">@@ -25,8 +25,8 @@
</span><span class="cx">         }
</span><span class="cx">         shouldBeFalse(&quot;downloadedImage&quot;);
</span><span class="cx">         if (window.internals) {
</span><del>-            window.internals.setLinkPreloadSupport(false);
-            window.internals.setResourceTimingSupport(false);
</del><ins>+            window.internals.settings.setLinkPreloadEnabled(false);
+            window.internals.settings.setResourceTimingEnabled(false);
</ins><span class="cx">         }
</span><span class="cx">     });
</span><span class="cx"> &lt;/script&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 (211005 => 211006)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/preload/not_delaying_window_onload_before_discovery.html        2017-01-21 01:46:18 UTC (rev 211005)
+++ trunk/LayoutTests/http/tests/preload/not_delaying_window_onload_before_discovery.html        2017-01-21 02:23:47 UTC (rev 211006)
</span><span class="lines">@@ -1,7 +1,7 @@
</span><span class="cx"> &lt;!DOCTYPE html&gt;
</span><span class="cx"> &lt;script&gt;
</span><span class="cx">     if (window.internals)
</span><del>-        window.internals.setLinkPreloadSupport(true);
</del><ins>+        window.internals.settings.setLinkPreloadEnabled(true);
</ins><span class="cx">     if (window.testRunner) {
</span><span class="cx">         testRunner.dumpAsText()
</span><span class="cx">         testRunner.waitUntilDone();
</span><span class="lines">@@ -16,7 +16,7 @@
</span><span class="cx">         shouldBeTrue(&quot;windowOnLoad&quot;);
</span><span class="cx">         if (finishedImage &amp;&amp; finishedScript) {
</span><span class="cx">             if (window.internals)
</span><del>-                window.internals.setLinkPreloadSupport(false);
</del><ins>+                window.internals.settings.setLinkPreloadEnabled(false);
</ins><span class="cx">             if (window.testRunner)
</span><span class="cx">                 testRunner.notifyDone();
</span><span class="cx">         }
</span></span></pre></div>
<a id="trunkLayoutTestshttptestspreloadonerror_eventhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/http/tests/preload/onerror_event.html (211005 => 211006)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/preload/onerror_event.html        2017-01-21 01:46:18 UTC (rev 211005)
+++ trunk/LayoutTests/http/tests/preload/onerror_event.html        2017-01-21 02:23:47 UTC (rev 211006)
</span><span class="lines">@@ -1,7 +1,7 @@
</span><span class="cx"> &lt;!DOCTYPE html&gt;
</span><span class="cx"> &lt;script&gt;
</span><span class="cx">     if (window.internals)
</span><del>-        window.internals.setLinkPreloadSupport(true);
</del><ins>+        window.internals.settings.setLinkPreloadEnabled(true);
</ins><span class="cx">     if (window.testRunner) {
</span><span class="cx">         testRunner.dumpAsText()
</span><span class="cx">         testRunner.waitUntilDone();
</span><span class="lines">@@ -38,7 +38,7 @@
</span><span class="cx">         shouldBeTrue(&quot;gibrishFailed&quot;);
</span><span class="cx">         shouldBeTrue(&quot;noTypeFailed&quot;);
</span><span class="cx">         if (window.internals)
</span><del>-            window.internals.setLinkPreloadSupport(false);
</del><ins>+            window.internals.settings.setLinkPreloadEnabled(false);
</ins><span class="cx">         if (window.testRunner)
</span><span class="cx">             testRunner.notifyDone();
</span><span class="cx">     };
</span></span></pre></div>
<a id="trunkLayoutTestshttptestspreloadonload_eventhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/http/tests/preload/onload_event.html (211005 => 211006)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/preload/onload_event.html        2017-01-21 01:46:18 UTC (rev 211005)
+++ trunk/LayoutTests/http/tests/preload/onload_event.html        2017-01-21 02:23:47 UTC (rev 211006)
</span><span class="lines">@@ -1,7 +1,7 @@
</span><span class="cx"> &lt;!DOCTYPE html&gt;
</span><span class="cx"> &lt;script&gt;
</span><span class="cx">     if (window.internals)
</span><del>-        window.internals.setLinkPreloadSupport(true);
</del><ins>+        window.internals.settings.setLinkPreloadEnabled(true);
</ins><span class="cx">     if (window.testRunner) {
</span><span class="cx">         testRunner.dumpAsText()
</span><span class="cx">         testRunner.waitUntilDone();
</span><span class="lines">@@ -51,7 +51,7 @@
</span><span class="cx">         shouldBeTrue(&quot;noTypeLoaded&quot;);
</span><span class="cx">         shouldBeTrue(&quot;emptyTypeLoaded&quot;);
</span><span class="cx">         if (window.internals)
</span><del>-            window.internals.setLinkPreloadSupport(false);
</del><ins>+            window.internals.settings.setLinkPreloadEnabled(false);
</ins><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 (211005 => 211006)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/preload/resources/download_resources_from_header.php        2017-01-21 01:46:18 UTC (rev 211005)
+++ trunk/LayoutTests/http/tests/preload/resources/download_resources_from_header.php        2017-01-21 02:23:47 UTC (rev 211006)
</span><span class="lines">@@ -22,5 +22,5 @@
</span><span class="cx"> &lt;/script&gt;
</span><span class="cx"> &lt;script&gt;
</span><span class="cx">     if (window.internals)
</span><del>-        window.internals.setLinkPreloadSupport(false);
</del><ins>+        window.internals.settings.setLinkPreloadEnabled(false);
</ins><span class="cx"> &lt;/script&gt;
</span></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 (211005 => 211006)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/preload/resources/invalid_resources_from_header.php        2017-01-21 01:46:18 UTC (rev 211005)
+++ trunk/LayoutTests/http/tests/preload/resources/invalid_resources_from_header.php        2017-01-21 02:23:47 UTC (rev 211006)
</span><span class="lines">@@ -42,5 +42,5 @@
</span><span class="cx"> &lt;/script&gt;
</span><span class="cx"> &lt;script&gt;
</span><span class="cx">     if (window.internals)
</span><del>-        window.internals.setLinkPreloadSupport(false);
</del><ins>+        window.internals.settings.setLinkPreloadEnabled(false);
</ins><span class="cx"> &lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestshttptestspreloadsingle_download_preload_runnerhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/http/tests/preload/single_download_preload_runner.html (211005 => 211006)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/preload/single_download_preload_runner.html        2017-01-21 01:46:18 UTC (rev 211005)
+++ trunk/LayoutTests/http/tests/preload/single_download_preload_runner.html        2017-01-21 02:23:47 UTC (rev 211006)
</span><span class="lines">@@ -3,8 +3,8 @@
</span><span class="cx"> &lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;script&gt;
</span><span class="cx">     if (window.internals) {
</span><del>-        internals.setLinkPreloadSupport(true);
-        internals.setResourceTimingSupport(true);
</del><ins>+        internals.settings.setLinkPreloadEnabled(true);
+        internals.settings.setResourceTimingEnabled(true);
</ins><span class="cx">     }
</span><span class="cx">     var t = async_test('Makes sure that preloaded resources are not downloaded again when used');
</span><span class="cx"> 
</span><span class="lines">@@ -12,8 +12,8 @@
</span><span class="cx">         var data = event.data;
</span><span class="cx">         assert_equals(data, 10, &quot;The number of resource downloads&quot;);
</span><span class="cx">         if (window.internals) {
</span><del>-            internals.setLinkPreloadSupport(false);
-            internals.setResourceTimingSupport(false);
</del><ins>+            internals.settings.setLinkPreloadEnabled(false);
+            internals.settings.setResourceTimingEnabled(false);
</ins><span class="cx">         }
</span><span class="cx">         t.done();
</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 (211005 => 211006)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/security/cached-cross-origin-preloaded-css-stylesheet.html        2017-01-21 01:46:18 UTC (rev 211005)
+++ trunk/LayoutTests/http/tests/security/cached-cross-origin-preloaded-css-stylesheet.html        2017-01-21 02:23:47 UTC (rev 211006)
</span><span class="lines">@@ -1,7 +1,7 @@
</span><span class="cx"> &lt;!DOCTYPE html&gt;
</span><span class="cx"> &lt;script&gt;
</span><span class="cx"> if (window.internals)
</span><del>-    internals.setLinkPreloadSupport(true);
</del><ins>+    internals.settings.setLinkPreloadEnabled(true);
</ins><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 (211005 => 211006)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/security/cached-cross-origin-preloading-css-stylesheet.html        2017-01-21 01:46:18 UTC (rev 211005)
+++ trunk/LayoutTests/http/tests/security/cached-cross-origin-preloading-css-stylesheet.html        2017-01-21 02:23:47 UTC (rev 211006)
</span><span class="lines">@@ -3,7 +3,7 @@
</span><span class="cx"> &lt;body&gt;
</span><span class="cx"> &lt;script&gt;
</span><span class="cx"> if (window.internals)
</span><del>-    internals.setLinkPreloadSupport(true);
</del><ins>+    internals.settings.setLinkPreloadEnabled(true);
</ins><span class="cx"> if (window.testRunner) {
</span><span class="cx">    testRunner.dumpAsText();
</span><span class="cx">    testRunner.waitUntilDone();
</span></span></pre></div>
<a id="trunkLayoutTestsimportedw3cChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/imported/w3c/ChangeLog (211005 => 211006)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/imported/w3c/ChangeLog        2017-01-21 01:46:18 UTC (rev 211005)
+++ trunk/LayoutTests/imported/w3c/ChangeLog        2017-01-21 02:23:47 UTC (rev 211006)
</span><span class="lines">@@ -1,3 +1,16 @@
</span><ins>+2017-01-20  Joseph Pecoraro  &lt;pecoraro@apple.com&gt;
+
+        Cleanup RuntimeEnabledFeatures
+        https://bugs.webkit.org/show_bug.cgi?id=167228
+
+        Reviewed by Simon Fraser.
+
+        * web-platform-tests/resource-timing/resource_cached-expected.txt:
+        * web-platform-tests/resource-timing/resource_connection_reuse-expected.txt:
+        * web-platform-tests/resource-timing/resource_dynamic_insertion-expected.txt:
+        The previous internals API didn't appear to be working. Making it work
+        improved these results.
+
</ins><span class="cx"> 2017-01-20  Chris Dumez  &lt;cdumez@apple.com&gt;
</span><span class="cx"> 
</span><span class="cx">         Unreviewed, unskip innerText/ folder in ImportExpectations
</span></span></pre></div>
<a id="trunkLayoutTestsimportedw3cwebplatformtestsresourcetimingresource_cachedexpectedtxt"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/resource-timing/resource_cached-expected.txt (211005 => 211006)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/imported/w3c/web-platform-tests/resource-timing/resource_cached-expected.txt        2017-01-21 01:46:18 UTC (rev 211005)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/resource-timing/resource_cached-expected.txt        2017-01-21 02:23:47 UTC (rev 211006)
</span><span class="lines">@@ -1,11 +1,9 @@
</span><del>-CONSOLE MESSAGE: line 175: TypeError: undefined is not an object (evaluating 'this.performanceContext.getEntriesByType.apply')
</del><span class="cx"> Description
</span><span class="cx"> 
</span><span class="cx"> This test validates that a 304 Not Modified resource appears in the buffer.
</span><span class="cx"> 
</span><span class="cx"> 
</span><del>-Harness Error (FAIL), message = TypeError: undefined is not an object (evaluating 'this.performanceContext.getEntriesByType.apply')
-
</del><span class="cx"> PASS window.performance is defined 
</span><span class="cx"> PASS window.performance.getEntriesByType is defined 
</span><ins>+FAIL There should be two entries assert_equals: There should be two entries expected 2 but got 0
</ins><span class="cx"> 
</span></span></pre></div>
<a id="trunkLayoutTestsimportedw3cwebplatformtestsresourcetimingresource_connection_reuseexpectedtxt"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/resource-timing/resource_connection_reuse-expected.txt (211005 => 211006)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/imported/w3c/web-platform-tests/resource-timing/resource_connection_reuse-expected.txt        2017-01-21 01:46:18 UTC (rev 211005)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/resource-timing/resource_connection_reuse-expected.txt        2017-01-21 02:23:47 UTC (rev 211006)
</span><span class="lines">@@ -1,11 +1,12 @@
</span><del>-CONSOLE MESSAGE: line 175: TypeError: undefined is not an object (evaluating 'this.performanceContext.getEntriesByType.apply')
</del><ins>+CONSOLE MESSAGE: line 41: TypeError: undefined is not an object (evaluating 'entry.fetchStart')
</ins><span class="cx"> Description
</span><span class="cx"> 
</span><span class="cx"> This test validates that connectStart and connectEnd are the same when a connection is reused (e.g. when a persistent connection is used).
</span><span class="cx"> 
</span><span class="cx"> 
</span><del>-Harness Error (FAIL), message = TypeError: undefined is not an object (evaluating 'this.performanceContext.getEntriesByType.apply')
</del><ins>+Harness Error (FAIL), message = TypeError: undefined is not an object (evaluating 'entry.fetchStart')
</ins><span class="cx"> 
</span><span class="cx"> PASS window.performance is defined 
</span><span class="cx"> PASS window.performance.getEntriesByType is defined 
</span><ins>+FAIL There should be 2 PerformanceEntries assert_equals: There should be 2 PerformanceEntries expected 2 but got 0
</ins><span class="cx"> 
</span></span></pre></div>
<a id="trunkLayoutTestsimportedw3cwebplatformtestsresourcetimingresource_dynamic_insertionexpectedtxt"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/resource-timing/resource_dynamic_insertion-expected.txt (211005 => 211006)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/imported/w3c/web-platform-tests/resource-timing/resource_dynamic_insertion-expected.txt        2017-01-21 01:46:18 UTC (rev 211005)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/resource-timing/resource_dynamic_insertion-expected.txt        2017-01-21 02:23:47 UTC (rev 211006)
</span><span class="lines">@@ -1,11 +1,11 @@
</span><del>-CONSOLE MESSAGE: line 175: TypeError: undefined is not an object (evaluating 'this.performanceContext.getEntriesByType.apply')
</del><span class="cx"> Description
</span><span class="cx"> 
</span><span class="cx"> This test validates that initiator types are represented even when dynamically inserted.
</span><span class="cx"> 
</span><span class="cx"> 
</span><del>-Harness Error (FAIL), message = TypeError: undefined is not an object (evaluating 'this.performanceContext.getEntriesByType.apply')
-
</del><span class="cx"> PASS window.performance is defined 
</span><span class="cx"> PASS window.performance.getEntriesByType is defined 
</span><ins>+PASS http://localhost:8800/resource-timing/resources/inject_resource_test.html is expected to have initiatorType iframe 
+PASS http://localhost:8800/resource-timing/resources/resource_timing_test0.css is expected to have initiatorType link 
+PASS http://localhost:8800/resource-timing/resources/resource_timing_test0.png is expected to have initiatorType img 
</ins><span class="cx"> 
</span></span></pre></div>
<a id="trunkLayoutTestsplatformmacwk2fastdomnavigatordetachednocrashexpectedtxt"></a>
<div class="delfile"><h4>Deleted: trunk/LayoutTests/platform/mac-wk2/fast/dom/navigator-detached-no-crash-expected.txt (211005 => 211006)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/platform/mac-wk2/fast/dom/navigator-detached-no-crash-expected.txt        2017-01-21 01:46:18 UTC (rev 211005)
+++ trunk/LayoutTests/platform/mac-wk2/fast/dom/navigator-detached-no-crash-expected.txt        2017-01-21 02:23:47 UTC (rev 211006)
</span><span class="lines">@@ -1,41 +0,0 @@
</span><del>-This tests that the navigator object of a deleted frame is disconnected properly. Accessing fields or methods shouldn't crash the browser. 
- Check Navigator
-navigator.appCodeName is OK
-navigator.appName is OK
-navigator.appVersion is OK
-navigator.cookieEnabled is OK
-navigator.getGamepads() is OK
-navigator.getStorageUpdates() is OK
-navigator.hardwareConcurrency is OK
-navigator.javaEnabled() is OK
-navigator.language is OK
-navigator.languages is OK
-navigator.mimeTypes is OK
-navigator.onLine is OK
-navigator.platform is OK
-navigator.plugins is OK
-navigator.product is OK
-navigator.productSub is OK
-navigator.userAgent is OK
-navigator.vendor is OK
-navigator.vendorSub is OK
-navigator.appCodeName is OK
-navigator.appName is OK
-navigator.appVersion is OK
-navigator.cookieEnabled is OK
-navigator.getGamepads() is OK
-navigator.getStorageUpdates() is OK
-navigator.hardwareConcurrency is OK
-navigator.javaEnabled() is OK
-navigator.language is OK
-navigator.languages is OK
-navigator.mimeTypes is OK
-navigator.onLine is OK
-navigator.platform is OK
-navigator.plugins is OK
-navigator.product is OK
-navigator.productSub is OK
-navigator.userAgent is OK
-navigator.vendor is OK
-navigator.vendorSub is OK
-
</del></span></pre></div>
<a id="trunkLayoutTestsresourcestestharnessreportjs"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/resources/testharnessreport.js (211005 => 211006)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/resources/testharnessreport.js        2017-01-21 01:46:18 UTC (rev 211005)
+++ trunk/LayoutTests/resources/testharnessreport.js        2017-01-21 02:23:47 UTC (rev 211006)
</span><span class="lines">@@ -89,6 +89,6 @@
</span><span class="cx">     });
</span><span class="cx"> 
</span><span class="cx">     if (window.internals) {
</span><del>-        internals.setResourceTimingSupport(true);
</del><ins>+        internals.settings.setResourceTimingEnabled(true);
</ins><span class="cx">     }
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkSourceWebCoreChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/ChangeLog (211005 => 211006)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/ChangeLog        2017-01-21 01:46:18 UTC (rev 211005)
+++ trunk/Source/WebCore/ChangeLog        2017-01-21 02:23:47 UTC (rev 211006)
</span><span class="lines">@@ -1,3 +1,133 @@
</span><ins>+2017-01-20  Joseph Pecoraro  &lt;pecoraro@apple.com&gt;
+
+        Cleanup RuntimeEnabledFeatures
+        https://bugs.webkit.org/show_bug.cgi?id=167228
+
+        Reviewed by Simon Fraser.
+
+        RuntimeEnabledFeatures::reset() is bad for tests. It was getting called
+        after the TestRunners had set up all the Settings and RuntimeEnabledFeatures
+        they expected, so it was clearing the &quot;consistent state&quot; set by TestRunners.
+
+        Cleanup within RuntimeEnabledFeatures:
+
+          - Initialize all members.
+          - Remove unused features.
+          - Remove reset() no longer used.
+          - Document features that do not change (potentially removable).
+          - Document features that are not used but have APIs (use or remove later).
+          - Drop webkit prefix for these internal only apis.
+          - Move things around a bit to make it more readable.
+          - Enable the Fetch API by default (WebKit levels all were enabling it).
+
+        Cleanup within Internals:
+
+          - Move all RuntimeEnabledFeature toggling to InternalSettings
+          - Save and restore these RuntimeEnabledFeatures in InternalSettings
+
+        * Modules/mediastream/MediaStreamEvent.idl:
+        * Modules/mediastream/NavigatorMediaDevices.idl:
+        * Modules/mediastream/NavigatorUserMedia.idl:
+        * Modules/mediastream/RTCDTMFToneChangeEvent.idl:
+        * Modules/mediastream/RTCIceCandidate.idl:
+        * Modules/mediastream/RTCPeerConnection.idl:
+        * Modules/mediastream/RTCRtpReceiver.idl:
+        * Modules/mediastream/RTCRtpSender.idl:
+        * Modules/mediastream/RTCRtpTransceiver.idl:
+        * Modules/mediastream/RTCSessionDescription.idl:
+        * Modules/mediastream/RTCTrackEvent.idl:
+        Canonical usage is to start with a capital letter.
+
+        * dom/EventNames.in:
+        No port has API/SPI to disable this feature at runtime and the default is
+        to have the feature enabled, so this is no different from the runtime flag.
+
+        * page/DOMWindow.cpp:
+        (WebCore::DOMWindow::addEventListener):
+        These features were always enabled and not toggleable. So drop the runtime
+        feature check.
+
+        * page/csp/ContentSecurityPolicy.h:
+        * page/csp/ContentSecurityPolicy.cpp:
+        (WebCore::ContentSecurityPolicy::experimentalFeaturesEnabled): Deleted.
+        Nobody calls this method. Drop it.
+
+        * page/RuntimeEnabledFeatures.cpp:
+        (WebCore::RuntimeEnabledFeatures::RuntimeEnabledFeatures):
+        (WebCore::RuntimeEnabledFeatures::reset):
+        (WebCore::RuntimeEnabledFeatures::javaScriptI18NAPIEnabled): Deleted.
+        * page/RuntimeEnabledFeatures.h:
+        (WebCore::RuntimeEnabledFeatures::langAttributeAwareFormControlUIEnabled):
+        (WebCore::RuntimeEnabledFeatures::setLangAttributeAwareFormControlUIEnabled):
+        (WebCore::RuntimeEnabledFeatures::setLinkPreloadEnabled):
+        (WebCore::RuntimeEnabledFeatures::linkPreloadEnabled):
+        (WebCore::RuntimeEnabledFeatures::setResourceTimingEnabled):
+        (WebCore::RuntimeEnabledFeatures::resourceTimingEnabled):
+        (WebCore::RuntimeEnabledFeatures::setShadowDOMEnabled):
+        (WebCore::RuntimeEnabledFeatures::shadowDOMEnabled):
+        (WebCore::RuntimeEnabledFeatures::setInputEventsEnabled):
+        (WebCore::RuntimeEnabledFeatures::inputEventsEnabled):
+        (WebCore::RuntimeEnabledFeatures::setInteractiveFormValidationEnabled):
+        (WebCore::RuntimeEnabledFeatures::interactiveFormValidationEnabled):
+        (WebCore::RuntimeEnabledFeatures::setCustomElementsEnabled):
+        (WebCore::RuntimeEnabledFeatures::customElementsEnabled):
+        (WebCore::RuntimeEnabledFeatures::setModernMediaControlsEnabled):
+        (WebCore::RuntimeEnabledFeatures::modernMediaControlsEnabled):
+        (WebCore::RuntimeEnabledFeatures::setIndexedDBEnabled):
+        (WebCore::RuntimeEnabledFeatures::fontLoadEventsEnabled):
+        (WebCore::RuntimeEnabledFeatures::setMediaStreamEnabled):
+        (WebCore::RuntimeEnabledFeatures::setPeerConnectionEnabled):
+        (WebCore::RuntimeEnabledFeatures::setLocalStorageEnabled): Deleted.
+        (WebCore::RuntimeEnabledFeatures::localStorageEnabled): Deleted.
+        (WebCore::RuntimeEnabledFeatures::setSessionStorageEnabled): Deleted.
+        (WebCore::RuntimeEnabledFeatures::sessionStorageEnabled): Deleted.
+        (WebCore::RuntimeEnabledFeatures::setWebkitNotificationsEnabled): Deleted.
+        (WebCore::RuntimeEnabledFeatures::webkitNotificationsEnabled): Deleted.
+        (WebCore::RuntimeEnabledFeatures::setApplicationCacheEnabled): Deleted.
+        (WebCore::RuntimeEnabledFeatures::applicationCacheEnabled): Deleted.
+        (WebCore::RuntimeEnabledFeatures::setDataTransferItemsEnabled): Deleted.
+        (WebCore::RuntimeEnabledFeatures::dataTransferItemsEnabled): Deleted.
+        (WebCore::RuntimeEnabledFeatures::setWebkitIndexedDBEnabled): Deleted.
+        (WebCore::RuntimeEnabledFeatures::webkitIndexedDBEnabled): Deleted.
+        (WebCore::RuntimeEnabledFeatures::touchEnabled): Deleted.
+        (WebCore::RuntimeEnabledFeatures::setTouchEnabled): Deleted.
+        (WebCore::RuntimeEnabledFeatures::setDeviceMotionEnabled): Deleted.
+        (WebCore::RuntimeEnabledFeatures::deviceMotionEnabled): Deleted.
+        (WebCore::RuntimeEnabledFeatures::deviceMotionEventEnabled): Deleted.
+        (WebCore::RuntimeEnabledFeatures::ondevicemotionEnabled): Deleted.
+        (WebCore::RuntimeEnabledFeatures::setDeviceOrientationEnabled): Deleted.
+        (WebCore::RuntimeEnabledFeatures::deviceOrientationEnabled): Deleted.
+        (WebCore::RuntimeEnabledFeatures::deviceOrientationEventEnabled): Deleted.
+        (WebCore::RuntimeEnabledFeatures::ondeviceorientationEnabled): Deleted.
+        (WebCore::RuntimeEnabledFeatures::setJavaScriptI18NAPIEnabled): Deleted.
+        (WebCore::RuntimeEnabledFeatures::webkitGetUserMediaEnabled): Deleted.
+        (WebCore::RuntimeEnabledFeatures::webkitMediaStreamEnabled): Deleted.
+        (WebCore::RuntimeEnabledFeatures::webkitRTCPeerConnectionEnabled): Deleted.
+        (WebCore::RuntimeEnabledFeatures::experimentalContentSecurityPolicyFeaturesEnabled): Deleted.
+        (WebCore::RuntimeEnabledFeatures::setExperimentalContentSecurityPolicyFeaturesEnabled): Deleted.
+
+        * testing/InternalSettings.cpp:
+        (WebCore::InternalSettings::Backup::Backup):
+        (WebCore::InternalSettings::Backup::restoreTo):
+        (WebCore::InternalSettings::setLangAttributeAwareFormControlUIEnabled):
+        (WebCore::InternalSettings::setResourceTimingEnabled):
+        (WebCore::InternalSettings::setLinkPreloadEnabled):
+        (WebCore::InternalSettings::setCSSGridLayoutEnabled):
+        (WebCore::InternalSettings::setWebGL2Enabled):
+        * testing/InternalSettings.h:
+        * testing/InternalSettings.idl:
+        * testing/Internals.cpp:
+        (WebCore::Internals::Internals):
+        (WebCore::Internals::setLinkPreloadSupport): Deleted.
+        (WebCore::Internals::setCSSGridLayoutEnabled): Deleted.
+        (WebCore::Internals::webGL2Enabled): Deleted.
+        (WebCore::Internals::setWebGL2Enabled): Deleted.
+        (WebCore::Internals::setResourceTimingSupport): Deleted.
+        * testing/Internals.h:
+        * testing/Internals.idl:
+        Move toggling of RuntimeEnabledFeatures to InternalSettings and
+        properly remember to save and restore them in Internals.
+
</ins><span class="cx"> 2017-01-20  Alex Christensen  &lt;achristensen@webkit.org&gt;
</span><span class="cx"> 
</span><span class="cx">         Add debugging code to compare URLParser with URL::parse
</span></span></pre></div>
<a id="trunkSourceWebCoreModulesmediastreamMediaStreamEventidl"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/Modules/mediastream/MediaStreamEvent.idl (211005 => 211006)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/Modules/mediastream/MediaStreamEvent.idl        2017-01-21 01:46:18 UTC (rev 211005)
+++ trunk/Source/WebCore/Modules/mediastream/MediaStreamEvent.idl        2017-01-21 02:23:47 UTC (rev 211006)
</span><span class="lines">@@ -25,7 +25,7 @@
</span><span class="cx"> [
</span><span class="cx">     Conditional=WEB_RTC,
</span><span class="cx">     Constructor(DOMString type, optional MediaStreamEventInit eventInitDict),
</span><del>-    EnabledAtRuntime=mediaStream,
</del><ins>+    EnabledAtRuntime=MediaStream,
</ins><span class="cx"> ] interface MediaStreamEvent : Event {
</span><span class="cx">     readonly attribute MediaStream? stream;
</span><span class="cx"> };
</span></span></pre></div>
<a id="trunkSourceWebCoreModulesmediastreamNavigatorMediaDevicesidl"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/Modules/mediastream/NavigatorMediaDevices.idl (211005 => 211006)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/Modules/mediastream/NavigatorMediaDevices.idl        2017-01-21 01:46:18 UTC (rev 211005)
+++ trunk/Source/WebCore/Modules/mediastream/NavigatorMediaDevices.idl        2017-01-21 02:23:47 UTC (rev 211006)
</span><span class="lines">@@ -30,7 +30,7 @@
</span><span class="cx"> 
</span><span class="cx"> [
</span><span class="cx">     Conditional=MEDIA_STREAM,
</span><del>-    EnabledAtRuntime=mediaStream,
</del><ins>+    EnabledAtRuntime=MediaStream,
</ins><span class="cx"> ] partial interface Navigator {
</span><span class="cx">     readonly attribute MediaDevices mediaDevices;
</span><span class="cx"> };
</span></span></pre></div>
<a id="trunkSourceWebCoreModulesmediastreamNavigatorUserMediaidl"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/Modules/mediastream/NavigatorUserMedia.idl (211005 => 211006)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/Modules/mediastream/NavigatorUserMedia.idl        2017-01-21 01:46:18 UTC (rev 211005)
+++ trunk/Source/WebCore/Modules/mediastream/NavigatorUserMedia.idl        2017-01-21 02:23:47 UTC (rev 211006)
</span><span class="lines">@@ -19,7 +19,7 @@
</span><span class="cx"> 
</span><span class="cx"> [
</span><span class="cx">     Conditional=MEDIA_STREAM,
</span><del>-    EnabledAtRuntime=mediaStream,
</del><ins>+    EnabledAtRuntime=MediaStream,
</ins><span class="cx"> ] partial interface Navigator {
</span><span class="cx">     [JSBuiltin] void webkitGetUserMedia(MediaStreamConstraints constraints, NavigatorUserMediaSuccessCallback successCallback, NavigatorUserMediaErrorCallback errorCallback);
</span><span class="cx"> };
</span></span></pre></div>
<a id="trunkSourceWebCoreModulesmediastreamRTCDTMFToneChangeEventidl"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/Modules/mediastream/RTCDTMFToneChangeEvent.idl (211005 => 211006)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/Modules/mediastream/RTCDTMFToneChangeEvent.idl        2017-01-21 01:46:18 UTC (rev 211005)
+++ trunk/Source/WebCore/Modules/mediastream/RTCDTMFToneChangeEvent.idl        2017-01-21 02:23:47 UTC (rev 211006)
</span><span class="lines">@@ -26,7 +26,7 @@
</span><span class="cx"> [
</span><span class="cx">     Conditional=WEB_RTC,
</span><span class="cx">     Constructor(DOMString type, optional RTCDTMFToneChangeEventInit eventInitDict),
</span><del>-    EnabledAtRuntime=peerConnection,
</del><ins>+    EnabledAtRuntime=PeerConnection,
</ins><span class="cx"> ] interface RTCDTMFToneChangeEvent : Event {
</span><span class="cx">     readonly attribute DOMString tone;
</span><span class="cx"> };
</span></span></pre></div>
<a id="trunkSourceWebCoreModulesmediastreamRTCIceCandidateidl"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/Modules/mediastream/RTCIceCandidate.idl (211005 => 211006)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/Modules/mediastream/RTCIceCandidate.idl        2017-01-21 01:46:18 UTC (rev 211005)
+++ trunk/Source/WebCore/Modules/mediastream/RTCIceCandidate.idl        2017-01-21 02:23:47 UTC (rev 211006)
</span><span class="lines">@@ -33,7 +33,7 @@
</span><span class="cx">     Conditional=WEB_RTC,
</span><span class="cx">     Constructor(RTCIceCandidateInit candidateInitDict),
</span><span class="cx">     ConstructorMayThrowException,
</span><del>-    EnabledAtRuntime=peerConnection,
</del><ins>+    EnabledAtRuntime=PeerConnection,
</ins><span class="cx">     ImplementationLacksVTable,
</span><span class="cx">     PrivateIdentifier,
</span><span class="cx">     PublicIdentifier
</span></span></pre></div>
<a id="trunkSourceWebCoreModulesmediastreamRTCPeerConnectionidl"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/Modules/mediastream/RTCPeerConnection.idl (211005 => 211006)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/Modules/mediastream/RTCPeerConnection.idl        2017-01-21 01:46:18 UTC (rev 211005)
+++ trunk/Source/WebCore/Modules/mediastream/RTCPeerConnection.idl        2017-01-21 02:23:47 UTC (rev 211006)
</span><span class="lines">@@ -54,7 +54,7 @@
</span><span class="cx">     ActiveDOMObject,
</span><span class="cx">     Conditional=WEB_RTC,
</span><span class="cx">     ConstructorCallWith=ScriptExecutionContext,
</span><del>-    EnabledAtRuntime=peerConnection,
</del><ins>+    EnabledAtRuntime=PeerConnection,
</ins><span class="cx">     ExportMacro=WEBCORE_EXPORT,
</span><span class="cx">     JSBuiltinConstructor,
</span><span class="cx"> ] interface RTCPeerConnection : EventTarget {
</span></span></pre></div>
<a id="trunkSourceWebCoreModulesmediastreamRTCRtpReceiveridl"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/Modules/mediastream/RTCRtpReceiver.idl (211005 => 211006)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/Modules/mediastream/RTCRtpReceiver.idl        2017-01-21 01:46:18 UTC (rev 211005)
+++ trunk/Source/WebCore/Modules/mediastream/RTCRtpReceiver.idl        2017-01-21 02:23:47 UTC (rev 211006)
</span><span class="lines">@@ -30,7 +30,7 @@
</span><span class="cx"> 
</span><span class="cx"> [
</span><span class="cx">     Conditional=WEB_RTC,
</span><del>-    EnabledAtRuntime=peerConnection,
</del><ins>+    EnabledAtRuntime=PeerConnection,
</ins><span class="cx"> ] interface RTCRtpReceiver {
</span><span class="cx">     readonly attribute MediaStreamTrack track;
</span><span class="cx"> };
</span></span></pre></div>
<a id="trunkSourceWebCoreModulesmediastreamRTCRtpSenderidl"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/Modules/mediastream/RTCRtpSender.idl (211005 => 211006)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/Modules/mediastream/RTCRtpSender.idl        2017-01-21 01:46:18 UTC (rev 211005)
+++ trunk/Source/WebCore/Modules/mediastream/RTCRtpSender.idl        2017-01-21 02:23:47 UTC (rev 211006)
</span><span class="lines">@@ -30,7 +30,7 @@
</span><span class="cx"> 
</span><span class="cx"> [
</span><span class="cx">     Conditional=WEB_RTC,
</span><del>-    EnabledAtRuntime=peerConnection,
</del><ins>+    EnabledAtRuntime=PeerConnection,
</ins><span class="cx"> ] interface RTCRtpSender {
</span><span class="cx">     readonly attribute MediaStreamTrack? track;
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkSourceWebCoreModulesmediastreamRTCRtpTransceiveridl"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/Modules/mediastream/RTCRtpTransceiver.idl (211005 => 211006)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/Modules/mediastream/RTCRtpTransceiver.idl        2017-01-21 01:46:18 UTC (rev 211005)
+++ trunk/Source/WebCore/Modules/mediastream/RTCRtpTransceiver.idl        2017-01-21 02:23:47 UTC (rev 211006)
</span><span class="lines">@@ -30,7 +30,7 @@
</span><span class="cx"> 
</span><span class="cx"> [
</span><span class="cx">     Conditional=WEB_RTC,
</span><del>-    EnabledAtRuntime=peerConnection,
</del><ins>+    EnabledAtRuntime=PeerConnection,
</ins><span class="cx"> ] interface RTCRtpTransceiver {
</span><span class="cx">     readonly attribute DOMString? mid;
</span><span class="cx">     readonly attribute RTCRtpSender sender;
</span></span></pre></div>
<a id="trunkSourceWebCoreModulesmediastreamRTCSessionDescriptionidl"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/Modules/mediastream/RTCSessionDescription.idl (211005 => 211006)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/Modules/mediastream/RTCSessionDescription.idl        2017-01-21 01:46:18 UTC (rev 211005)
+++ trunk/Source/WebCore/Modules/mediastream/RTCSessionDescription.idl        2017-01-21 02:23:47 UTC (rev 211006)
</span><span class="lines">@@ -32,7 +32,7 @@
</span><span class="cx"> [
</span><span class="cx">     Conditional=WEB_RTC,
</span><span class="cx">     Constructor(RTCSessionDescriptionInit descriptionInitDict),
</span><del>-    EnabledAtRuntime=peerConnection,
</del><ins>+    EnabledAtRuntime=PeerConnection,
</ins><span class="cx">     ImplementationLacksVTable,
</span><span class="cx">     PrivateIdentifier,
</span><span class="cx">     PublicIdentifier,
</span></span></pre></div>
<a id="trunkSourceWebCoreModulesmediastreamRTCTrackEventidl"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/Modules/mediastream/RTCTrackEvent.idl (211005 => 211006)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/Modules/mediastream/RTCTrackEvent.idl        2017-01-21 01:46:18 UTC (rev 211005)
+++ trunk/Source/WebCore/Modules/mediastream/RTCTrackEvent.idl        2017-01-21 02:23:47 UTC (rev 211006)
</span><span class="lines">@@ -31,7 +31,7 @@
</span><span class="cx"> [
</span><span class="cx">     Conditional=WEB_RTC,
</span><span class="cx">     Constructor(DOMString type, RTCTrackEventInit eventInitDict),
</span><del>-    EnabledAtRuntime=peerConnection,
</del><ins>+    EnabledAtRuntime=PeerConnection,
</ins><span class="cx"> ] interface RTCTrackEvent : Event {
</span><span class="cx">     readonly attribute RTCRtpReceiver receiver;
</span><span class="cx">     readonly attribute MediaStreamTrack track;
</span></span></pre></div>
<a id="trunkSourceWebCoredomEventNamesin"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/dom/EventNames.in (211005 => 211006)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/dom/EventNames.in        2017-01-21 01:46:18 UTC (rev 211005)
+++ trunk/Source/WebCore/dom/EventNames.in        2017-01-21 02:23:47 UTC (rev 211006)
</span><span class="lines">@@ -54,7 +54,7 @@
</span><span class="cx"> SVGZoomEvent
</span><span class="cx"> SVGZoomEvents interfaceName=SVGZoomEvent
</span><span class="cx"> IDBVersionChangeEvent conditional=INDEXED_DATABASE
</span><del>-TouchEvent conditional=TOUCH_EVENTS, runtimeConditional=touchEnabled
</del><ins>+TouchEvent conditional=TOUCH_EVENTS
</ins><span class="cx"> DeviceMotionEvent conditional=DEVICE_ORIENTATION
</span><span class="cx"> DeviceOrientationEvent conditional=DEVICE_ORIENTATION
</span><span class="cx"> DeviceProximityEvent conditional=PROXIMITY_EVENTS
</span></span></pre></div>
<a id="trunkSourceWebCorepageDOMWindowcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/page/DOMWindow.cpp (211005 => 211006)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/page/DOMWindow.cpp        2017-01-21 01:46:18 UTC (rev 211005)
+++ trunk/Source/WebCore/page/DOMWindow.cpp        2017-01-21 02:23:47 UTC (rev 211006)
</span><span class="lines">@@ -1792,13 +1792,13 @@
</span><span class="cx">             document()-&gt;addConsoleMessage(MessageSource::JS, MessageLevel::Warning, ASCIILiteral(&quot;Blocked attempt add device motion or orientation listener from child frame that wasn't the same security origin as the main page.&quot;));
</span><span class="cx">     }
</span><span class="cx"> #else
</span><del>-    else if (eventType == eventNames().devicemotionEvent &amp;&amp; RuntimeEnabledFeatures::sharedFeatures().deviceMotionEnabled()) {
</del><ins>+    else if (eventType == eventNames().devicemotionEvent) {
</ins><span class="cx">         if (isSameSecurityOriginAsMainFrame()) {
</span><span class="cx">             if (DeviceMotionController* controller = DeviceMotionController::from(page()))
</span><span class="cx">                 controller-&gt;addDeviceEventListener(this);
</span><span class="cx">         } else if (document())
</span><span class="cx">             document()-&gt;addConsoleMessage(MessageSource::JS, MessageLevel::Warning, ASCIILiteral(&quot;Blocked attempt add device motion listener from child frame that wasn't the same security origin as the main page.&quot;));
</span><del>-    } else if (eventType == eventNames().deviceorientationEvent &amp;&amp; RuntimeEnabledFeatures::sharedFeatures().deviceOrientationEnabled()) {
</del><ins>+    } else if (eventType == eventNames().deviceorientationEvent) {
</ins><span class="cx">         if (isSameSecurityOriginAsMainFrame()) {
</span><span class="cx">             if (DeviceOrientationController* controller = DeviceOrientationController::from(page()))
</span><span class="cx">                 controller-&gt;addDeviceEventListener(this);
</span></span></pre></div>
<a id="trunkSourceWebCorepageRuntimeEnabledFeaturescpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/page/RuntimeEnabledFeatures.cpp (211005 => 211006)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/page/RuntimeEnabledFeatures.cpp        2017-01-21 01:46:18 UTC (rev 211005)
+++ trunk/Source/WebCore/page/RuntimeEnabledFeatures.cpp        2017-01-21 02:23:47 UTC (rev 211006)
</span><span class="lines">@@ -1,6 +1,6 @@
</span><span class="cx"> /*
</span><span class="cx">  * Copyright (C) 2009 Google Inc. All rights reserved.
</span><del>- * Copyright (C) 2013 Apple Inc. All rights reserved.
</del><ins>+ * Copyright (C) 2013-2017 Apple Inc. All rights reserved.
</ins><span class="cx">  *
</span><span class="cx">  * Redistribution and use in source and binary forms, with or without
</span><span class="cx">  * modification, are permitted provided that the following conditions are
</span><span class="lines">@@ -32,82 +32,18 @@
</span><span class="cx"> #include &quot;config.h&quot;
</span><span class="cx"> #include &quot;RuntimeEnabledFeatures.h&quot;
</span><span class="cx"> 
</span><del>-#include &quot;DatabaseManager.h&quot;
</del><span class="cx"> #include &quot;MediaPlayer.h&quot;
</span><span class="cx"> #include &quot;WebSocket.h&quot;
</span><del>-#include &lt;wtf/NeverDestroyed.h&gt;
</del><span class="cx"> 
</span><span class="cx"> namespace WebCore {
</span><span class="cx"> 
</span><span class="cx"> RuntimeEnabledFeatures::RuntimeEnabledFeatures()
</span><span class="cx"> {
</span><del>-    reset();
</del><span class="cx"> #if ENABLE(MEDIA_STREAM) &amp;&amp; PLATFORM(COCOA)
</span><span class="cx">     m_isMediaStreamEnabled = false;
</span><span class="cx"> #endif
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-void RuntimeEnabledFeatures::reset()
-{
-    m_isLocalStorageEnabled = true;
-    m_isSessionStorageEnabled = true;
-    m_isWebkitNotificationsEnabled = false;
-    m_isApplicationCacheEnabled = true;
-    m_isDataTransferItemsEnabled = true;
-    m_isGeolocationEnabled = true;
-    m_isTouchEnabled = true;
-    m_isDeviceMotionEnabled = true;
-    m_isDeviceOrientationEnabled = true;
-    m_isLinkPreloadEnabled = false;
-    m_isLangAttributeAwareFormControlUIEnabled = false;
-    m_isResourceTimingEnabled = false;
-#if ENABLE(INDEXED_DATABASE)
-    m_isIndexedDBEnabled = true;
-#endif
-#if ENABLE(INDEXED_DATABASE_IN_WORKERS)
-    m_isIndexedDBWorkersEnabled = true;
-#endif
-#if ENABLE(WEB_RTC)
-    m_isPeerConnectionEnabled = true;
-#endif
-#if ENABLE(LEGACY_CSS_VENDOR_PREFIXES)
-    m_isLegacyCSSVendorPrefixesEnabled = false;
-#endif
-#if ENABLE(JAVASCRIPT_I18N_API)
-    m_isJavaScriptI18NAPIEnabled = false;
-#endif
-#if ENABLE(INPUT_TYPE_DATE)
-    m_isInputTypeDateEnabled = true;
-#endif
-#if ENABLE(INPUT_TYPE_DATETIME_INCOMPLETE)
-    m_isInputTypeDateTimeEnabled = false;
-#endif
-#if ENABLE(INPUT_TYPE_DATETIMELOCAL)
-    m_isInputTypeDateTimeLocalEnabled = true;
-#endif
-#if ENABLE(INPUT_TYPE_MONTH)
-    m_isInputTypeMonthEnabled = true;
-#endif
-#if ENABLE(INPUT_TYPE_TIME)
-    m_isInputTypeTimeEnabled = true;
-#endif
-#if ENABLE(INPUT_TYPE_WEEK)
-    m_isInputTypeWeekEnabled = true;
-#endif
-#if ENABLE(FONT_LOAD_EVENTS)
-    m_isFontLoadEventsEnabled = true;
-#endif
-#if ENABLE(CSS_ANIMATIONS_LEVEL_2)
-    m_areAnimationTriggersEnabled = false;
-#endif
-#if ENABLE(CSS_GRID_LAYOUT)
-    m_cssGridLayoutEnabled = true;
-#endif
-#if ENABLE(INTERSECTION_OBSERVER)
-    m_intersectionObserverEnabled = false;
-#endif
-}
-
</del><span class="cx"> RuntimeEnabledFeatures&amp; RuntimeEnabledFeatures::sharedFeatures()
</span><span class="cx"> {
</span><span class="cx">     static NeverDestroyed&lt;RuntimeEnabledFeatures&gt; runtimeEnabledFeatures;
</span><span class="lines">@@ -115,13 +51,6 @@
</span><span class="cx">     return runtimeEnabledFeatures;
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-#if ENABLE(JAVASCRIPT_I18N_API)
-bool RuntimeEnabledFeatures::javaScriptI18NAPIEnabled()
-{
-    return m_isJavaScriptI18NAPIEnabled;
-}
-#endif
-
</del><span class="cx"> #if ENABLE(VIDEO)
</span><span class="cx"> bool RuntimeEnabledFeatures::audioEnabled() const
</span><span class="cx"> {
</span></span></pre></div>
<a id="trunkSourceWebCorepageRuntimeEnabledFeaturesh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/page/RuntimeEnabledFeatures.h (211005 => 211006)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/page/RuntimeEnabledFeatures.h        2017-01-21 01:46:18 UTC (rev 211005)
+++ trunk/Source/WebCore/page/RuntimeEnabledFeatures.h        2017-01-21 02:23:47 UTC (rev 211006)
</span><span class="lines">@@ -1,6 +1,6 @@
</span><span class="cx"> /*
</span><span class="cx">  * Copyright (C) 2009 Google Inc. All rights reserved.
</span><del>- * Copyright (C) 2013-2016 Apple Inc. All rights reserved. 
</del><ins>+ * Copyright (C) 2013-2017 Apple Inc. All rights reserved.
</ins><span class="cx">  *
</span><span class="cx">  * Redistribution and use in source and binary forms, with or without
</span><span class="cx">  * modification, are permitted provided that the following conditions are
</span><span class="lines">@@ -43,21 +43,10 @@
</span><span class="cx"> class RuntimeEnabledFeatures {
</span><span class="cx">     WTF_MAKE_NONCOPYABLE(RuntimeEnabledFeatures);
</span><span class="cx"> public:
</span><del>-    void setLocalStorageEnabled(bool isEnabled) { m_isLocalStorageEnabled = isEnabled; }
-    bool localStorageEnabled() const { return m_isLocalStorageEnabled; }
</del><ins>+    // The lang attribute support is incomplete and should only be turned on for tests.
+    bool langAttributeAwareFormControlUIEnabled() const { return m_isLangAttributeAwareFormControlUIEnabled; }
+    void setLangAttributeAwareFormControlUIEnabled(bool isEnabled) { m_isLangAttributeAwareFormControlUIEnabled = isEnabled; }
</ins><span class="cx"> 
</span><del>-    void setSessionStorageEnabled(bool isEnabled) { m_isSessionStorageEnabled = isEnabled; }
-    bool sessionStorageEnabled() const { return m_isSessionStorageEnabled; }
-
-    void setWebkitNotificationsEnabled(bool isEnabled) { m_isWebkitNotificationsEnabled = isEnabled; }
-    bool webkitNotificationsEnabled() const { return m_isWebkitNotificationsEnabled; }
-
-    void setApplicationCacheEnabled(bool isEnabled) { m_isApplicationCacheEnabled = isEnabled; }
-    bool applicationCacheEnabled() const { return m_isApplicationCacheEnabled; }
-
-    void setDataTransferItemsEnabled(bool isEnabled) { m_isDataTransferItemsEnabled = isEnabled; }
-    bool dataTransferItemsEnabled() const { return m_isDataTransferItemsEnabled; }
-
</del><span class="cx">     void setDOMIteratorEnabled(bool isEnabled) { m_isDOMIteratorEnabled = isEnabled; }
</span><span class="cx">     bool domIteratorEnabled() const { return m_isDOMIteratorEnabled; }
</span><span class="cx"> 
</span><span class="lines">@@ -64,9 +53,30 @@
</span><span class="cx">     void setGeolocationEnabled(bool isEnabled) { m_isGeolocationEnabled = isEnabled; }
</span><span class="cx">     bool geolocationEnabled() const { return m_isGeolocationEnabled; }
</span><span class="cx"> 
</span><ins>+    void setLinkPreloadEnabled(bool isEnabled) { m_isLinkPreloadEnabled = isEnabled; }
+    bool linkPreloadEnabled() const { return m_isLinkPreloadEnabled; }
+
+    void setResourceTimingEnabled(bool isEnabled) { m_isResourceTimingEnabled = isEnabled; }
+    bool resourceTimingEnabled() const { return m_isResourceTimingEnabled; }
+
+    void setShadowDOMEnabled(bool isEnabled) { m_isShadowDOMEnabled = isEnabled; }
+    bool shadowDOMEnabled() const { return m_isShadowDOMEnabled; }
+
+    void setInputEventsEnabled(bool isEnabled) { m_inputEventsEnabled = isEnabled; }
+    bool inputEventsEnabled() const { return m_inputEventsEnabled; }
+
+    void setInteractiveFormValidationEnabled(bool isEnabled) { m_isInteractiveFormValidationEnabled = isEnabled; }
+    bool interactiveFormValidationEnabled() const { return m_isInteractiveFormValidationEnabled; }
+
+    void setCustomElementsEnabled(bool areEnabled) { m_areCustomElementsEnabled = areEnabled; }
+    bool customElementsEnabled() const { return m_areCustomElementsEnabled; }
+
+    void setModernMediaControlsEnabled(bool areEnabled) { m_areModernMediaControlsEnabled = areEnabled; }
+    bool modernMediaControlsEnabled() const { return m_areModernMediaControlsEnabled; }
+
</ins><span class="cx"> #if ENABLE(INDEXED_DATABASE)
</span><del>-    void setWebkitIndexedDBEnabled(bool isEnabled) { m_isIndexedDBEnabled = isEnabled; }
-    bool webkitIndexedDBEnabled() const { return m_isIndexedDBEnabled; }
</del><ins>+    // FIXME: This is always enabled and nobody can even toggle it off. Remove?
+    void setIndexedDBEnabled(bool isEnabled) { m_isIndexedDBEnabled = isEnabled; }
</ins><span class="cx">     bool indexedDBEnabled() const { return m_isIndexedDBEnabled; }
</span><span class="cx"> #endif
</span><span class="cx"> 
</span><span class="lines">@@ -78,59 +88,16 @@
</span><span class="cx"> #if ENABLE(FONT_LOAD_EVENTS)
</span><span class="cx">     void setFontLoadEventsEnabled(bool isEnabled) { m_isFontLoadEventsEnabled = isEnabled; }
</span><span class="cx">     bool fontLoadEventsEnabled() const { return m_isFontLoadEventsEnabled; }
</span><del>-#else
-    void setFontLoadEventsEnabled(bool) { }
-    bool fontLoadEventsEnabled() { return false; }
</del><span class="cx"> #endif
</span><span class="cx"> 
</span><del>-#if ENABLE(VIDEO)
-    bool audioEnabled() const;
-    bool htmlMediaElementEnabled() const;
-    bool htmlAudioElementEnabled() const;
-    bool htmlVideoElementEnabled() const;
-    bool htmlSourceElementEnabled() const;
-    bool mediaControllerEnabled() const;
-    bool mediaErrorEnabled() const;
-    bool timeRangesEnabled() const;
-#endif
-
-#if ENABLE(WEB_SOCKETS)
-    bool webSocketEnabled() const;
-#endif
-
-#if ENABLE(TOUCH_EVENTS)
-    bool touchEnabled() const { return m_isTouchEnabled; }
-    void setTouchEnabled(bool isEnabled) { m_isTouchEnabled = isEnabled; }
-#endif
-
-    void setDeviceMotionEnabled(bool isEnabled) { m_isDeviceMotionEnabled = isEnabled; }
-    bool deviceMotionEnabled() const { return m_isDeviceMotionEnabled; }
-    bool deviceMotionEventEnabled() const { return m_isDeviceMotionEnabled; }
-    bool ondevicemotionEnabled() const { return m_isDeviceMotionEnabled; }
-
-    void setDeviceOrientationEnabled(bool isEnabled) { m_isDeviceOrientationEnabled = isEnabled; }
-    bool deviceOrientationEnabled() const { return m_isDeviceOrientationEnabled; }
-    bool deviceOrientationEventEnabled() const { return m_isDeviceOrientationEnabled; }
-    bool ondeviceorientationEnabled() const { return m_isDeviceOrientationEnabled; }
-
-    void setLinkPreloadEnabled(bool isEnabled) { m_isLinkPreloadEnabled = isEnabled; }
-    bool linkPreloadEnabled() const { return m_isLinkPreloadEnabled; }
-
-#if ENABLE(JAVASCRIPT_I18N_API)
-    bool javaScriptI18NAPIEnabled() const;
-    void setJavaScriptI18NAPIEnabled(bool isEnabled) { m_isJavaScriptI18NAPIEnabled = isEnabled; }
-#endif
-
</del><span class="cx"> #if ENABLE(MEDIA_STREAM)
</span><span class="cx">     bool mediaStreamEnabled() const { return m_isMediaStreamEnabled; }
</span><span class="cx">     void setMediaStreamEnabled(bool isEnabled) { m_isMediaStreamEnabled = isEnabled; }
</span><del>-    bool webkitGetUserMediaEnabled() const { return m_isMediaStreamEnabled; }
-    bool webkitMediaStreamEnabled() const { return m_isMediaStreamEnabled; }
</del><span class="cx"> #endif
</span><ins>+
</ins><span class="cx"> #if ENABLE(WEB_RTC)
</span><span class="cx">     bool peerConnectionEnabled() const { return m_isMediaStreamEnabled &amp;&amp; m_isPeerConnectionEnabled; }
</span><span class="cx">     void setPeerConnectionEnabled(bool isEnabled) { m_isPeerConnectionEnabled = isEnabled; }
</span><del>-    bool webkitRTCPeerConnectionEnabled() const { return peerConnectionEnabled(); }
</del><span class="cx"> #endif
</span><span class="cx"> 
</span><span class="cx"> #if ENABLE(LEGACY_CSS_VENDOR_PREFIXES)
</span><span class="lines">@@ -168,13 +135,6 @@
</span><span class="cx">     void setInputTypeWeekEnabled(bool isEnabled) { m_isInputTypeWeekEnabled = isEnabled; }
</span><span class="cx"> #endif
</span><span class="cx"> 
</span><del>-    bool langAttributeAwareFormControlUIEnabled() const { return m_isLangAttributeAwareFormControlUIEnabled; }
-    // The lang attribute support is incomplete and should only be turned on for tests.
-    void setLangAttributeAwareFormControlUIEnabled(bool isEnabled) { m_isLangAttributeAwareFormControlUIEnabled = isEnabled; }
-
-    void setResourceTimingEnabled(bool isEnabled) { m_isResourceTimingEnabled = isEnabled; }
-    bool resourceTimingEnabled() const { return m_isResourceTimingEnabled; }
-
</del><span class="cx"> #if ENABLE(GAMEPAD)
</span><span class="cx">     void setGamepadsEnabled(bool areEnabled) { m_areGamepadsEnabled = areEnabled; }
</span><span class="cx">     bool gamepadsEnabled() const { return m_areGamepadsEnabled; }
</span><span class="lines">@@ -181,6 +141,7 @@
</span><span class="cx"> #endif
</span><span class="cx"> 
</span><span class="cx"> #if ENABLE(CSS_ANIMATIONS_LEVEL_2)
</span><ins>+    // FIXME: This is not used.
</ins><span class="cx">     void setAnimationTriggersEnabled(bool areEnabled) { m_areAnimationTriggersEnabled = areEnabled; }
</span><span class="cx">     bool animationTriggersEnabled() const { return m_areAnimationTriggersEnabled; }
</span><span class="cx"> #endif
</span><span class="lines">@@ -190,18 +151,6 @@
</span><span class="cx">     bool webAnimationsEnabled() const { return m_areWebAnimationsEnabled; }
</span><span class="cx"> #endif
</span><span class="cx"> 
</span><del>-    void setShadowDOMEnabled(bool isEnabled) { m_isShadowDOMEnabled = isEnabled; }
-    bool shadowDOMEnabled() const { return m_isShadowDOMEnabled; }
-
-    void setInputEventsEnabled(bool isEnabled) { m_inputEventsEnabled = isEnabled; }
-    bool inputEventsEnabled() const { return m_inputEventsEnabled; }
-
-    void setInteractiveFormValidationEnabled(bool isEnabled) { m_isInteractiveFormValidationEnabled = isEnabled; }
-    bool interactiveFormValidationEnabled() const { return m_isInteractiveFormValidationEnabled; }
-
-    void setCustomElementsEnabled(bool areEnabled) { m_areCustomElementsEnabled = areEnabled; }
-    bool customElementsEnabled() const { return m_areCustomElementsEnabled; }
-
</del><span class="cx"> #if ENABLE(WEBGL2)
</span><span class="cx">     void setWebGL2Enabled(bool isEnabled) { m_isWebGL2Enabled = isEnabled; }
</span><span class="cx">     bool webGL2Enabled() const { return m_isWebGL2Enabled; }
</span><span class="lines">@@ -227,9 +176,6 @@
</span><span class="cx">     bool intersectionObserverEnabled() const { return m_intersectionObserverEnabled; }
</span><span class="cx"> #endif
</span><span class="cx"> 
</span><del>-    void setModernMediaControlsEnabled(bool areEnabled) { m_areModernMediaControlsEnabled = areEnabled; }
-    bool modernMediaControlsEnabled() const { return m_areModernMediaControlsEnabled; }
-
</del><span class="cx"> #if ENABLE(ENCRYPTED_MEDIA)
</span><span class="cx">     void setEncryptedMediaAPIEnabled(bool isEnabled) { m_encryptedMediaAPIEnabled = isEnabled; }
</span><span class="cx">     bool encryptedMediaAPIEnabled() const { return m_encryptedMediaAPIEnabled; }
</span><span class="lines">@@ -240,78 +186,85 @@
</span><span class="cx">     bool subtleCryptoEnabled() const { return m_isSubtleCryptoEnabled; }
</span><span class="cx"> #endif
</span><span class="cx"> 
</span><ins>+#if ENABLE(VIDEO)
+    bool audioEnabled() const;
+    bool htmlMediaElementEnabled() const;
+    bool htmlAudioElementEnabled() const;
+    bool htmlVideoElementEnabled() const;
+    bool htmlSourceElementEnabled() const;
+    bool mediaControllerEnabled() const;
+    bool mediaErrorEnabled() const;
+    bool timeRangesEnabled() const;
+#endif
+
+#if ENABLE(WEB_SOCKETS)
+    bool webSocketEnabled() const;
+#endif
+
</ins><span class="cx">     WEBCORE_EXPORT static RuntimeEnabledFeatures&amp; sharedFeatures();
</span><span class="cx"> 
</span><del>-    WEBCORE_EXPORT void reset();
-
</del><span class="cx"> private:
</span><span class="cx">     // Never instantiate.
</span><span class="cx">     RuntimeEnabledFeatures();
</span><span class="cx"> 
</span><ins>+    bool m_isLangAttributeAwareFormControlUIEnabled { false }; // FIXME: Move this to Settings.
</ins><span class="cx">     bool m_areModernMediaControlsEnabled { false };
</span><del>-    bool m_isLocalStorageEnabled;
-    bool m_isSessionStorageEnabled;
-    bool m_isWebkitNotificationsEnabled;
-    bool m_isApplicationCacheEnabled;
-    bool m_isDataTransferItemsEnabled;
</del><ins>+    bool m_isLinkPreloadEnabled { false };
+    bool m_isResourceTimingEnabled { false };
+    bool m_isInteractiveFormValidationEnabled { false };
+
</ins><span class="cx">     bool m_isDOMIteratorEnabled { true };
</span><del>-    bool m_isGeolocationEnabled;
-    bool m_isTouchEnabled;
-    bool m_isDeviceMotionEnabled;
-    bool m_isDeviceOrientationEnabled;
-    bool m_isLinkPreloadEnabled;
-    bool m_isLangAttributeAwareFormControlUIEnabled;
-    bool m_isResourceTimingEnabled;
</del><ins>+    bool m_isGeolocationEnabled { true };
+    bool m_isShadowDOMEnabled { true };
+    bool m_areCustomElementsEnabled { true };
+    bool m_inputEventsEnabled { true };
</ins><span class="cx"> 
</span><span class="cx"> #if ENABLE(INDEXED_DATABASE)
</span><del>-    bool m_isIndexedDBEnabled;
</del><ins>+    bool m_isIndexedDBEnabled { true };
</ins><span class="cx"> #endif
</span><span class="cx"> 
</span><span class="cx"> #if ENABLE(INDEXED_DATABASE_IN_WORKERS)
</span><del>-    bool m_isIndexedDBWorkersEnabled;
</del><ins>+    bool m_isIndexedDBWorkersEnabled { true };
</ins><span class="cx"> #endif
</span><span class="cx"> 
</span><del>-#if ENABLE(JAVASCRIPT_I18N_API)
-    bool m_isJavaScriptI18NAPIEnabled;
-#endif
-
</del><span class="cx"> #if ENABLE(MEDIA_STREAM)
</span><span class="cx">     bool m_isMediaStreamEnabled { true };
</span><span class="cx"> #endif
</span><ins>+
</ins><span class="cx"> #if ENABLE(WEB_RTC)
</span><del>-    bool m_isPeerConnectionEnabled;
</del><ins>+    bool m_isPeerConnectionEnabled { true };
</ins><span class="cx"> #endif
</span><span class="cx"> 
</span><span class="cx"> #if ENABLE(LEGACY_CSS_VENDOR_PREFIXES)
</span><del>-    bool m_isLegacyCSSVendorPrefixesEnabled;
</del><ins>+    bool m_isLegacyCSSVendorPrefixesEnabled { false };
</ins><span class="cx"> #endif
</span><span class="cx"> 
</span><span class="cx"> #if ENABLE(INPUT_TYPE_DATE)
</span><del>-    bool m_isInputTypeDateEnabled;
</del><ins>+    bool m_isInputTypeDateEnabled { true };
</ins><span class="cx"> #endif
</span><span class="cx"> 
</span><span class="cx"> #if ENABLE(INPUT_TYPE_DATETIME_INCOMPLETE)
</span><del>-    bool m_isInputTypeDateTimeEnabled;
</del><ins>+    bool m_isInputTypeDateTimeEnabled { false };
</ins><span class="cx"> #endif
</span><span class="cx"> 
</span><span class="cx"> #if ENABLE(INPUT_TYPE_DATETIMELOCAL)
</span><del>-    bool m_isInputTypeDateTimeLocalEnabled;
</del><ins>+    bool m_isInputTypeDateTimeLocalEnabled { true };
</ins><span class="cx"> #endif
</span><span class="cx"> 
</span><span class="cx"> #if ENABLE(INPUT_TYPE_MONTH)
</span><del>-    bool m_isInputTypeMonthEnabled;
</del><ins>+    bool m_isInputTypeMonthEnabled { true };
</ins><span class="cx"> #endif
</span><span class="cx"> 
</span><span class="cx"> #if ENABLE(INPUT_TYPE_TIME)
</span><del>-    bool m_isInputTypeTimeEnabled;
</del><ins>+    bool m_isInputTypeTimeEnabled { true };
</ins><span class="cx"> #endif
</span><span class="cx"> 
</span><span class="cx"> #if ENABLE(INPUT_TYPE_WEEK)
</span><del>-    bool m_isInputTypeWeekEnabled;
</del><ins>+    bool m_isInputTypeWeekEnabled { true };
</ins><span class="cx"> #endif
</span><span class="cx"> 
</span><span class="cx"> #if ENABLE(FONT_LOAD_EVENTS)
</span><del>-    bool m_isFontLoadEventsEnabled;
</del><ins>+    bool m_isFontLoadEventsEnabled { true };
</ins><span class="cx"> #endif
</span><span class="cx"> 
</span><span class="cx"> #if ENABLE(GAMEPAD)
</span><span class="lines">@@ -319,27 +272,19 @@
</span><span class="cx"> #endif
</span><span class="cx"> 
</span><span class="cx"> #if ENABLE(CSS_ANIMATIONS_LEVEL_2)
</span><del>-    bool m_areAnimationTriggersEnabled;
</del><ins>+    bool m_areAnimationTriggersEnabled { false };
</ins><span class="cx"> #endif
</span><span class="cx"> 
</span><span class="cx"> #if ENABLE(WEB_ANIMATIONS)
</span><span class="cx">     bool m_areWebAnimationsEnabled { false };
</span><span class="cx"> #endif
</span><del>-    
-    bool m_isShadowDOMEnabled;
</del><span class="cx"> 
</span><del>-    bool m_inputEventsEnabled;
-
-    bool m_isInteractiveFormValidationEnabled { false };
-
-    bool m_areCustomElementsEnabled { true };
-
</del><span class="cx"> #if ENABLE(WEBGL2)
</span><del>-    bool m_isWebGL2Enabled;
</del><ins>+    bool m_isWebGL2Enabled { false };
</ins><span class="cx"> #endif
</span><span class="cx"> 
</span><span class="cx"> #if ENABLE(FETCH_API)
</span><del>-    bool m_isFetchAPIEnabled { false };
</del><ins>+    bool m_isFetchAPIEnabled { true };
</ins><span class="cx"> #endif
</span><span class="cx"> 
</span><span class="cx"> #if ENABLE(DOWNLOAD_ATTRIBUTE)
</span><span class="lines">@@ -347,7 +292,7 @@
</span><span class="cx"> #endif
</span><span class="cx"> 
</span><span class="cx"> #if ENABLE(CSS_GRID_LAYOUT)
</span><del>-    bool m_cssGridLayoutEnabled;
</del><ins>+    bool m_cssGridLayoutEnabled { true };
</ins><span class="cx"> #endif
</span><span class="cx"> 
</span><span class="cx"> #if ENABLE(ENCRYPTED_MEDIA)
</span><span class="lines">@@ -359,7 +304,7 @@
</span><span class="cx"> #endif
</span><span class="cx"> 
</span><span class="cx"> #if ENABLE(SUBTLE_CRYPTO)
</span><del>-    bool m_isSubtleCryptoEnabled;
</del><ins>+    bool m_isSubtleCryptoEnabled { true };
</ins><span class="cx"> #endif
</span><span class="cx"> 
</span><span class="cx">     friend class WTF::NeverDestroyed&lt;RuntimeEnabledFeatures&gt;;
</span></span></pre></div>
<a id="trunkSourceWebCoretestingInternalSettingscpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/testing/InternalSettings.cpp (211005 => 211006)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/testing/InternalSettings.cpp        2017-01-21 01:46:18 UTC (rev 211005)
+++ trunk/Source/WebCore/testing/InternalSettings.cpp        2017-01-21 02:23:47 UTC (rev 211006)
</span><span class="lines">@@ -56,7 +56,6 @@
</span><span class="cx">     , m_originalMediaTypeOverride(settings.mediaTypeOverride())
</span><span class="cx">     , m_originalCanvasUsesAcceleratedDrawing(settings.canvasUsesAcceleratedDrawing())
</span><span class="cx">     , m_originalMockScrollbarsEnabled(settings.mockScrollbarsEnabled())
</span><del>-    , m_langAttributeAwareFormControlUIEnabled(RuntimeEnabledFeatures::sharedFeatures().langAttributeAwareFormControlUIEnabled())
</del><span class="cx">     , m_imagesEnabled(settings.areImagesEnabled())
</span><span class="cx">     , m_preferMIMETypeForImages(settings.preferMIMETypeForImages())
</span><span class="cx">     , m_minimumTimerInterval(settings.minimumDOMTimerInterval())
</span><span class="lines">@@ -87,9 +86,6 @@
</span><span class="cx">     , m_allowsInlineMediaPlayback(settings.allowsInlineMediaPlayback())
</span><span class="cx">     , m_allowsInlineMediaPlaybackAfterFullscreen(settings.allowsInlineMediaPlaybackAfterFullscreen())
</span><span class="cx">     , m_inlineMediaPlaybackRequiresPlaysInlineAttribute(settings.inlineMediaPlaybackRequiresPlaysInlineAttribute())
</span><del>-#if ENABLE(INDEXED_DATABASE_IN_WORKERS)
-    , m_indexedDBWorkersEnabled(RuntimeEnabledFeatures::sharedFeatures().indexedDBWorkersEnabled())
-#endif
</del><span class="cx">     , m_deferredCSSParserEnabled(settings.deferredCSSParserEnabled())
</span><span class="cx">     , m_inputEventsEnabled(settings.inputEventsEnabled())
</span><span class="cx">     , m_userInterfaceDirectionPolicy(settings.userInterfaceDirectionPolicy())
</span><span class="lines">@@ -98,6 +94,18 @@
</span><span class="cx">     , m_forcedColorsAreInvertedAccessibilityValue(settings.forcedColorsAreInvertedAccessibilityValue())
</span><span class="cx">     , m_forcedDisplayIsMonochromeAccessibilityValue(settings.forcedDisplayIsMonochromeAccessibilityValue())
</span><span class="cx">     , m_forcedPrefersReducedMotionAccessibilityValue(settings.forcedPrefersReducedMotionAccessibilityValue())
</span><ins>+    , m_langAttributeAwareFormControlUIEnabled(RuntimeEnabledFeatures::sharedFeatures().langAttributeAwareFormControlUIEnabled())
+    , m_resourceTimingEnabled(RuntimeEnabledFeatures::sharedFeatures().resourceTimingEnabled())
+    , m_linkPreloadEnabled(RuntimeEnabledFeatures::sharedFeatures().linkPreloadEnabled())
+#if ENABLE(INDEXED_DATABASE_IN_WORKERS)
+    , m_indexedDBWorkersEnabled(RuntimeEnabledFeatures::sharedFeatures().indexedDBWorkersEnabled())
+#endif
+#if ENABLE(CSS_GRID_LAYOUT)
+    , m_cssGridLayoutEnabled(RuntimeEnabledFeatures::sharedFeatures().isCSSGridLayoutEnabled())
+#endif
+#if ENABLE(WEBGL2)
+    , m_webGL2Enabled(RuntimeEnabledFeatures::sharedFeatures().webGL2Enabled())
+#endif
</ins><span class="cx"> {
</span><span class="cx"> }
</span><span class="cx"> 
</span><span class="lines">@@ -139,7 +147,6 @@
</span><span class="cx"> #endif
</span><span class="cx">     settings.setMediaTypeOverride(m_originalMediaTypeOverride);
</span><span class="cx">     settings.setCanvasUsesAcceleratedDrawing(m_originalCanvasUsesAcceleratedDrawing);
</span><del>-    RuntimeEnabledFeatures::sharedFeatures().setLangAttributeAwareFormControlUIEnabled(m_langAttributeAwareFormControlUIEnabled);
</del><span class="cx">     settings.setImagesEnabled(m_imagesEnabled);
</span><span class="cx">     settings.setPreferMIMETypeForImages(m_preferMIMETypeForImages);
</span><span class="cx">     settings.setMinimumDOMTimerInterval(m_minimumTimerInterval);
</span><span class="lines">@@ -167,9 +174,6 @@
</span><span class="cx">     settings.setInlineMediaPlaybackRequiresPlaysInlineAttribute(m_inlineMediaPlaybackRequiresPlaysInlineAttribute);
</span><span class="cx">     settings.setQuickTimePluginReplacementEnabled(m_quickTimePluginReplacementEnabled);
</span><span class="cx">     settings.setYouTubeFlashPluginReplacementEnabled(m_youTubeFlashPluginReplacementEnabled);
</span><del>-#if ENABLE(INDEXED_DATABASE_IN_WORKERS)
-    RuntimeEnabledFeatures::sharedFeatures().setIndexedDBWorkersEnabled(m_indexedDBWorkersEnabled);
-#endif
</del><span class="cx">     settings.setDeferredCSSParserEnabled(m_deferredCSSParserEnabled);
</span><span class="cx">     settings.setInputEventsEnabled(m_inputEventsEnabled);
</span><span class="cx">     settings.setUserInterfaceDirectionPolicy(m_userInterfaceDirectionPolicy);
</span><span class="lines">@@ -179,6 +183,19 @@
</span><span class="cx">     settings.setForcedDisplayIsMonochromeAccessibilityValue(m_forcedDisplayIsMonochromeAccessibilityValue);
</span><span class="cx">     settings.setForcedPrefersReducedMotionAccessibilityValue(m_forcedPrefersReducedMotionAccessibilityValue);
</span><span class="cx">     Settings::setAllowsAnySSLCertificate(false);
</span><ins>+
+    RuntimeEnabledFeatures::sharedFeatures().setLangAttributeAwareFormControlUIEnabled(m_langAttributeAwareFormControlUIEnabled);
+    RuntimeEnabledFeatures::sharedFeatures().setResourceTimingEnabled(m_resourceTimingEnabled);
+    RuntimeEnabledFeatures::sharedFeatures().setLinkPreloadEnabled(m_linkPreloadEnabled);
+#if ENABLE(INDEXED_DATABASE_IN_WORKERS)
+    RuntimeEnabledFeatures::sharedFeatures().setIndexedDBWorkersEnabled(m_indexedDBWorkersEnabled);
+#endif
+#if ENABLE(CSS_GRID_LAYOUT)
+    RuntimeEnabledFeatures::sharedFeatures().setCSSGridLayoutEnabled(m_cssGridLayoutEnabled);
+#endif
+#if ENABLE(WEBGL2)
+    RuntimeEnabledFeatures::sharedFeatures().setWebGL2Enabled(m_webGL2Enabled);
+#endif
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> class InternalSettingsWrapper : public Supplement&lt;Page&gt; {
</span><span class="lines">@@ -490,11 +507,6 @@
</span><span class="cx">     return { };
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-void InternalSettings::setLangAttributeAwareFormControlUIEnabled(bool enabled)
-{
-    RuntimeEnabledFeatures::sharedFeatures().setLangAttributeAwareFormControlUIEnabled(enabled);
-}
-
</del><span class="cx"> ExceptionOr&lt;void&gt; InternalSettings::setPreferMIMETypeForImages(bool preferMIMETypeForImages)
</span><span class="cx"> {
</span><span class="cx">     if (!m_page)
</span><span class="lines">@@ -656,6 +668,21 @@
</span><span class="cx">     return { };
</span><span class="cx"> }
</span><span class="cx"> 
</span><ins>+void InternalSettings::setLangAttributeAwareFormControlUIEnabled(bool enabled)
+{
+    RuntimeEnabledFeatures::sharedFeatures().setLangAttributeAwareFormControlUIEnabled(enabled);
+}
+
+void InternalSettings::setResourceTimingEnabled(bool enabled)
+{
+    RuntimeEnabledFeatures::sharedFeatures().setResourceTimingEnabled(enabled);
+}
+
+void InternalSettings::setLinkPreloadEnabled(bool enabled)
+{
+    RuntimeEnabledFeatures::sharedFeatures().setLinkPreloadEnabled(enabled);
+}
+
</ins><span class="cx"> void InternalSettings::setIndexedDBWorkersEnabled(bool enabled)
</span><span class="cx"> {
</span><span class="cx"> #if ENABLE(INDEXED_DATABASE_IN_WORKERS)
</span><span class="lines">@@ -665,6 +692,24 @@
</span><span class="cx"> #endif
</span><span class="cx"> }
</span><span class="cx"> 
</span><ins>+void InternalSettings::setCSSGridLayoutEnabled(bool enabled)
+{
+#if ENABLE(CSS_GRID_LAYOUT)
+    RuntimeEnabledFeatures::sharedFeatures().setCSSGridLayoutEnabled(enabled);
+#else
+    UNUSED_PARAM(enabled);
+#endif
+}
+
+void InternalSettings::setWebGL2Enabled(bool enabled)
+{
+#if ENABLE(WEBGL2)
+    RuntimeEnabledFeatures::sharedFeatures().setWebGL2Enabled(enabled);
+#else
+    UNUSED_PARAM(enabled);
+#endif
+}
+
</ins><span class="cx"> ExceptionOr&lt;String&gt; InternalSettings::userInterfaceDirectionPolicy()
</span><span class="cx"> {
</span><span class="cx">     if (!m_page)
</span></span></pre></div>
<a id="trunkSourceWebCoretestingInternalSettingsh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/testing/InternalSettings.h (211005 => 211006)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/testing/InternalSettings.h        2017-01-21 01:46:18 UTC (rev 211005)
+++ trunk/Source/WebCore/testing/InternalSettings.h        2017-01-21 02:23:47 UTC (rev 211006)
</span><span class="lines">@@ -73,7 +73,6 @@
</span><span class="cx">     ExceptionOr&lt;void&gt; setShouldDisplayTrackKind(const String&amp; kind, bool enabled);
</span><span class="cx">     ExceptionOr&lt;bool&gt; shouldDisplayTrackKind(const String&amp; kind);
</span><span class="cx">     ExceptionOr&lt;void&gt; setStorageBlockingPolicy(const String&amp;);
</span><del>-    static void setLangAttributeAwareFormControlUIEnabled(bool);
</del><span class="cx">     ExceptionOr&lt;void&gt; setImagesEnabled(bool);
</span><span class="cx">     ExceptionOr&lt;void&gt; setMinimumTimerInterval(double intervalInSeconds);
</span><span class="cx">     ExceptionOr&lt;void&gt; setDefaultVideoPosterURL(const String&amp;);
</span><span class="lines">@@ -91,12 +90,13 @@
</span><span class="cx">     ExceptionOr&lt;void&gt; setAllowsInlineMediaPlayback(bool);
</span><span class="cx">     ExceptionOr&lt;void&gt; setAllowsInlineMediaPlaybackAfterFullscreen(bool);
</span><span class="cx">     ExceptionOr&lt;void&gt; setInlineMediaPlaybackRequiresPlaysInlineAttribute(bool);
</span><del>-    static void setIndexedDBWorkersEnabled(bool);
</del><span class="cx">     ExceptionOr&lt;String&gt; userInterfaceDirectionPolicy();
</span><span class="cx">     ExceptionOr&lt;void&gt; setUserInterfaceDirectionPolicy(const String&amp;);
</span><span class="cx">     ExceptionOr&lt;String&gt; systemLayoutDirection();
</span><span class="cx">     ExceptionOr&lt;void&gt; setSystemLayoutDirection(const String&amp;);
</span><span class="cx">     
</span><ins>+    static void setAllowsAnySSLCertificate(bool);
+
</ins><span class="cx">     ExceptionOr&lt;bool&gt; deferredCSSParserEnabled();
</span><span class="cx">     ExceptionOr&lt;void&gt; setDeferredCSSParserEnabled(bool);
</span><span class="cx"> 
</span><span class="lines">@@ -108,7 +108,13 @@
</span><span class="cx">     ForcedAccessibilityValue forcedPrefersReducedMotionAccessibilityValue() const;
</span><span class="cx">     void setForcedPrefersReducedMotionAccessibilityValue(ForcedAccessibilityValue);
</span><span class="cx"> 
</span><del>-    static void setAllowsAnySSLCertificate(bool);
</del><ins>+    // RuntimeEnabledFeatures.
+    static void setLangAttributeAwareFormControlUIEnabled(bool);
+    static void setResourceTimingEnabled(bool);
+    static void setLinkPreloadEnabled(bool);
+    static void setIndexedDBWorkersEnabled(bool);
+    static void setCSSGridLayoutEnabled(bool);
+    static void setWebGL2Enabled(bool);
</ins><span class="cx"> 
</span><span class="cx"> private:
</span><span class="cx">     explicit InternalSettings(Page*);
</span><span class="lines">@@ -141,7 +147,6 @@
</span><span class="cx">         bool m_originalCanvasUsesAcceleratedDrawing;
</span><span class="cx">         bool m_originalMockScrollbarsEnabled;
</span><span class="cx">         bool m_originalUsesOverlayScrollbars;
</span><del>-        bool m_langAttributeAwareFormControlUIEnabled;
</del><span class="cx">         bool m_imagesEnabled;
</span><span class="cx">         bool m_preferMIMETypeForImages;
</span><span class="cx">         std::chrono::milliseconds m_minimumTimerInterval;
</span><span class="lines">@@ -172,9 +177,6 @@
</span><span class="cx">         bool m_allowsInlineMediaPlayback;
</span><span class="cx">         bool m_allowsInlineMediaPlaybackAfterFullscreen;
</span><span class="cx">         bool m_inlineMediaPlaybackRequiresPlaysInlineAttribute;
</span><del>-#if ENABLE(INDEXED_DATABASE_IN_WORKERS)
-        bool m_indexedDBWorkersEnabled;
-#endif
</del><span class="cx">         bool m_deferredCSSParserEnabled;
</span><span class="cx">         bool m_inputEventsEnabled;
</span><span class="cx"> 
</span><span class="lines">@@ -184,6 +186,14 @@
</span><span class="cx">         Settings::ForcedAccessibilityValue m_forcedColorsAreInvertedAccessibilityValue;
</span><span class="cx">         Settings::ForcedAccessibilityValue m_forcedDisplayIsMonochromeAccessibilityValue;
</span><span class="cx">         Settings::ForcedAccessibilityValue m_forcedPrefersReducedMotionAccessibilityValue;
</span><ins>+
+        // Runtime enabled settings.
+        bool m_langAttributeAwareFormControlUIEnabled;
+        bool m_resourceTimingEnabled;
+        bool m_linkPreloadEnabled;
+        bool m_indexedDBWorkersEnabled;
+        bool m_cssGridLayoutEnabled;
+        bool m_webGL2Enabled;
</ins><span class="cx">     };
</span><span class="cx"> 
</span><span class="cx">     Page* m_page;
</span></span></pre></div>
<a id="trunkSourceWebCoretestingInternalSettingsidl"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/testing/InternalSettings.idl (211005 => 211006)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/testing/InternalSettings.idl        2017-01-21 01:46:18 UTC (rev 211005)
+++ trunk/Source/WebCore/testing/InternalSettings.idl        2017-01-21 02:23:47 UTC (rev 211006)
</span><span class="lines">@@ -65,7 +65,6 @@
</span><span class="cx">     // Editing, forms
</span><span class="cx">     [MayThrowException] void setEditingBehavior(DOMString behavior);
</span><span class="cx">     [MayThrowException] void setShouldConvertPositionStyleOnCopy(boolean convertPosition);
</span><del>-    void setLangAttributeAwareFormControlUIEnabled(boolean enabled);
</del><span class="cx">     [MayThrowException] void setPreferMIMETypeForImages(boolean preferMimeTypeForImage);
</span><span class="cx"> 
</span><span class="cx">     // Other switches
</span><span class="lines">@@ -82,7 +81,13 @@
</span><span class="cx">     [MayThrowException] void setAllowsInlineMediaPlaybackAfterFullscreen(boolean allows);
</span><span class="cx">     [MayThrowException] void setInlineMediaPlaybackRequiresPlaysInlineAttribute(boolean requires);
</span><span class="cx"> 
</span><del>-    void setIndexedDBWorkersEnabled(boolean requires);
</del><ins>+    // RuntimeEnabledFeatures.
+    void setLangAttributeAwareFormControlUIEnabled(boolean enabled);
+    void setResourceTimingEnabled(boolean enabled);
+    void setLinkPreloadEnabled(boolean enabled);
+    void setIndexedDBWorkersEnabled(boolean enabled);
+    void setCSSGridLayoutEnabled(boolean enabled);
+    void setWebGL2Enabled(boolean enabled);
</ins><span class="cx"> 
</span><span class="cx">     [MayThrowException] DOMString userInterfaceDirectionPolicy();
</span><span class="cx">     [MayThrowException] void setUserInterfaceDirectionPolicy(DOMString policy);
</span><span class="lines">@@ -95,7 +100,5 @@
</span><span class="cx">     attribute ForcedAccessibilityValue forcedColorsAreInvertedAccessibilityValue;
</span><span class="cx">     attribute ForcedAccessibilityValue forcedDisplayIsMonochromeAccessibilityValue;
</span><span class="cx">     attribute ForcedAccessibilityValue forcedPrefersReducedMotionAccessibilityValue;
</span><del>-
-    void setInputEventsEnabled(boolean enabled);
</del><span class="cx"> };
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkSourceWebCoretestingInternalscpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/testing/Internals.cpp (211005 => 211006)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/testing/Internals.cpp        2017-01-21 01:46:18 UTC (rev 211005)
+++ trunk/Source/WebCore/testing/Internals.cpp        2017-01-21 02:23:47 UTC (rev 211006)
</span><span class="lines">@@ -110,7 +110,6 @@
</span><span class="cx"> #include &quot;RenderView.h&quot;
</span><span class="cx"> #include &quot;RenderedDocumentMarker.h&quot;
</span><span class="cx"> #include &quot;ResourceLoadObserver.h&quot;
</span><del>-#include &quot;RuntimeEnabledFeatures.h&quot;
</del><span class="cx"> #include &quot;SVGPathStringBuilder.h&quot;
</span><span class="cx"> #include &quot;SchemeRegistry.h&quot;
</span><span class="cx"> #include &quot;ScriptedAnimationController.h&quot;
</span><span class="lines">@@ -457,7 +456,6 @@
</span><span class="cx">     if (document.page())
</span><span class="cx">         document.page()-&gt;setMockMediaPlaybackTargetPickerEnabled(true);
</span><span class="cx"> #endif
</span><del>-    RuntimeEnabledFeatures::sharedFeatures().reset();
</del><span class="cx"> 
</span><span class="cx">     if (contextDocument() &amp;&amp; contextDocument()-&gt;frame()) {
</span><span class="cx">         setAutomaticSpellingCorrectionEnabled(true);
</span><span class="lines">@@ -3515,39 +3513,6 @@
</span><span class="cx">     return WebCore::composedTreeAsText(downcast&lt;ContainerNode&gt;(node));
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-void Internals::setLinkPreloadSupport(bool enable)
-{
-    RuntimeEnabledFeatures::sharedFeatures().setLinkPreloadEnabled(enable);
-}
-
-#if ENABLE(CSS_GRID_LAYOUT)
-
-void Internals::setCSSGridLayoutEnabled(bool enable)
-{
-    RuntimeEnabledFeatures::sharedFeatures().setCSSGridLayoutEnabled(enable);
-}
-
-#endif
-
-#if ENABLE(WEBGL2)
-
-bool Internals::webGL2Enabled() const
-{
-    return RuntimeEnabledFeatures::sharedFeatures().webGL2Enabled();
-}
-
-void Internals::setWebGL2Enabled(bool enable)
-{
-    RuntimeEnabledFeatures::sharedFeatures().setWebGL2Enabled(enable);
-}
-
-#endif
-
-void Internals::setResourceTimingSupport(bool enable)
-{
-    RuntimeEnabledFeatures::sharedFeatures().setResourceTimingEnabled(enable);
-}
-
</del><span class="cx"> bool Internals::isProcessingUserGesture()
</span><span class="cx"> {
</span><span class="cx">     return UserGestureIndicator::processingUserGesture();
</span></span></pre></div>
<a id="trunkSourceWebCoretestingInternalsh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/testing/Internals.h (211005 => 211006)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/testing/Internals.h        2017-01-21 01:46:18 UTC (rev 211005)
+++ trunk/Source/WebCore/testing/Internals.h        2017-01-21 02:23:47 UTC (rev 211006)
</span><span class="lines">@@ -498,18 +498,6 @@
</span><span class="cx"> 
</span><span class="cx">     String composedTreeAsText(Node&amp;);
</span><span class="cx">     
</span><del>-    void setLinkPreloadSupport(bool);
-    void setResourceTimingSupport(bool);
-
-#if ENABLE(CSS_GRID_LAYOUT)
-    void setCSSGridLayoutEnabled(bool);
-#endif
-
-#if ENABLE(WEBGL2)
-    bool webGL2Enabled() const;
-    void setWebGL2Enabled(bool);
-#endif
-
</del><span class="cx">     bool isProcessingUserGesture();
</span><span class="cx"> 
</span><span class="cx">     RefPtr&lt;GCObservation&gt; observeGC(JSC::JSValue);
</span></span></pre></div>
<a id="trunkSourceWebCoretestingInternalsidl"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/testing/Internals.idl (211005 => 211006)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/testing/Internals.idl        2017-01-21 01:46:18 UTC (rev 211005)
+++ trunk/Source/WebCore/testing/Internals.idl        2017-01-21 02:23:47 UTC (rev 211006)
</span><span class="lines">@@ -476,19 +476,6 @@
</span><span class="cx"> 
</span><span class="cx">     DOMString composedTreeAsText(Node parent);
</span><span class="cx"> 
</span><del>-    void setLinkPreloadSupport(boolean scalable);
-
-#if defined(ENABLE_CSS_GRID_LAYOUT) &amp;&amp; ENABLE_CSS_GRID_LAYOUT
-    void setCSSGridLayoutEnabled(boolean enable);
-#endif
-
-#if defined(ENABLE_WEBGL2) &amp;&amp; ENABLE_WEBGL2
-    boolean webGL2Enabled();
-    void setWebGL2Enabled(boolean enable);
-#endif
-
-    void setResourceTimingSupport(boolean scalable);
-    
</del><span class="cx">     boolean isProcessingUserGesture();
</span><span class="cx"> 
</span><span class="cx">     GCObservation? observeGC(any observed);
</span></span></pre></div>
<a id="trunkSourceWebKitmacChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/mac/ChangeLog (211005 => 211006)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/mac/ChangeLog        2017-01-21 01:46:18 UTC (rev 211005)
+++ trunk/Source/WebKit/mac/ChangeLog        2017-01-21 02:23:47 UTC (rev 211006)
</span><span class="lines">@@ -1,5 +1,15 @@
</span><span class="cx"> 2017-01-20  Joseph Pecoraro  &lt;pecoraro@apple.com&gt;
</span><span class="cx"> 
</span><ins>+        Cleanup RuntimeEnabledFeatures
+        https://bugs.webkit.org/show_bug.cgi?id=167228
+
+        Reviewed by Simon Fraser.
+
+        * WebView/WebView.mm:
+        (-[WebView _preferencesChanged:]):
+
+2017-01-20  Joseph Pecoraro  &lt;pecoraro@apple.com&gt;
+
</ins><span class="cx">         Remove outdated ENABLE(CSP_NEXT) build flag
</span><span class="cx">         https://bugs.webkit.org/show_bug.cgi?id=167252
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkSourceWebKitmacWebViewWebViewmm"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/mac/WebView/WebView.mm (211005 => 211006)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/mac/WebView/WebView.mm        2017-01-21 01:46:18 UTC (rev 211005)
+++ trunk/Source/WebKit/mac/WebView/WebView.mm        2017-01-21 02:23:47 UTC (rev 211006)
</span><span class="lines">@@ -2868,7 +2868,7 @@
</span><span class="cx"> #endif
</span><span class="cx"> 
</span><span class="cx"> #if ENABLE(INDEXED_DATABASE)
</span><del>-    RuntimeEnabledFeatures::sharedFeatures().setWebkitIndexedDBEnabled(true);
</del><ins>+    RuntimeEnabledFeatures::sharedFeatures().setIndexedDBEnabled(true);
</ins><span class="cx"> #endif
</span><span class="cx"> 
</span><span class="cx">     RuntimeEnabledFeatures::sharedFeatures().setShadowDOMEnabled([preferences shadowDOMEnabled]);
</span></span></pre></div>
<a id="trunkSourceWebKitwinChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/win/ChangeLog (211005 => 211006)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/win/ChangeLog        2017-01-21 01:46:18 UTC (rev 211005)
+++ trunk/Source/WebKit/win/ChangeLog        2017-01-21 02:23:47 UTC (rev 211006)
</span><span class="lines">@@ -1,3 +1,13 @@
</span><ins>+2017-01-20  Joseph Pecoraro  &lt;pecoraro@apple.com&gt;
+
+        Cleanup RuntimeEnabledFeatures
+        https://bugs.webkit.org/show_bug.cgi?id=167228
+
+        Reviewed by Simon Fraser.
+
+        * WebView.cpp:
+        (WebView::notifyPreferencesChanged):
+
</ins><span class="cx"> 2017-01-20  Alex Christensen  &lt;achristensen@webkit.org&gt;
</span><span class="cx"> 
</span><span class="cx">         Build Fix for Windows DumpRenderTree after r210976
</span></span></pre></div>
<a id="trunkSourceWebKitwinWebViewcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/win/WebView.cpp (211005 => 211006)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/win/WebView.cpp        2017-01-21 01:46:18 UTC (rev 211005)
+++ trunk/Source/WebKit/win/WebView.cpp        2017-01-21 02:23:47 UTC (rev 211006)
</span><span class="lines">@@ -5229,7 +5229,7 @@
</span><span class="cx">     // FIXME: Add preferences for the runtime enabled features.
</span><span class="cx"> 
</span><span class="cx"> #if ENABLE(INDEXED_DATABASE)
</span><del>-    RuntimeEnabledFeatures::sharedFeatures().setWebkitIndexedDBEnabled(true);
</del><ins>+    RuntimeEnabledFeatures::sharedFeatures().setIndexedDBEnabled(true);
</ins><span class="cx"> #endif
</span><span class="cx"> 
</span><span class="cx"> #if ENABLE(FETCH_API)
</span></span></pre></div>
<a id="trunkSourceWebKit2ChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/ChangeLog (211005 => 211006)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/ChangeLog        2017-01-21 01:46:18 UTC (rev 211005)
+++ trunk/Source/WebKit2/ChangeLog        2017-01-21 02:23:47 UTC (rev 211006)
</span><span class="lines">@@ -1,5 +1,15 @@
</span><span class="cx"> 2017-01-20  Joseph Pecoraro  &lt;pecoraro@apple.com&gt;
</span><span class="cx"> 
</span><ins>+        Cleanup RuntimeEnabledFeatures
+        https://bugs.webkit.org/show_bug.cgi?id=167228
+
+        Reviewed by Simon Fraser.
+
+        * WebProcess/WebProcess.cpp:
+        (WebKit::m_resourceLoadStatisticsStorage):
+
+2017-01-20  Joseph Pecoraro  &lt;pecoraro@apple.com&gt;
+
</ins><span class="cx">         Remove outdated ENABLE(CSP_NEXT) build flag
</span><span class="cx">         https://bugs.webkit.org/show_bug.cgi?id=167252
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkSourceWebKit2WebProcessWebProcesscpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/WebProcess/WebProcess.cpp (211005 => 211006)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/WebProcess/WebProcess.cpp        2017-01-21 01:46:18 UTC (rev 211005)
+++ trunk/Source/WebKit2/WebProcess/WebProcess.cpp        2017-01-21 02:23:47 UTC (rev 211006)
</span><span class="lines">@@ -192,7 +192,7 @@
</span><span class="cx">     m_plugInAutoStartOriginHashes.add(SessionID::defaultSessionID(), HashMap&lt;unsigned, double&gt;());
</span><span class="cx"> 
</span><span class="cx"> #if ENABLE(INDEXED_DATABASE)
</span><del>-    RuntimeEnabledFeatures::sharedFeatures().setWebkitIndexedDBEnabled(true);
</del><ins>+    RuntimeEnabledFeatures::sharedFeatures().setIndexedDBEnabled(true);
</ins><span class="cx"> #endif
</span><span class="cx"> 
</span><span class="cx">     ResourceLoadObserver::sharedObserver().setStatisticsStore(m_resourceLoadStatisticsStorage.copyRef());
</span></span></pre></div>
<a id="trunkToolsChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Tools/ChangeLog (211005 => 211006)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Tools/ChangeLog        2017-01-21 01:46:18 UTC (rev 211005)
+++ trunk/Tools/ChangeLog        2017-01-21 02:23:47 UTC (rev 211006)
</span><span class="lines">@@ -1,3 +1,21 @@
</span><ins>+2017-01-20  Joseph Pecoraro  &lt;pecoraro@apple.com&gt;
+
+        Cleanup RuntimeEnabledFeatures
+        https://bugs.webkit.org/show_bug.cgi?id=167228
+
+        Reviewed by Simon Fraser.
+
+        * DumpRenderTree/mac/DumpRenderTree.mm:
+        (enableExperimentalFeatures):
+        (resetWebPreferencesToConsistentValues):
+        (setWebPreferencesForTestOptions):
+        (resetWebViewToConsistentStateBeforeTesting):
+        * DumpRenderTree/win/DumpRenderTree.cpp:
+        (enableExperimentalFeatures):
+        (resetWebPreferencesToConsistentValues):
+        More closely match WebKitTestRunner initialization of preferences
+        for experimental features.
+
</ins><span class="cx"> 2017-01-20  Alex Christensen  &lt;achristensen@webkit.org&gt;
</span><span class="cx"> 
</span><span class="cx">         Build Fix for Windows DumpRenderTree after r210976
</span></span></pre></div>
<a id="trunkToolsDumpRenderTreemacDumpRenderTreemm"></a>
<div class="modfile"><h4>Modified: trunk/Tools/DumpRenderTree/mac/DumpRenderTree.mm (211005 => 211006)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Tools/DumpRenderTree/mac/DumpRenderTree.mm        2017-01-21 01:46:18 UTC (rev 211005)
+++ trunk/Tools/DumpRenderTree/mac/DumpRenderTree.mm        2017-01-21 02:23:47 UTC (rev 211006)
</span><span class="lines">@@ -895,10 +895,22 @@
</span><span class="cx">         return [@&quot;~/Library/Application Support/DumpRenderTree&quot; stringByExpandingTildeInPath];
</span><span class="cx"> }
</span><span class="cx"> 
</span><ins>+static void enableExperimentalFeatures(WebPreferences* preferences)
+{
+    [preferences setCSSGridLayoutEnabled:YES];
+    // FIXME: SpringTimingFunction
+    [preferences setGamepadsEnabled:YES];
+    [preferences setModernMediaControlsEnabled:YES];
+    // FIXME: InputEvents
+    [preferences setSubtleCryptoEnabled:YES];
+    [preferences setWebGL2Enabled:YES];
+}
+
</ins><span class="cx"> // Called before each test.
</span><del>-static void resetWebPreferencesToConsistentValues(const TestOptions&amp; options)
</del><ins>+static void resetWebPreferencesToConsistentValues()
</ins><span class="cx"> {
</span><span class="cx">     WebPreferences *preferences = [WebPreferences standardPreferences];
</span><ins>+    enableExperimentalFeatures(preferences);
</ins><span class="cx"> 
</span><span class="cx">     [preferences setNeedsStorageAccessFromFileURLsQuirk: NO];
</span><span class="cx">     [preferences setAllowUniversalAccessFromFileURLs:YES];
</span><span class="lines">@@ -993,12 +1005,7 @@
</span><span class="cx"> 
</span><span class="cx">     [preferences setHiddenPageDOMTimerThrottlingEnabled:NO];
</span><span class="cx">     [preferences setHiddenPageCSSAnimationSuspensionEnabled:NO];
</span><del>-
-    preferences.intersectionObserverEnabled = options.enableIntersectionObserver;
-    preferences.modernMediaControlsEnabled = options.enableModernMediaControls;
-
-    [preferences setSubtleCryptoEnabled:YES];
-
</del><ins>+    
</ins><span class="cx">     [preferences setMediaStreamEnabled:YES];
</span><span class="cx">     [preferences setPeerConnectionEnabled:YES];
</span><span class="cx">     [preferences setWebAnimationsEnabled:YES];
</span><span class="lines">@@ -1007,6 +1014,14 @@
</span><span class="cx">     [WebPreferences _setCurrentNetworkLoaderSessionCookieAcceptPolicy:NSHTTPCookieAcceptPolicyOnlyFromMainDocumentDomain];
</span><span class="cx"> }
</span><span class="cx"> 
</span><ins>+static void setWebPreferencesForTestOptions(const TestOptions&amp; options)
+{
+    WebPreferences *preferences = [WebPreferences standardPreferences];
+
+    preferences.intersectionObserverEnabled = options.enableIntersectionObserver;
+    preferences.modernMediaControlsEnabled = options.enableModernMediaControls;
+}
+
</ins><span class="cx"> // Called once on DumpRenderTree startup.
</span><span class="cx"> static void setDefaultsToConsistentValuesForTesting()
</span><span class="cx"> {
</span><span class="lines">@@ -1853,7 +1868,8 @@
</span><span class="cx"> 
</span><span class="cx">     [WebCache clearCachedCredentials];
</span><span class="cx">     
</span><del>-    resetWebPreferencesToConsistentValues(options);
</del><ins>+    resetWebPreferencesToConsistentValues();
+    setWebPreferencesForTestOptions(options);
</ins><span class="cx"> 
</span><span class="cx">     TestRunner::setSerializeHTTPLoads(false);
</span><span class="cx">     TestRunner::setAllowsAnySSLCertificate(false);
</span></span></pre></div>
<a id="trunkToolsDumpRenderTreewinDumpRenderTreecpp"></a>
<div class="modfile"><h4>Modified: trunk/Tools/DumpRenderTree/win/DumpRenderTree.cpp (211005 => 211006)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Tools/DumpRenderTree/win/DumpRenderTree.cpp        2017-01-21 01:46:18 UTC (rev 211005)
+++ trunk/Tools/DumpRenderTree/win/DumpRenderTree.cpp        2017-01-21 02:23:47 UTC (rev 211006)
</span><span class="lines">@@ -767,10 +767,26 @@
</span><span class="cx">     return true;
</span><span class="cx"> }
</span><span class="cx"> 
</span><ins>+static void enableExperimentalFeatures(IWebPreferences* preferences)
+{
+    COMPtr&lt;IWebPreferencesPrivate4&gt; prefsPrivate4(Query, preferences);    
+
+    // FIXME: CSSGridLayout
+    // FIXME: SpringTimingFunction
+    // FIXME: Gamepads
+    // FIXME: ModernMediaControls
+    // FIXME: InputEvents
+    // FIXME: SubtleCrypto
+    prefsPrivate4-&gt;setWebAnimationsEnabled(TRUE);
+    // FIXME: WebGL2
+}
+
</ins><span class="cx"> static void resetWebPreferencesToConsistentValues(IWebPreferences* preferences)
</span><span class="cx"> {
</span><span class="cx">     ASSERT(preferences);
</span><span class="cx"> 
</span><ins>+    enableExperimentalFeatures(preferences);
+
</ins><span class="cx">     preferences-&gt;setAutosaves(FALSE);
</span><span class="cx"> 
</span><span class="cx">     COMPtr&lt;IWebPreferencesPrivate&gt; prefsPrivate(Query, preferences);
</span><span class="lines">@@ -861,7 +877,6 @@
</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><del>-    prefsPrivate4-&gt;setWebAnimationsEnabled(TRUE);
</del><span class="cx"> 
</span><span class="cx">     setAlwaysAcceptCookies(false);
</span><span class="cx"> }
</span></span></pre>
</div>
</div>

</body>
</html>