Title: [269111] trunk
Revision
269111
Author
wei...@apple.com
Date
2020-10-28 11:33:08 -0700 (Wed, 28 Oct 2020)

Log Message

Reduce Preference Override Methods: TabsToLinks/SpatialNavigation
https://bugs.webkit.org/show_bug.cgi?id=218288

Reviewed by Tim Horton.

Source/WebKit:

Removes WKPreferencesGet/SetTabToLinksEnabled preference as it duplicates functionality of
WKPreferencesGet/SetTabsToLinks. The former was added for https://bugs.webkit.org/show_bug.cgi?id=95329
but was redundant even at the time. We can now use test header commands for all of its
use cases.

Also removes testing only bundle SPI for enabling spatial navigation which also can be
set via test headers instead.

* UIProcess/API/C/WKPreferences.cpp:
(WKPreferencesSetTabToLinksEnabled): Deleted.
(WKPreferencesGetTabToLinksEnabled): Deleted.
* UIProcess/API/C/WKPreferencesRefPrivate.h:
* WebProcess/InjectedBundle/API/c/WKBundle.cpp:
(WKBundleSetSpatialNavigationEnabled): Deleted.
* WebProcess/InjectedBundle/API/c/WKBundlePrivate.h:
* WebProcess/InjectedBundle/InjectedBundle.cpp:
(WebKit::InjectedBundle::overrideBoolPreferenceForTestRunner):
(WebKit::InjectedBundle::setSpatialNavigationEnabled): Deleted.
* WebProcess/InjectedBundle/InjectedBundle.h:
* WebProcess/WebPage/WebPage.h:
(WebKit::WebPage::setTabToLinksEnabled): Deleted.
(WebKit::WebPage::tabToLinksEnabled const): Deleted.

Source/WTF:

* Scripts/Preferences/WebPreferences.yaml:
Unify TabToLinksEnabled and TabsToLinks. TabToLinksEnabled was added for https://bugs.webkit.org/show_bug.cgi?id=95329
and has never actually been needed.

Tools:

Replace uses of testRunner.overridePreference("WebKitTabToLinksPreferenceKey", ...) and
testRunner.setSpatialNavigationEnabled(...) with test header commands, helping to reduce
the number of different ways we have to override preferences in LayoutTests.

* DumpRenderTree/TestOptions.cpp:
(WTR::TestOptions::defaults):
* DumpRenderTree/TestRunner.cpp:
(TestRunner::staticFunctions):
(setSpatialNavigationEnabledCallback): Deleted.
* DumpRenderTree/TestRunner.h:
* DumpRenderTree/mac/DumpRenderTree.mm:
(resetWebPreferencesToConsistentValues):
* DumpRenderTree/mac/TestRunnerMac.mm:
(TestRunner::setSpatialNavigationEnabled): Deleted.
* DumpRenderTree/win/DumpRenderTree.cpp:
(resetWebPreferencesToConsistentValues):
(setWebPreferencesForTestOptions):
* WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
* WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
(WTR::InjectedBundle::beginTesting):
* WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::setSpatialNavigationEnabled): Deleted.
* WebKitTestRunner/InjectedBundle/TestRunner.h:
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::resetPreferencesToConsistentValues):

LayoutTests:

Replace uses of testRunner.overridePreference("WebKitTabToLinksPreferenceKey", ...) and
testRunner.setSpatialNavigationEnabled(...) with test header commands, helping to reduce
the number of different ways we have to override preferences in LayoutTests.

* accessibility/mac/caret-browsing-tab-selection.html:
* accessibility/mac/focus-setting-selection-syncronizing-not-clearing.html:
* accessibility/mac/selection-element-tabbing-to-link.html:
* accessibility/mac/selection-notification-focus-change.html:
* accessibility/mac/tab-focus-post-notification.html:
* fast/events/tab-focus-anchor.html:
* fast/events/tab-focus-link-in-canvas.html:
* fast/spatial-navigation/snav-1st-stop.html:
* fast/spatial-navigation/snav-clipped-overflowed-content.html:
* fast/spatial-navigation/snav-container-only-white-space.html:
* fast/spatial-navigation/snav-container-white-space.html:
* fast/spatial-navigation/snav-display-contents-crash.html:
* fast/spatial-navigation/snav-div-overflow-scrol-hidden.html:
* fast/spatial-navigation/snav-div-scrollable-but-without-focusable-content.html:
* fast/spatial-navigation/snav-fully-aligned-horizontally.html:
* fast/spatial-navigation/snav-fully-aligned-vertically.html:
* fast/spatial-navigation/snav-hidden-focusable-element.html:
* fast/spatial-navigation/snav-hidden-iframe-zero-size.html:
* fast/spatial-navigation/snav-hidden-iframe.html:
* fast/spatial-navigation/snav-iframe-flattening-simple.html:
* fast/spatial-navigation/snav-iframe-nested.html:
* fast/spatial-navigation/snav-iframe-no-focusable-content.html:
* fast/spatial-navigation/snav-iframe-no-scrollable-content.html:
* fast/spatial-navigation/snav-iframe-recursive-offset-parent.html:
* fast/spatial-navigation/snav-iframe-with-offscreen-focusable-element.html:
* fast/spatial-navigation/snav-imagemap-area-not-focusable.html:
* fast/spatial-navigation/snav-imagemap-area-without-image.html:
* fast/spatial-navigation/snav-imagemap-overlapped-areas.html:
* fast/spatial-navigation/snav-imagemap-simple.html:
* fast/spatial-navigation/snav-input.html:
* fast/spatial-navigation/snav-media-elements.html:
* fast/spatial-navigation/snav-multiple-select-focusring.html:
* fast/spatial-navigation/snav-multiple-select-optgroup.html:
* fast/spatial-navigation/snav-multiple-select.html:
* fast/spatial-navigation/snav-offscreen-content.html:
* fast/spatial-navigation/snav-only-clipped-overflow-content.html:
* fast/spatial-navigation/snav-radio-group.html:
* fast/spatial-navigation/snav-radio.html:
* fast/spatial-navigation/snav-search-optimization.html:
* fast/spatial-navigation/snav-simple-content-overflow.html:
* fast/spatial-navigation/snav-single-select-list.html:
* fast/spatial-navigation/snav-single-select.html:
* fast/spatial-navigation/snav-table-traversal.html:
* fast/spatial-navigation/snav-textarea.html:
* fast/spatial-navigation/snav-tiny-table-traversal.html:
* fast/spatial-navigation/snav-two-elements-one-line.html:
* fast/spatial-navigation/snav-unit-overflow-and-scroll-in-direction.html:
* fast/spatial-navigation/snav-z-index.html:
* fast/spatial-navigation/snav-zero-margin-content.html:
* media/media-controls-accessibility.html:
* media/tab-focus-inside-media-elements.html:

Modified Paths

Diff

Modified: trunk/LayoutTests/ChangeLog (269110 => 269111)


--- trunk/LayoutTests/ChangeLog	2020-10-28 18:17:23 UTC (rev 269110)
+++ trunk/LayoutTests/ChangeLog	2020-10-28 18:33:08 UTC (rev 269111)
@@ -1,3 +1,66 @@
+2020-10-28  Sam Weinig  <wei...@apple.com>
+
+        Reduce Preference Override Methods: TabsToLinks/SpatialNavigation
+        https://bugs.webkit.org/show_bug.cgi?id=218288
+
+        Reviewed by Tim Horton.
+
+        Replace uses of testRunner.overridePreference("WebKitTabToLinksPreferenceKey", ...) and
+        testRunner.setSpatialNavigationEnabled(...) with test header commands, helping to reduce
+        the number of different ways we have to override preferences in LayoutTests.
+
+        * accessibility/mac/caret-browsing-tab-selection.html:
+        * accessibility/mac/focus-setting-selection-syncronizing-not-clearing.html:
+        * accessibility/mac/selection-element-tabbing-to-link.html:
+        * accessibility/mac/selection-notification-focus-change.html:
+        * accessibility/mac/tab-focus-post-notification.html:
+        * fast/events/tab-focus-anchor.html:
+        * fast/events/tab-focus-link-in-canvas.html:
+        * fast/spatial-navigation/snav-1st-stop.html:
+        * fast/spatial-navigation/snav-clipped-overflowed-content.html:
+        * fast/spatial-navigation/snav-container-only-white-space.html:
+        * fast/spatial-navigation/snav-container-white-space.html:
+        * fast/spatial-navigation/snav-display-contents-crash.html:
+        * fast/spatial-navigation/snav-div-overflow-scrol-hidden.html:
+        * fast/spatial-navigation/snav-div-scrollable-but-without-focusable-content.html:
+        * fast/spatial-navigation/snav-fully-aligned-horizontally.html:
+        * fast/spatial-navigation/snav-fully-aligned-vertically.html:
+        * fast/spatial-navigation/snav-hidden-focusable-element.html:
+        * fast/spatial-navigation/snav-hidden-iframe-zero-size.html:
+        * fast/spatial-navigation/snav-hidden-iframe.html:
+        * fast/spatial-navigation/snav-iframe-flattening-simple.html:
+        * fast/spatial-navigation/snav-iframe-nested.html:
+        * fast/spatial-navigation/snav-iframe-no-focusable-content.html:
+        * fast/spatial-navigation/snav-iframe-no-scrollable-content.html:
+        * fast/spatial-navigation/snav-iframe-recursive-offset-parent.html:
+        * fast/spatial-navigation/snav-iframe-with-offscreen-focusable-element.html:
+        * fast/spatial-navigation/snav-imagemap-area-not-focusable.html:
+        * fast/spatial-navigation/snav-imagemap-area-without-image.html:
+        * fast/spatial-navigation/snav-imagemap-overlapped-areas.html:
+        * fast/spatial-navigation/snav-imagemap-simple.html:
+        * fast/spatial-navigation/snav-input.html:
+        * fast/spatial-navigation/snav-media-elements.html:
+        * fast/spatial-navigation/snav-multiple-select-focusring.html:
+        * fast/spatial-navigation/snav-multiple-select-optgroup.html:
+        * fast/spatial-navigation/snav-multiple-select.html:
+        * fast/spatial-navigation/snav-offscreen-content.html:
+        * fast/spatial-navigation/snav-only-clipped-overflow-content.html:
+        * fast/spatial-navigation/snav-radio-group.html:
+        * fast/spatial-navigation/snav-radio.html:
+        * fast/spatial-navigation/snav-search-optimization.html:
+        * fast/spatial-navigation/snav-simple-content-overflow.html:
+        * fast/spatial-navigation/snav-single-select-list.html:
+        * fast/spatial-navigation/snav-single-select.html:
+        * fast/spatial-navigation/snav-table-traversal.html:
+        * fast/spatial-navigation/snav-textarea.html:
+        * fast/spatial-navigation/snav-tiny-table-traversal.html:
+        * fast/spatial-navigation/snav-two-elements-one-line.html:
+        * fast/spatial-navigation/snav-unit-overflow-and-scroll-in-direction.html:
+        * fast/spatial-navigation/snav-z-index.html:
+        * fast/spatial-navigation/snav-zero-margin-content.html:
+        * media/media-controls-accessibility.html:
+        * media/tab-focus-inside-media-elements.html:
+
 2020-10-28  Chris Dumez  <cdu...@apple.com>
 
         AudioBuffer channels should be neuterable / detachable

Modified: trunk/LayoutTests/accessibility/mac/caret-browsing-tab-selection.html (269110 => 269111)


--- trunk/LayoutTests/accessibility/mac/caret-browsing-tab-selection.html	2020-10-28 18:17:23 UTC (rev 269110)
+++ trunk/LayoutTests/accessibility/mac/caret-browsing-tab-selection.html	2020-10-28 18:33:08 UTC (rev 269111)
@@ -1,4 +1,4 @@
-<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
+<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN"><!-- webkit-test-runner [ TabsToLinks=true ] -->
 <html>
 <head>
     <script src=""
@@ -12,8 +12,6 @@
     <script>
     description("This tests caret browsing for html select elements.");
     if (window.testRunner) {
-
-        testRunner.overridePreference("WebKitTabToLinksPreferenceKey", 1);
         testRunner.dumpAsText();
 
         if (window.accessibilityController && window.eventSender) {

Modified: trunk/LayoutTests/accessibility/mac/focus-setting-selection-syncronizing-not-clearing.html (269110 => 269111)


--- trunk/LayoutTests/accessibility/mac/focus-setting-selection-syncronizing-not-clearing.html	2020-10-28 18:17:23 UTC (rev 269110)
+++ trunk/LayoutTests/accessibility/mac/focus-setting-selection-syncronizing-not-clearing.html	2020-10-28 18:33:08 UTC (rev 269111)
@@ -1,4 +1,4 @@
-<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
+<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN"><!-- webkit-test-runner [ TabsToLinks=true ] -->
 <html>
 <head>
 <script src=""
@@ -61,7 +61,6 @@
 
     if (window.accessibilityController) {
         jsTestIsAsync = true;
-        testRunner.overridePreference("WebKitTabToLinksPreferenceKey", 1);
 
         accessibilityController.enableEnhancedAccessibility(true);
         webArea = accessibilityController.rootElement.childAtIndex(0);

Modified: trunk/LayoutTests/accessibility/mac/selection-element-tabbing-to-link.html (269110 => 269111)


--- trunk/LayoutTests/accessibility/mac/selection-element-tabbing-to-link.html	2020-10-28 18:17:23 UTC (rev 269110)
+++ trunk/LayoutTests/accessibility/mac/selection-element-tabbing-to-link.html	2020-10-28 18:33:08 UTC (rev 269111)
@@ -1,4 +1,4 @@
-<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
+<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN"><!-- webkit-test-runner [ TabsToLinks=true ] -->
 <html>
 <head>
 <script src=""
@@ -55,7 +55,6 @@
 
     if (window.accessibilityController) {
         jsTestIsAsync = true;
-        testRunner.overridePreference("WebKitTabToLinksPreferenceKey", 1);
 
         accessibilityController.enableEnhancedAccessibility(true);
         webArea = accessibilityController.rootElement.childAtIndex(0);

Modified: trunk/LayoutTests/accessibility/mac/selection-notification-focus-change.html (269110 => 269111)


--- trunk/LayoutTests/accessibility/mac/selection-notification-focus-change.html	2020-10-28 18:17:23 UTC (rev 269110)
+++ trunk/LayoutTests/accessibility/mac/selection-notification-focus-change.html	2020-10-28 18:33:08 UTC (rev 269111)
@@ -1,4 +1,4 @@
-<!DOCTYPE html>
+<!DOCTYPE html><!-- webkit-test-runner [ TabsToLinks=true ] -->
 <html>
     <head>
         <script src=""
@@ -37,8 +37,6 @@
             }
 
             function runFirstTabMoveTest() {
-                testRunner.overridePreference("WebKitTabToLinksPreferenceKey", 1);
-
                 accessibilityController.enableEnhancedAccessibility(true);
                 webArea = accessibilityController.rootElement.childAtIndex(0);
                 webArea.setBoolAttributeValue("AXCaretBrowsingEnabled", true)

Modified: trunk/LayoutTests/accessibility/mac/tab-focus-post-notification.html (269110 => 269111)


--- trunk/LayoutTests/accessibility/mac/tab-focus-post-notification.html	2020-10-28 18:17:23 UTC (rev 269110)
+++ trunk/LayoutTests/accessibility/mac/tab-focus-post-notification.html	2020-10-28 18:33:08 UTC (rev 269111)
@@ -1,3 +1,4 @@
+<!DOCTYPE html><!-- webkit-test-runner [ TabsToLinks=true ] -->
 <html>
 <head>
 <script src=""
@@ -25,8 +26,6 @@
 description("This tests that tabbing focus onto elements will send out notifications");
 
 if (window.testRunner && window.accessibilityController) {
-
-    testRunner.overridePreference("WebKitTabToLinksPreferenceKey", 1);
     accessibilityController.enableEnhancedAccessibility(true);
 
     var count = 0;

Modified: trunk/LayoutTests/fast/events/tab-focus-anchor.html (269110 => 269111)


--- trunk/LayoutTests/fast/events/tab-focus-anchor.html	2020-10-28 18:17:23 UTC (rev 269110)
+++ trunk/LayoutTests/fast/events/tab-focus-anchor.html	2020-10-28 18:33:08 UTC (rev 269111)
@@ -1,4 +1,4 @@
-<!DOCTYPE html>
+<!DOCTYPE html><!-- webkit-test-runner [ TabsToLinks=false ] -->
 <html>
 <head>
 <script>
@@ -17,7 +17,6 @@
 
 if (window.testRunner) {
     testRunner.dumpAsText();
-    testRunner.overridePreference('WebKitTabToLinksPreferenceKey', false);
 }
 
 window._onload_ = function()

Modified: trunk/LayoutTests/fast/events/tab-focus-link-in-canvas.html (269110 => 269111)


--- trunk/LayoutTests/fast/events/tab-focus-link-in-canvas.html	2020-10-28 18:17:23 UTC (rev 269110)
+++ trunk/LayoutTests/fast/events/tab-focus-link-in-canvas.html	2020-10-28 18:33:08 UTC (rev 269111)
@@ -1,4 +1,4 @@
-<!DOCTYPE html>
+<!DOCTYPE html><!-- webkit-test-runner [ TabsToLinks=true ] -->
 <html>
 <head>
 <script src=""
@@ -16,7 +16,6 @@
 
 if (window.testRunner && window.eventSender) {
     testRunner.dumpAsText();
-    testRunner.overridePreference("WebKitTabToLinksPreferenceKey", 1);
 
     document.getElementById('before').focus();
     shouldBe('document.activeElement.id', '"before"');

Modified: trunk/LayoutTests/fast/spatial-navigation/snav-1st-stop.html (269110 => 269111)


--- trunk/LayoutTests/fast/spatial-navigation/snav-1st-stop.html	2020-10-28 18:17:23 UTC (rev 269110)
+++ trunk/LayoutTests/fast/spatial-navigation/snav-1st-stop.html	2020-10-28 18:33:08 UTC (rev 269111)
@@ -1,3 +1,4 @@
+<!DOCTYPE html><!-- webkit-test-runner [ TabsToLinks=true SpatialNavigationEnabled=true ] -->
 <html>
   <!--
     This test ensures the correctness of Spatial Navigation (SNav) algorithm from a non-focus scenario.
@@ -21,8 +22,6 @@
 
     if (window.testRunner) {
       testRunner.dumpAsText();
-      testRunner.setSpatialNavigationEnabled(true);
-      testRunner.overridePreference("WebKitTabToLinksPreferenceKey", 1);
       testRunner.waitUntilDone();
     }
 

Modified: trunk/LayoutTests/fast/spatial-navigation/snav-clipped-overflowed-content.html (269110 => 269111)


--- trunk/LayoutTests/fast/spatial-navigation/snav-clipped-overflowed-content.html	2020-10-28 18:17:23 UTC (rev 269110)
+++ trunk/LayoutTests/fast/spatial-navigation/snav-clipped-overflowed-content.html	2020-10-28 18:33:08 UTC (rev 269111)
@@ -1,3 +1,4 @@
+<!DOCTYPE html><!-- webkit-test-runner [ TabsToLinks=true SpatialNavigationEnabled=true ] -->
 <html>
   <!--
     This test ensures the correctness of a basic aspect of spatial navigation traversal
@@ -48,8 +49,6 @@
 
     if (window.testRunner) {
       testRunner.dumpAsText();
-      testRunner.setSpatialNavigationEnabled(true);
-      testRunner.overridePreference("WebKitTabToLinksPreferenceKey", 1);
       testRunner.waitUntilDone();
     }
 

Modified: trunk/LayoutTests/fast/spatial-navigation/snav-container-only-white-space.html (269110 => 269111)


--- trunk/LayoutTests/fast/spatial-navigation/snav-container-only-white-space.html	2020-10-28 18:17:23 UTC (rev 269110)
+++ trunk/LayoutTests/fast/spatial-navigation/snav-container-only-white-space.html	2020-10-28 18:33:08 UTC (rev 269111)
@@ -1,3 +1,4 @@
+<!DOCTYPE html><!-- webkit-test-runner [ TabsToLinks=true SpatialNavigationEnabled=true ] -->
 <html>
   <!--
     This test ensures the correctness of a basic aspect of spatial navigation traversal
@@ -32,8 +33,6 @@
 
     if (window.testRunner) {
       testRunner.dumpAsText();
-      testRunner.setSpatialNavigationEnabled(true);
-      testRunner.overridePreference("WebKitTabToLinksPreferenceKey", 1);
       testRunner.waitUntilDone();
     }
 

Modified: trunk/LayoutTests/fast/spatial-navigation/snav-container-white-space.html (269110 => 269111)


--- trunk/LayoutTests/fast/spatial-navigation/snav-container-white-space.html	2020-10-28 18:17:23 UTC (rev 269110)
+++ trunk/LayoutTests/fast/spatial-navigation/snav-container-white-space.html	2020-10-28 18:33:08 UTC (rev 269111)
@@ -1,3 +1,4 @@
+<!DOCTYPE html><!-- webkit-test-runner [ TabsToLinks=true SpatialNavigationEnabled=true ] -->
 <html>
   <!--
     This test ensures the correctness of a basic aspect of spatial navigation traversal
@@ -40,8 +41,6 @@
 
     if (window.testRunner) {
       testRunner.dumpAsText();
-      testRunner.setSpatialNavigationEnabled(true);
-      testRunner.overridePreference("WebKitTabToLinksPreferenceKey", 1);
       testRunner.waitUntilDone();
     }
 

Modified: trunk/LayoutTests/fast/spatial-navigation/snav-display-contents-crash.html (269110 => 269111)


--- trunk/LayoutTests/fast/spatial-navigation/snav-display-contents-crash.html	2020-10-28 18:17:23 UTC (rev 269110)
+++ trunk/LayoutTests/fast/spatial-navigation/snav-display-contents-crash.html	2020-10-28 18:33:08 UTC (rev 269111)
@@ -1,10 +1,9 @@
+<!DOCTYPE html><!-- webkit-test-runner [ TabsToLinks=true SpatialNavigationEnabled=true ] -->
 <div style="display: contents"><a href=""
 Shouldn't crash.
 <script>
 if (window.testRunner) {
     testRunner.dumpAsText();
-    testRunner.overridePreference("WebKitTabToLinksPreferenceKey", 1);
-    testRunner.setSpatialNavigationEnabled(true);
 }
 function runTest() {
     if (window.eventSender) {

Modified: trunk/LayoutTests/fast/spatial-navigation/snav-div-overflow-scrol-hidden.html (269110 => 269111)


--- trunk/LayoutTests/fast/spatial-navigation/snav-div-overflow-scrol-hidden.html	2020-10-28 18:17:23 UTC (rev 269110)
+++ trunk/LayoutTests/fast/spatial-navigation/snav-div-overflow-scrol-hidden.html	2020-10-28 18:33:08 UTC (rev 269111)
@@ -1,4 +1,4 @@
-<html>
+<html><!-- webkit-test-runner [ TabsToLinks=true SpatialNavigationEnabled=true ] -->
 <head>
     <script src=""
     <script src=""
@@ -18,8 +18,6 @@
 
     if (window.testRunner) {
       testRunner.dumpAsText();
-      testRunner.setSpatialNavigationEnabled(true);
-      testRunner.overridePreference("WebKitTabToLinksPreferenceKey", 1);
       testRunner.waitUntilDone();
     }
 

Modified: trunk/LayoutTests/fast/spatial-navigation/snav-div-scrollable-but-without-focusable-content.html (269110 => 269111)


--- trunk/LayoutTests/fast/spatial-navigation/snav-div-scrollable-but-without-focusable-content.html	2020-10-28 18:17:23 UTC (rev 269110)
+++ trunk/LayoutTests/fast/spatial-navigation/snav-div-scrollable-but-without-focusable-content.html	2020-10-28 18:33:08 UTC (rev 269111)
@@ -1,3 +1,4 @@
+<!DOCTYPE html><!-- webkit-test-runner [ TabsToLinks=true SpatialNavigationEnabled=true ] -->
 <html>
   <!--
     This test ensures the correctness of a basic aspect of spatial navigation traversal
@@ -47,8 +48,6 @@
 
     if (window.testRunner) {
       testRunner.dumpAsText();
-      testRunner.setSpatialNavigationEnabled(true);
-      testRunner.overridePreference("WebKitTabToLinksPreferenceKey", 1);
       testRunner.waitUntilDone();
     }
 

Modified: trunk/LayoutTests/fast/spatial-navigation/snav-fully-aligned-horizontally.html (269110 => 269111)


--- trunk/LayoutTests/fast/spatial-navigation/snav-fully-aligned-horizontally.html	2020-10-28 18:17:23 UTC (rev 269110)
+++ trunk/LayoutTests/fast/spatial-navigation/snav-fully-aligned-horizontally.html	2020-10-28 18:33:08 UTC (rev 269111)
@@ -1,3 +1,4 @@
+<!DOCTYPE html><!-- webkit-test-runner [ TabsToLinks=true SpatialNavigationEnabled=true ] -->
 <html>
   <!--
     This test ensures the correctness of the "Fully aligned" precedence
@@ -53,8 +54,6 @@
 
     if (window.testRunner) {
       testRunner.dumpAsText();
-      testRunner.setSpatialNavigationEnabled(true);
-      testRunner.overridePreference("WebKitTabToLinksPreferenceKey", 1);
       testRunner.waitUntilDone();
     }
 

Modified: trunk/LayoutTests/fast/spatial-navigation/snav-fully-aligned-vertically.html (269110 => 269111)


--- trunk/LayoutTests/fast/spatial-navigation/snav-fully-aligned-vertically.html	2020-10-28 18:17:23 UTC (rev 269110)
+++ trunk/LayoutTests/fast/spatial-navigation/snav-fully-aligned-vertically.html	2020-10-28 18:33:08 UTC (rev 269111)
@@ -1,3 +1,4 @@
+<!DOCTYPE html><!-- webkit-test-runner [ TabsToLinks=true SpatialNavigationEnabled=true ] -->
 <html>
   <!--
     This test ensures the correctness of the "Fully aligned" precedence
@@ -31,8 +32,6 @@
 
     if (window.testRunner) {
       testRunner.dumpAsText();
-      testRunner.setSpatialNavigationEnabled(true);
-      testRunner.overridePreference("WebKitTabToLinksPreferenceKey", 1);
       testRunner.waitUntilDone();
     }
 

Modified: trunk/LayoutTests/fast/spatial-navigation/snav-hidden-focusable-element.html (269110 => 269111)


--- trunk/LayoutTests/fast/spatial-navigation/snav-hidden-focusable-element.html	2020-10-28 18:17:23 UTC (rev 269110)
+++ trunk/LayoutTests/fast/spatial-navigation/snav-hidden-focusable-element.html	2020-10-28 18:33:08 UTC (rev 269111)
@@ -1,3 +1,4 @@
+<!DOCTYPE html><!-- webkit-test-runner [ TabsToLinks=true SpatialNavigationEnabled=true ] -->
 <html>
   <head>
     <script src=""
@@ -11,8 +12,6 @@
 
     if (window.testRunner) {
       testRunner.dumpAsText();
-      testRunner.setSpatialNavigationEnabled(true);
-      testRunner.overridePreference("WebKitTabToLinksPreferenceKey", 1);
       testRunner.waitUntilDone();
     }
 

Modified: trunk/LayoutTests/fast/spatial-navigation/snav-hidden-iframe-zero-size.html (269110 => 269111)


--- trunk/LayoutTests/fast/spatial-navigation/snav-hidden-iframe-zero-size.html	2020-10-28 18:17:23 UTC (rev 269110)
+++ trunk/LayoutTests/fast/spatial-navigation/snav-hidden-iframe-zero-size.html	2020-10-28 18:33:08 UTC (rev 269111)
@@ -1,3 +1,4 @@
+<!DOCTYPE html><!-- webkit-test-runner [ TabsToLinks=true SpatialNavigationEnabled=true ] -->
 <html>
   <head>
     <script src=""
@@ -11,8 +12,6 @@
 
     if (window.testRunner) {
       testRunner.dumpAsText();
-      testRunner.setSpatialNavigationEnabled(true);
-      testRunner.overridePreference("WebKitTabToLinksPreferenceKey", 1);
       testRunner.waitUntilDone();
     }
 

Modified: trunk/LayoutTests/fast/spatial-navigation/snav-hidden-iframe.html (269110 => 269111)


--- trunk/LayoutTests/fast/spatial-navigation/snav-hidden-iframe.html	2020-10-28 18:17:23 UTC (rev 269110)
+++ trunk/LayoutTests/fast/spatial-navigation/snav-hidden-iframe.html	2020-10-28 18:33:08 UTC (rev 269111)
@@ -1,3 +1,4 @@
+<!DOCTYPE html><!-- webkit-test-runner [ TabsToLinks=true SpatialNavigationEnabled=true ] -->
 <html>
   <head>
     <script src=""
@@ -11,8 +12,6 @@
 
     if (window.testRunner) {
       testRunner.dumpAsText();
-      testRunner.setSpatialNavigationEnabled(true);
-      testRunner.overridePreference("WebKitTabToLinksPreferenceKey", 1);
       testRunner.waitUntilDone();
     }
 

Modified: trunk/LayoutTests/fast/spatial-navigation/snav-iframe-flattening-simple.html (269110 => 269111)


--- trunk/LayoutTests/fast/spatial-navigation/snav-iframe-flattening-simple.html	2020-10-28 18:17:23 UTC (rev 269110)
+++ trunk/LayoutTests/fast/spatial-navigation/snav-iframe-flattening-simple.html	2020-10-28 18:33:08 UTC (rev 269111)
@@ -1,3 +1,4 @@
+<!DOCTYPE html><!-- webkit-test-runner [ TabsToLinks=true SpatialNavigationEnabled=true ] -->
 <html>
   <!--
     This test ensures the cross iframe traversal correctness of Spatial Navigation
@@ -30,8 +31,6 @@
 
     if (window.testRunner) {
       testRunner.dumpAsText();
-      testRunner.setSpatialNavigationEnabled(true);
-      testRunner.overridePreference("WebKitTabToLinksPreferenceKey", 1);
       testRunner.waitUntilDone();
     }
 

Modified: trunk/LayoutTests/fast/spatial-navigation/snav-iframe-nested.html (269110 => 269111)


--- trunk/LayoutTests/fast/spatial-navigation/snav-iframe-nested.html	2020-10-28 18:17:23 UTC (rev 269110)
+++ trunk/LayoutTests/fast/spatial-navigation/snav-iframe-nested.html	2020-10-28 18:33:08 UTC (rev 269111)
@@ -1,3 +1,4 @@
+<!DOCTYPE html><!-- webkit-test-runner [ TabsToLinks=true SpatialNavigationEnabled=true ] -->
 <html>
   <!--
     This test ensures the cross iframe traversal correctness of spatial navigation:
@@ -40,8 +41,6 @@
 
     if (window.testRunner) {
       testRunner.dumpAsText();
-      testRunner.setSpatialNavigationEnabled(true);
-      testRunner.overridePreference("WebKitTabToLinksPreferenceKey", 1);
       testRunner.waitUntilDone();
     }
 

Modified: trunk/LayoutTests/fast/spatial-navigation/snav-iframe-no-focusable-content.html (269110 => 269111)


--- trunk/LayoutTests/fast/spatial-navigation/snav-iframe-no-focusable-content.html	2020-10-28 18:17:23 UTC (rev 269110)
+++ trunk/LayoutTests/fast/spatial-navigation/snav-iframe-no-focusable-content.html	2020-10-28 18:33:08 UTC (rev 269111)
@@ -1,3 +1,4 @@
+<!DOCTYPE html><!-- webkit-test-runner [ TabsToLinks=true SpatialNavigationEnabled=true ] -->
 <html>
   <!--
     This test ensures the basic traversal correctness of Spatial Navigation
@@ -36,8 +37,6 @@
 
     if (window.testRunner) {
       testRunner.dumpAsText();
-      testRunner.setSpatialNavigationEnabled(true);
-      testRunner.overridePreference("WebKitTabToLinksPreferenceKey", 1);
       testRunner.waitUntilDone();
     }
 

Modified: trunk/LayoutTests/fast/spatial-navigation/snav-iframe-no-scrollable-content.html (269110 => 269111)


--- trunk/LayoutTests/fast/spatial-navigation/snav-iframe-no-scrollable-content.html	2020-10-28 18:17:23 UTC (rev 269110)
+++ trunk/LayoutTests/fast/spatial-navigation/snav-iframe-no-scrollable-content.html	2020-10-28 18:33:08 UTC (rev 269111)
@@ -1,3 +1,4 @@
+<!DOCTYPE html><!-- webkit-test-runner [ TabsToLinks=true SpatialNavigationEnabled=true ] -->
 <html>
   <!--
     This test ensures the basic iframe traversal correctness of Spatial Navigation
@@ -37,8 +38,6 @@
 
     if (window.testRunner) {
       testRunner.dumpAsText();
-      testRunner.setSpatialNavigationEnabled(true);
-      testRunner.overridePreference("WebKitTabToLinksPreferenceKey", 1);
       testRunner.waitUntilDone();
     }
 

Modified: trunk/LayoutTests/fast/spatial-navigation/snav-iframe-recursive-offset-parent.html (269110 => 269111)


--- trunk/LayoutTests/fast/spatial-navigation/snav-iframe-recursive-offset-parent.html	2020-10-28 18:17:23 UTC (rev 269110)
+++ trunk/LayoutTests/fast/spatial-navigation/snav-iframe-recursive-offset-parent.html	2020-10-28 18:33:08 UTC (rev 269111)
@@ -1,3 +1,4 @@
+<!DOCTYPE html><!-- webkit-test-runner [ TabsToLinks=true SpatialNavigationEnabled=true ] -->
 <html>
   <!--
     This test ensures the cross iframe traversal correctness of Spatial Navigation
@@ -30,8 +31,6 @@
 
     if (window.testRunner) {
       testRunner.dumpAsText();
-      testRunner.setSpatialNavigationEnabled(true);
-      testRunner.overridePreference("WebKitTabToLinksPreferenceKey", 1);
       testRunner.waitUntilDone();
     }
 

Modified: trunk/LayoutTests/fast/spatial-navigation/snav-iframe-with-offscreen-focusable-element.html (269110 => 269111)


--- trunk/LayoutTests/fast/spatial-navigation/snav-iframe-with-offscreen-focusable-element.html	2020-10-28 18:17:23 UTC (rev 269110)
+++ trunk/LayoutTests/fast/spatial-navigation/snav-iframe-with-offscreen-focusable-element.html	2020-10-28 18:33:08 UTC (rev 269111)
@@ -1,3 +1,4 @@
+<!DOCTYPE html><!-- webkit-test-runner [ TabsToLinks=true SpatialNavigationEnabled=true ] -->
 <html>
   <!--
     This test ensures the cross iframe traversal correctness of Spatial Navigation
@@ -42,8 +43,6 @@
 
     if (window.testRunner) {
       testRunner.dumpAsText();
-      testRunner.setSpatialNavigationEnabled(true);
-      testRunner.overridePreference("WebKitTabToLinksPreferenceKey", 1);
       testRunner.waitUntilDone();
     }
 

Modified: trunk/LayoutTests/fast/spatial-navigation/snav-imagemap-area-not-focusable.html (269110 => 269111)


--- trunk/LayoutTests/fast/spatial-navigation/snav-imagemap-area-not-focusable.html	2020-10-28 18:17:23 UTC (rev 269110)
+++ trunk/LayoutTests/fast/spatial-navigation/snav-imagemap-area-not-focusable.html	2020-10-28 18:33:08 UTC (rev 269111)
@@ -1,3 +1,4 @@
+<!DOCTYPE html><!-- webkit-test-runner [ TabsToLinks=true SpatialNavigationEnabled=true ] -->
 <html>
   <head>
 
@@ -15,8 +16,6 @@
 
     if (window.testRunner) {
       testRunner.dumpAsText();
-      testRunner.setSpatialNavigationEnabled(true);
-      testRunner.overridePreference("WebKitTabToLinksPreferenceKey", 1);
       testRunner.waitUntilDone();
     }
 

Modified: trunk/LayoutTests/fast/spatial-navigation/snav-imagemap-area-without-image.html (269110 => 269111)


--- trunk/LayoutTests/fast/spatial-navigation/snav-imagemap-area-without-image.html	2020-10-28 18:17:23 UTC (rev 269110)
+++ trunk/LayoutTests/fast/spatial-navigation/snav-imagemap-area-without-image.html	2020-10-28 18:33:08 UTC (rev 269111)
@@ -1,3 +1,4 @@
+<!DOCTYPE html><!-- webkit-test-runner [ TabsToLinks=true SpatialNavigationEnabled=true ] -->
 <html>
   <head>
 
@@ -13,8 +14,6 @@
 
     if (window.testRunner) {
       testRunner.dumpAsText();
-      testRunner.setSpatialNavigationEnabled(true);
-      testRunner.overridePreference("WebKitTabToLinksPreferenceKey", 1);
       testRunner.waitUntilDone();
     }
 

Modified: trunk/LayoutTests/fast/spatial-navigation/snav-imagemap-overlapped-areas.html (269110 => 269111)


--- trunk/LayoutTests/fast/spatial-navigation/snav-imagemap-overlapped-areas.html	2020-10-28 18:17:23 UTC (rev 269110)
+++ trunk/LayoutTests/fast/spatial-navigation/snav-imagemap-overlapped-areas.html	2020-10-28 18:33:08 UTC (rev 269111)
@@ -1,3 +1,4 @@
+<!DOCTYPE html><!-- webkit-test-runner [ TabsToLinks=true SpatialNavigationEnabled=true ] -->
 <html>
   <head>
 
@@ -23,8 +24,6 @@
 
     if (window.testRunner) {
       testRunner.dumpAsText();
-      testRunner.setSpatialNavigationEnabled(true);
-      testRunner.overridePreference("WebKitTabToLinksPreferenceKey", 1);
       testRunner.waitUntilDone();
     }
 

Modified: trunk/LayoutTests/fast/spatial-navigation/snav-imagemap-simple.html (269110 => 269111)


--- trunk/LayoutTests/fast/spatial-navigation/snav-imagemap-simple.html	2020-10-28 18:17:23 UTC (rev 269110)
+++ trunk/LayoutTests/fast/spatial-navigation/snav-imagemap-simple.html	2020-10-28 18:33:08 UTC (rev 269111)
@@ -1,3 +1,4 @@
+<!DOCTYPE html><!-- webkit-test-runner [ TabsToLinks=true SpatialNavigationEnabled=true ] -->
 <html>
   <head>
 
@@ -21,8 +22,6 @@
 
     if (window.testRunner) {
       testRunner.dumpAsText();
-      testRunner.setSpatialNavigationEnabled(true);
-      testRunner.overridePreference("WebKitTabToLinksPreferenceKey", 1);
       testRunner.waitUntilDone();
     }
 

Modified: trunk/LayoutTests/fast/spatial-navigation/snav-input.html (269110 => 269111)


--- trunk/LayoutTests/fast/spatial-navigation/snav-input.html	2020-10-28 18:17:23 UTC (rev 269110)
+++ trunk/LayoutTests/fast/spatial-navigation/snav-input.html	2020-10-28 18:33:08 UTC (rev 269111)
@@ -1,3 +1,4 @@
+<!DOCTYPE html><!-- webkit-test-runner [ TabsToLinks=true SpatialNavigationEnabled=true ] -->
 <!DOCTYPE html>
   <head>
     <script src=""
@@ -52,8 +53,6 @@
 
     if (window.testRunner) {
       testRunner.dumpAsText();
-      testRunner.setSpatialNavigationEnabled(true);
-      testRunner.overridePreference("WebKitTabToLinksPreferenceKey", 1);
       testRunner.waitUntilDone();
     }
 

Modified: trunk/LayoutTests/fast/spatial-navigation/snav-media-elements.html (269110 => 269111)


--- trunk/LayoutTests/fast/spatial-navigation/snav-media-elements.html	2020-10-28 18:17:23 UTC (rev 269110)
+++ trunk/LayoutTests/fast/spatial-navigation/snav-media-elements.html	2020-10-28 18:33:08 UTC (rev 269111)
@@ -1,4 +1,4 @@
-<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
+<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN"><!-- webkit-test-runner [ TabsToLinks=true SpatialNavigationEnabled=true ] -->
 <html>
   <head>
     <script src=""
@@ -23,8 +23,6 @@
 
     if (window.testRunner) {
       testRunner.dumpAsText();
-      testRunner.setSpatialNavigationEnabled(true);
-      testRunner.overridePreference("WebKitTabToLinksPreferenceKey", 1);
     }
 
     function runTest()

Modified: trunk/LayoutTests/fast/spatial-navigation/snav-multiple-select-focusring.html (269110 => 269111)


--- trunk/LayoutTests/fast/spatial-navigation/snav-multiple-select-focusring.html	2020-10-28 18:17:23 UTC (rev 269110)
+++ trunk/LayoutTests/fast/spatial-navigation/snav-multiple-select-focusring.html	2020-10-28 18:33:08 UTC (rev 269111)
@@ -1,4 +1,4 @@
-<!DOCTYPE html>
+<!DOCTYPE html><!-- webkit-test-runner [ TabsToLinks=true SpatialNavigationEnabled=true ] -->
 <body>
 
 <select id="multiselect" multiple="multiple">
@@ -7,11 +7,6 @@
 </select>
 
 <script>
-if (window.testRunner) {
-    testRunner.setSpatialNavigationEnabled(true);
-    testRunner.overridePreference("WebKitTabToLinksPreferenceKey", 1);
-}
-
 var multiselect = document.getElementById('multiselect');
 
 if (window.eventSender) {

Modified: trunk/LayoutTests/fast/spatial-navigation/snav-multiple-select-optgroup.html (269110 => 269111)


--- trunk/LayoutTests/fast/spatial-navigation/snav-multiple-select-optgroup.html	2020-10-28 18:17:23 UTC (rev 269110)
+++ trunk/LayoutTests/fast/spatial-navigation/snav-multiple-select-optgroup.html	2020-10-28 18:33:08 UTC (rev 269111)
@@ -1,3 +1,4 @@
+<!DOCTYPE html><!-- webkit-test-runner [ TabsToLinks=true SpatialNavigationEnabled=true ] -->
 <html>
   <!--
     This test ensures the correctness of Spatial Navigation (SNav) algorithm over multiple select element.
@@ -33,8 +34,6 @@
 
     if (window.testRunner) {
       testRunner.dumpAsText();
-      testRunner.setSpatialNavigationEnabled(true);
-      testRunner.overridePreference("WebKitTabToLinksPreferenceKey", 1);
       testRunner.waitUntilDone();
     }
 

Modified: trunk/LayoutTests/fast/spatial-navigation/snav-multiple-select.html (269110 => 269111)


--- trunk/LayoutTests/fast/spatial-navigation/snav-multiple-select.html	2020-10-28 18:17:23 UTC (rev 269110)
+++ trunk/LayoutTests/fast/spatial-navigation/snav-multiple-select.html	2020-10-28 18:33:08 UTC (rev 269111)
@@ -1,3 +1,4 @@
+<!DOCTYPE html><!-- webkit-test-runner [ TabsToLinks=true SpatialNavigationEnabled=true ] -->
 <html>
   <!--
     This test ensures the correctness of Spatial Navigation (SNav) algorithm over multiple select element.
@@ -33,8 +34,6 @@
 
     if (window.testRunner) {
       testRunner.dumpAsText();
-      testRunner.setSpatialNavigationEnabled(true);
-      testRunner.overridePreference("WebKitTabToLinksPreferenceKey", 1);
       testRunner.waitUntilDone();
     }
 

Modified: trunk/LayoutTests/fast/spatial-navigation/snav-offscreen-content.html (269110 => 269111)


--- trunk/LayoutTests/fast/spatial-navigation/snav-offscreen-content.html	2020-10-28 18:17:23 UTC (rev 269110)
+++ trunk/LayoutTests/fast/spatial-navigation/snav-offscreen-content.html	2020-10-28 18:33:08 UTC (rev 269111)
@@ -1,3 +1,4 @@
+<!DOCTYPE html><!-- webkit-test-runner [ TabsToLinks=true SpatialNavigationEnabled=true ] -->
 <html>
   <!--
     This test ensures the content overflow traversal correctness of Spatial Navigation
@@ -35,8 +36,6 @@
 
     if (window.testRunner) {
       testRunner.dumpAsText();
-      testRunner.setSpatialNavigationEnabled(true);
-      testRunner.overridePreference("WebKitTabToLinksPreferenceKey", 1);
       testRunner.waitUntilDone();
     }
 

Modified: trunk/LayoutTests/fast/spatial-navigation/snav-only-clipped-overflow-content.html (269110 => 269111)


--- trunk/LayoutTests/fast/spatial-navigation/snav-only-clipped-overflow-content.html	2020-10-28 18:17:23 UTC (rev 269110)
+++ trunk/LayoutTests/fast/spatial-navigation/snav-only-clipped-overflow-content.html	2020-10-28 18:33:08 UTC (rev 269111)
@@ -1,3 +1,4 @@
+<!DOCTYPE html><!-- webkit-test-runner [ TabsToLinks=true SpatialNavigationEnabled=true ] -->
 <html>
   <!--
     This test ensures the content overflow traversal correctness of spatial navigation:
@@ -38,8 +39,6 @@
 
     if (window.testRunner) {
       testRunner.dumpAsText();
-      testRunner.setSpatialNavigationEnabled(true);
-      testRunner.overridePreference("WebKitTabToLinksPreferenceKey", 1);
       testRunner.waitUntilDone();
     }
 

Modified: trunk/LayoutTests/fast/spatial-navigation/snav-radio-group.html (269110 => 269111)


--- trunk/LayoutTests/fast/spatial-navigation/snav-radio-group.html	2020-10-28 18:17:23 UTC (rev 269110)
+++ trunk/LayoutTests/fast/spatial-navigation/snav-radio-group.html	2020-10-28 18:33:08 UTC (rev 269111)
@@ -1,3 +1,4 @@
+<!DOCTYPE html><!-- webkit-test-runner [ TabsToLinks=true SpatialNavigationEnabled=true ] -->
 <html>
   <!--
     This test ensures the correctness of Spatial Navigation (SNav) algorithm over single select element.
@@ -36,8 +37,6 @@
 
     if (window.testRunner) {
       testRunner.dumpAsText();
-      testRunner.setSpatialNavigationEnabled(true);
-      testRunner.overridePreference("WebKitTabToLinksPreferenceKey", 1);
       testRunner.waitUntilDone();
     }
 

Modified: trunk/LayoutTests/fast/spatial-navigation/snav-radio.html (269110 => 269111)


--- trunk/LayoutTests/fast/spatial-navigation/snav-radio.html	2020-10-28 18:17:23 UTC (rev 269110)
+++ trunk/LayoutTests/fast/spatial-navigation/snav-radio.html	2020-10-28 18:33:08 UTC (rev 269111)
@@ -1,3 +1,4 @@
+<!DOCTYPE html><!-- webkit-test-runner [ TabsToLinks=true SpatialNavigationEnabled=true ] -->
 <html>
   <!--
     This test ensures the correctness of Spatial Navigation (SNav) algorithm over single select element.
@@ -28,8 +29,6 @@
 
     if (window.testRunner) {
       testRunner.dumpAsText();
-      testRunner.setSpatialNavigationEnabled(true);
-      testRunner.overridePreference("WebKitTabToLinksPreferenceKey", 1);
       testRunner.waitUntilDone();
     }
 

Modified: trunk/LayoutTests/fast/spatial-navigation/snav-search-optimization.html (269110 => 269111)


--- trunk/LayoutTests/fast/spatial-navigation/snav-search-optimization.html	2020-10-28 18:17:23 UTC (rev 269110)
+++ trunk/LayoutTests/fast/spatial-navigation/snav-search-optimization.html	2020-10-28 18:33:08 UTC (rev 269111)
@@ -1,3 +1,4 @@
+<!DOCTYPE html><!-- webkit-test-runner [ TabsToLinks=true SpatialNavigationEnabled=true ] -->
 <html>
   <!--
     This test ensures the optimization done in searching logic to find best candidate focusable node with minimum iterations.
@@ -21,8 +22,6 @@
 
     if (window.testRunner) {
         testRunner.dumpAsText();
-        testRunner.setSpatialNavigationEnabled(true);
-        testRunner.overridePreference("WebKitTabToLinksPreferenceKey", 1);
         testRunner.waitUntilDone();
     }
 

Modified: trunk/LayoutTests/fast/spatial-navigation/snav-simple-content-overflow.html (269110 => 269111)


--- trunk/LayoutTests/fast/spatial-navigation/snav-simple-content-overflow.html	2020-10-28 18:17:23 UTC (rev 269110)
+++ trunk/LayoutTests/fast/spatial-navigation/snav-simple-content-overflow.html	2020-10-28 18:33:08 UTC (rev 269111)
@@ -1,3 +1,4 @@
+<!DOCTYPE html><!-- webkit-test-runner [ TabsToLinks=true SpatialNavigationEnabled=true ] -->
 <html>
   <!--
     This test ensures that overflowed content can be focused by Spatial Navigation.
@@ -36,8 +37,6 @@
 
     if (window.testRunner) {
       testRunner.dumpAsText();
-      testRunner.setSpatialNavigationEnabled(true);
-      testRunner.overridePreference("WebKitTabToLinksPreferenceKey", 1);
       testRunner.waitUntilDone();
     }
 

Modified: trunk/LayoutTests/fast/spatial-navigation/snav-single-select-list.html (269110 => 269111)


--- trunk/LayoutTests/fast/spatial-navigation/snav-single-select-list.html	2020-10-28 18:17:23 UTC (rev 269110)
+++ trunk/LayoutTests/fast/spatial-navigation/snav-single-select-list.html	2020-10-28 18:33:08 UTC (rev 269111)
@@ -1,3 +1,4 @@
+<!DOCTYPE html><!-- webkit-test-runner [ TabsToLinks=true SpatialNavigationEnabled=true ] -->
 <html>
   <!--
     This test ensures the correctness of Spatial Navigation (SNav) algorithm over single select list element.
@@ -33,8 +34,6 @@
 
     if (window.testRunner) {
       testRunner.dumpAsText();
-      testRunner.setSpatialNavigationEnabled(true);
-      testRunner.overridePreference("WebKitTabToLinksPreferenceKey", 1);
       testRunner.waitUntilDone();
     }
 

Modified: trunk/LayoutTests/fast/spatial-navigation/snav-single-select.html (269110 => 269111)


--- trunk/LayoutTests/fast/spatial-navigation/snav-single-select.html	2020-10-28 18:17:23 UTC (rev 269110)
+++ trunk/LayoutTests/fast/spatial-navigation/snav-single-select.html	2020-10-28 18:33:08 UTC (rev 269111)
@@ -1,3 +1,4 @@
+<!DOCTYPE html><!-- webkit-test-runner [ TabsToLinks=true SpatialNavigationEnabled=true ] -->
 <html>
   <!--
     This test ensures the correctness of Spatial Navigation (SNav) algorithm over single select element.
@@ -33,8 +34,6 @@
 
     if (window.testRunner) {
       testRunner.dumpAsText();
-      testRunner.setSpatialNavigationEnabled(true);
-      testRunner.overridePreference("WebKitTabToLinksPreferenceKey", 1);
       testRunner.waitUntilDone();
     }
 

Modified: trunk/LayoutTests/fast/spatial-navigation/snav-table-traversal.html (269110 => 269111)


--- trunk/LayoutTests/fast/spatial-navigation/snav-table-traversal.html	2020-10-28 18:17:23 UTC (rev 269110)
+++ trunk/LayoutTests/fast/spatial-navigation/snav-table-traversal.html	2020-10-28 18:33:08 UTC (rev 269111)
@@ -1,3 +1,4 @@
+<!DOCTYPE html><!-- webkit-test-runner [ TabsToLinks=true SpatialNavigationEnabled=true ] -->
 <html>
   <!--
     This test ensures the basic table traversal correctness of
@@ -34,8 +35,6 @@
 
     if (window.testRunner) {
       testRunner.dumpAsText();
-      testRunner.setSpatialNavigationEnabled(true);
-      testRunner.overridePreference("WebKitTabToLinksPreferenceKey", 1);
       testRunner.waitUntilDone();
     }
 

Modified: trunk/LayoutTests/fast/spatial-navigation/snav-textarea.html (269110 => 269111)


--- trunk/LayoutTests/fast/spatial-navigation/snav-textarea.html	2020-10-28 18:17:23 UTC (rev 269110)
+++ trunk/LayoutTests/fast/spatial-navigation/snav-textarea.html	2020-10-28 18:33:08 UTC (rev 269111)
@@ -1,3 +1,4 @@
+<!DOCTYPE html><!-- webkit-test-runner [ TabsToLinks=true SpatialNavigationEnabled=true ] -->
 <!DOCTYPE html>
   <head>
     <script src=""
@@ -55,8 +56,6 @@
 
     if (window.testRunner) {
       testRunner.dumpAsText();
-      testRunner.setSpatialNavigationEnabled(true);
-      testRunner.overridePreference("WebKitTabToLinksPreferenceKey", 1);
       testRunner.waitUntilDone();
     }
 

Modified: trunk/LayoutTests/fast/spatial-navigation/snav-tiny-table-traversal.html (269110 => 269111)


--- trunk/LayoutTests/fast/spatial-navigation/snav-tiny-table-traversal.html	2020-10-28 18:17:23 UTC (rev 269110)
+++ trunk/LayoutTests/fast/spatial-navigation/snav-tiny-table-traversal.html	2020-10-28 18:33:08 UTC (rev 269111)
@@ -1,3 +1,4 @@
+<!DOCTYPE html><!-- webkit-test-runner [ TabsToLinks=true SpatialNavigationEnabled=true ] -->
 <html>
   <!--
     This test ensures the basic table traversal correctness of
@@ -37,8 +38,6 @@
 
     if (window.testRunner) {
       testRunner.dumpAsText();
-      testRunner.setSpatialNavigationEnabled(true);
-      testRunner.overridePreference("WebKitTabToLinksPreferenceKey", 1);
       testRunner.waitUntilDone();
     }
 

Modified: trunk/LayoutTests/fast/spatial-navigation/snav-two-elements-one-line.html (269110 => 269111)


--- trunk/LayoutTests/fast/spatial-navigation/snav-two-elements-one-line.html	2020-10-28 18:17:23 UTC (rev 269110)
+++ trunk/LayoutTests/fast/spatial-navigation/snav-two-elements-one-line.html	2020-10-28 18:33:08 UTC (rev 269111)
@@ -1,3 +1,4 @@
+<!DOCTYPE html><!-- webkit-test-runner [ TabsToLinks=true SpatialNavigationEnabled=true ] -->
 <html>
   <head>
     <script src=""
@@ -16,8 +17,6 @@
 
     if (window.testRunner) {
       testRunner.dumpAsText();
-      testRunner.setSpatialNavigationEnabled(true);
-      testRunner.overridePreference("WebKitTabToLinksPreferenceKey", 1);
       testRunner.waitUntilDone();
     }
 

Modified: trunk/LayoutTests/fast/spatial-navigation/snav-unit-overflow-and-scroll-in-direction.html (269110 => 269111)


--- trunk/LayoutTests/fast/spatial-navigation/snav-unit-overflow-and-scroll-in-direction.html	2020-10-28 18:17:23 UTC (rev 269110)
+++ trunk/LayoutTests/fast/spatial-navigation/snav-unit-overflow-and-scroll-in-direction.html	2020-10-28 18:33:08 UTC (rev 269111)
@@ -1,3 +1,4 @@
+<!DOCTYPE html><!-- webkit-test-runner [ TabsToLinks=true SpatialNavigationEnabled=true ] -->
 <html>
   <!--
     This test ensures the correctness the following Spatial Navigation
@@ -42,8 +43,6 @@
 
     if (window.testRunner) {
       testRunner.dumpAsText();
-      testRunner.setSpatialNavigationEnabled(true);
-      testRunner.overridePreference("WebKitTabToLinksPreferenceKey", 1);
       testRunner.waitUntilDone();
     }
 

Modified: trunk/LayoutTests/fast/spatial-navigation/snav-z-index.html (269110 => 269111)


--- trunk/LayoutTests/fast/spatial-navigation/snav-z-index.html	2020-10-28 18:17:23 UTC (rev 269110)
+++ trunk/LayoutTests/fast/spatial-navigation/snav-z-index.html	2020-10-28 18:33:08 UTC (rev 269111)
@@ -1,4 +1,4 @@
-<html>
+<html><!-- webkit-test-runner [ TabsToLinks=true SpatialNavigationEnabled=true ] -->
   <head>
     <script src=""
     <script src=""
@@ -19,8 +19,6 @@
 
     if (window.testRunner) {
       testRunner.dumpAsText();
-      testRunner.setSpatialNavigationEnabled(true);
-      testRunner.overridePreference("WebKitTabToLinksPreferenceKey", 1);
       testRunner.waitUntilDone();
     }
 

Modified: trunk/LayoutTests/fast/spatial-navigation/snav-zero-margin-content.html (269110 => 269111)


--- trunk/LayoutTests/fast/spatial-navigation/snav-zero-margin-content.html	2020-10-28 18:17:23 UTC (rev 269110)
+++ trunk/LayoutTests/fast/spatial-navigation/snav-zero-margin-content.html	2020-10-28 18:33:08 UTC (rev 269111)
@@ -1,3 +1,4 @@
+<!DOCTYPE html><!-- webkit-test-runner [ TabsToLinks=true SpatialNavigationEnabled=true ] -->
 <html>
   <!--
     This test ensures the traversal correctness of spatial navigation:
@@ -32,8 +33,6 @@
 
     if (window.testRunner) {
       testRunner.dumpAsText();
-      testRunner.setSpatialNavigationEnabled(true);
-      testRunner.overridePreference("WebKitTabToLinksPreferenceKey", 1);
       testRunner.waitUntilDone();
     }
 

Modified: trunk/LayoutTests/media/media-controls-accessibility.html (269110 => 269111)


--- trunk/LayoutTests/media/media-controls-accessibility.html	2020-10-28 18:17:23 UTC (rev 269110)
+++ trunk/LayoutTests/media/media-controls-accessibility.html	2020-10-28 18:33:08 UTC (rev 269111)
@@ -1,4 +1,4 @@
-<!DOCTYPE html><!-- webkit-test-runner [ ModernMediaControlsEnabled=false ] -->
+<!DOCTYPE html><!-- webkit-test-runner [ ModernMediaControlsEnabled=false TabsToLinks=true ] -->
 <html>
 <video id="video" controls></video>
 <p id="description"></p>
@@ -15,7 +15,6 @@
 description("This tests that media controls have correct accessibility information.");
 
 if (window.accessibilityController) {
-    testRunner.overridePreference("WebKitTabToLinksPreferenceKey", 1); 
     video.src = "" "content/test");
     
     var videoElement;

Modified: trunk/LayoutTests/media/tab-focus-inside-media-elements.html (269110 => 269111)


--- trunk/LayoutTests/media/tab-focus-inside-media-elements.html	2020-10-28 18:17:23 UTC (rev 269110)
+++ trunk/LayoutTests/media/tab-focus-inside-media-elements.html	2020-10-28 18:33:08 UTC (rev 269111)
@@ -1,4 +1,4 @@
-<!DOCTYPE html!><!-- webkit-test-runner [ ModernMediaControlsEnabled=false ] -->
+<!DOCTYPE html!><!-- webkit-test-runner [ ModernMediaControlsEnabled=false TabsToLinks=true ] -->
 <html>
 <body>
 <audio controls></audio><video controls></video><br>
@@ -19,8 +19,6 @@
 
 function runTests()
 {
-    testRunner.overridePreference("WebKitTabToLinksPreferenceKey", 1);
-
     shouldBe('document.body.focus(); eventSender.keyDown("\\t"); document.activeElement', 'mediaElements[0]');
     shouldBeTrue('mediaElements[0] instanceof HTMLAudioElement');
     shouldBeTrue('mediaElements[0].controls');

Modified: trunk/Source/WTF/ChangeLog (269110 => 269111)


--- trunk/Source/WTF/ChangeLog	2020-10-28 18:17:23 UTC (rev 269110)
+++ trunk/Source/WTF/ChangeLog	2020-10-28 18:33:08 UTC (rev 269111)
@@ -1,3 +1,14 @@
+2020-10-28  Sam Weinig  <wei...@apple.com>
+
+        Reduce Preference Override Methods: TabsToLinks/SpatialNavigation
+        https://bugs.webkit.org/show_bug.cgi?id=218288
+
+        Reviewed by Tim Horton.
+
+        * Scripts/Preferences/WebPreferences.yaml:
+        Unify TabToLinksEnabled and TabsToLinks. TabToLinksEnabled was added for https://bugs.webkit.org/show_bug.cgi?id=95329
+        and has never actually been needed.
+
 2020-10-27  Tim Horton  <timothy_hor...@apple.com>
 
         Adopt the UIPointerInteraction API

Modified: trunk/Source/WTF/Scripts/Preferences/WebPreferences.yaml (269110 => 269111)


--- trunk/Source/WTF/Scripts/Preferences/WebPreferences.yaml	2020-10-28 18:17:23 UTC (rev 269110)
+++ trunk/Source/WTF/Scripts/Preferences/WebPreferences.yaml	2020-10-28 18:33:08 UTC (rev 269111)
@@ -2062,16 +2062,6 @@
     WebCore:
       default: false
 
-# FIXME: This should be reconciled with 'TabsToLinks'.
-TabToLinksEnabled:
-  type: bool
-  webcoreBinding: none
-  exposed: [ WebKit ]
-  defaultValue:
-    WebKit:
-      default: false
-
-# FIXME: This should be reconciled with 'TabToLinksEnabled'.
 TabsToLinks:
   type: bool
   webKitLegacyPreferenceKey: WebKitTabToLinksPreferenceKey

Modified: trunk/Source/WebKit/ChangeLog (269110 => 269111)


--- trunk/Source/WebKit/ChangeLog	2020-10-28 18:17:23 UTC (rev 269110)
+++ trunk/Source/WebKit/ChangeLog	2020-10-28 18:33:08 UTC (rev 269111)
@@ -1,3 +1,33 @@
+2020-10-28  Sam Weinig  <wei...@apple.com>
+
+        Reduce Preference Override Methods: TabsToLinks/SpatialNavigation
+        https://bugs.webkit.org/show_bug.cgi?id=218288
+
+        Reviewed by Tim Horton.
+
+        Removes WKPreferencesGet/SetTabToLinksEnabled preference as it duplicates functionality of 
+        WKPreferencesGet/SetTabsToLinks. The former was added for https://bugs.webkit.org/show_bug.cgi?id=95329
+        but was redundant even at the time. We can now use test header commands for all of its
+        use cases.
+        
+        Also removes testing only bundle SPI for enabling spatial navigation which also can be
+        set via test headers instead.
+
+        * UIProcess/API/C/WKPreferences.cpp:
+        (WKPreferencesSetTabToLinksEnabled): Deleted.
+        (WKPreferencesGetTabToLinksEnabled): Deleted.
+        * UIProcess/API/C/WKPreferencesRefPrivate.h:
+        * WebProcess/InjectedBundle/API/c/WKBundle.cpp:
+        (WKBundleSetSpatialNavigationEnabled): Deleted.
+        * WebProcess/InjectedBundle/API/c/WKBundlePrivate.h:
+        * WebProcess/InjectedBundle/InjectedBundle.cpp:
+        (WebKit::InjectedBundle::overrideBoolPreferenceForTestRunner):
+        (WebKit::InjectedBundle::setSpatialNavigationEnabled): Deleted.
+        * WebProcess/InjectedBundle/InjectedBundle.h:
+        * WebProcess/WebPage/WebPage.h:
+        (WebKit::WebPage::setTabToLinksEnabled): Deleted.
+        (WebKit::WebPage::tabToLinksEnabled const): Deleted.
+
 2020-10-28  Aditya Keerthi  <akeer...@apple.com>
 
         [Cocoa] Remove soft linking of Contacts.framework

Modified: trunk/Source/WebKit/UIProcess/API/C/WKPreferences.cpp (269110 => 269111)


--- trunk/Source/WebKit/UIProcess/API/C/WKPreferences.cpp	2020-10-28 18:17:23 UTC (rev 269110)
+++ trunk/Source/WebKit/UIProcess/API/C/WKPreferences.cpp	2020-10-28 18:33:08 UTC (rev 269111)
@@ -1046,16 +1046,6 @@
     return toImpl(preferencesRef)->artificialPluginInitializationDelayEnabled();
 }
 
-void WKPreferencesSetTabToLinksEnabled(WKPreferencesRef preferencesRef, bool enabled)
-{
-    toImpl(preferencesRef)->setTabToLinksEnabled(enabled);
-}
-
-bool WKPreferencesGetTabToLinksEnabled(WKPreferencesRef preferencesRef)
-{
-    return toImpl(preferencesRef)->tabToLinksEnabled();
-}
-
 void WKPreferencesSetInteractiveFormValidationEnabled(WKPreferencesRef preferencesRef, bool enabled)
 {
     toImpl(preferencesRef)->setInteractiveFormValidationEnabled(enabled);

Modified: trunk/Source/WebKit/UIProcess/API/C/WKPreferencesRefPrivate.h (269110 => 269111)


--- trunk/Source/WebKit/UIProcess/API/C/WKPreferencesRefPrivate.h	2020-10-28 18:17:23 UTC (rev 269110)
+++ trunk/Source/WebKit/UIProcess/API/C/WKPreferencesRefPrivate.h	2020-10-28 18:33:08 UTC (rev 269111)
@@ -240,10 +240,6 @@
 WK_EXPORT void WKPreferencesSetArtificialPluginInitializationDelayEnabled(WKPreferencesRef preferencesRef, bool enabled);
 WK_EXPORT bool WKPreferencesGetArtificialPluginInitializationDelayEnabled(WKPreferencesRef preferencesRef);
 
-// Defaults to false
-WK_EXPORT void WKPreferencesSetTabToLinksEnabled(WKPreferencesRef preferencesRef, bool enabled);
-WK_EXPORT bool WKPreferencesGetTabToLinksEnabled(WKPreferencesRef preferencesRef);
-
 // Defaults to true
 WK_EXPORT void WKPreferencesSetInteractiveFormValidationEnabled(WKPreferencesRef preferencesRef, bool enabled);
 WK_EXPORT bool WKPreferencesGetInteractiveFormValidationEnabled(WKPreferencesRef preferencesRef);

Modified: trunk/Source/WebKit/WebProcess/InjectedBundle/API/c/WKBundle.cpp (269110 => 269111)


--- trunk/Source/WebKit/WebProcess/InjectedBundle/API/c/WKBundle.cpp	2020-10-28 18:17:23 UTC (rev 269110)
+++ trunk/Source/WebKit/WebProcess/InjectedBundle/API/c/WKBundle.cpp	2020-10-28 18:33:08 UTC (rev 269111)
@@ -169,11 +169,6 @@
     WebKit::toImpl(bundleRef)->setAuthorAndUserStylesEnabled(WebKit::toImpl(pageGroupRef), enabled);
 }
 
-void WKBundleSetSpatialNavigationEnabled(WKBundleRef bundleRef, WKBundlePageGroupRef pageGroupRef, bool enabled)
-{
-    WebKit::toImpl(bundleRef)->setSpatialNavigationEnabled(WebKit::toImpl(pageGroupRef), enabled);
-}
-
 void WKBundleAddOriginAccessAllowListEntry(WKBundleRef bundleRef, WKStringRef sourceOrigin, WKStringRef destinationProtocol, WKStringRef destinationHost, bool allowDestinationSubdomains)
 {
     WebKit::toImpl(bundleRef)->addOriginAccessAllowListEntry(WebKit::toWTFString(sourceOrigin), WebKit::toWTFString(destinationProtocol), WebKit::toWTFString(destinationHost), allowDestinationSubdomains);

Modified: trunk/Source/WebKit/WebProcess/InjectedBundle/API/c/WKBundlePrivate.h (269110 => 269111)


--- trunk/Source/WebKit/WebProcess/InjectedBundle/API/c/WKBundlePrivate.h	2020-10-28 18:17:23 UTC (rev 269110)
+++ trunk/Source/WebKit/WebProcess/InjectedBundle/API/c/WKBundlePrivate.h	2020-10-28 18:33:08 UTC (rev 269111)
@@ -52,7 +52,6 @@
 WK_EXPORT void WKBundleSetJavaScriptCanAccessClipboard(WKBundleRef bundle, WKBundlePageGroupRef pageGroup, bool enabled);
 WK_EXPORT void WKBundleSetPopupBlockingEnabled(WKBundleRef bundle, WKBundlePageGroupRef pageGroup, bool enabled);
 WK_EXPORT void WKBundleSetAuthorAndUserStylesEnabled(WKBundleRef bundle, WKBundlePageGroupRef pageGroup, bool enabled);
-WK_EXPORT void WKBundleSetSpatialNavigationEnabled(WKBundleRef bundle, WKBundlePageGroupRef pageGroup, bool enabled);
 WK_EXPORT void WKBundleAddOriginAccessAllowListEntry(WKBundleRef bundle, WKStringRef, WKStringRef, WKStringRef, bool);
 WK_EXPORT void WKBundleRemoveOriginAccessAllowListEntry(WKBundleRef bundle, WKStringRef, WKStringRef, WKStringRef, bool);
 WK_EXPORT void WKBundleResetOriginAccessAllowLists(WKBundleRef bundle);

Modified: trunk/Source/WebKit/WebProcess/InjectedBundle/InjectedBundle.cpp (269110 => 269111)


--- trunk/Source/WebKit/WebProcess/InjectedBundle/InjectedBundle.cpp	2020-10-28 18:17:23 UTC (rev 269110)
+++ trunk/Source/WebKit/WebProcess/InjectedBundle/InjectedBundle.cpp	2020-10-28 18:33:08 UTC (rev 269111)
@@ -154,12 +154,6 @@
 {
     const HashSet<Page*>& pages = PageGroup::pageGroup(pageGroup->identifier())->pages();
 
-    if (preference == "WebKitTabToLinksPreferenceKey") {
-        WebPreferencesStore::overrideBoolValueForKey(WebPreferencesKey::tabsToLinksKey(), enabled);
-        for (auto* page : pages)
-            WebPage::fromCorePage(*page).setTabToLinksEnabled(enabled);
-    }
-
     if (preference == "WebKit2AsynchronousPluginInitializationEnabled") {
         WebPreferencesStore::overrideBoolValueForKey(WebPreferencesKey::asynchronousPluginInitializationEnabledKey(), enabled);
         for (auto* page : pages)
@@ -358,13 +352,6 @@
         (*iter)->settings().setAuthorAndUserStylesEnabled(enabled);
 }
 
-void InjectedBundle::setSpatialNavigationEnabled(WebPageGroupProxy* pageGroup, bool enabled)
-{
-    const HashSet<Page*>& pages = PageGroup::pageGroup(pageGroup->identifier())->pages();
-    for (HashSet<Page*>::iterator iter = pages.begin(); iter != pages.end(); ++iter)
-        (*iter)->settings().setSpatialNavigationEnabled(enabled);
-}
-
 void InjectedBundle::addOriginAccessAllowListEntry(const String& sourceOrigin, const String& destinationProtocol, const String& destinationHost, bool allowDestinationSubdomains)
 {
     SecurityPolicy::addOriginAccessAllowlistEntry(SecurityOrigin::createFromString(sourceOrigin).get(), destinationProtocol, destinationHost, allowDestinationSubdomains);

Modified: trunk/Source/WebKit/WebProcess/InjectedBundle/InjectedBundle.h (269110 => 269111)


--- trunk/Source/WebKit/WebProcess/InjectedBundle/InjectedBundle.h	2020-10-28 18:17:23 UTC (rev 269110)
+++ trunk/Source/WebKit/WebProcess/InjectedBundle/InjectedBundle.h	2020-10-28 18:33:08 UTC (rev 269111)
@@ -106,7 +106,6 @@
     void setJavaScriptCanAccessClipboard(WebPageGroupProxy*, bool);
     void setPopupBlockingEnabled(WebPageGroupProxy*, bool);
     void setAuthorAndUserStylesEnabled(WebPageGroupProxy*, bool);
-    void setSpatialNavigationEnabled(WebPageGroupProxy*, bool);
     void addOriginAccessAllowListEntry(const String&, const String&, const String&, bool);
     void removeOriginAccessAllowListEntry(const String&, const String&, const String&, bool);
     void resetOriginAccessAllowLists();

Modified: trunk/Source/WebKit/WebProcess/WebPage/WebPage.h (269110 => 269111)


--- trunk/Source/WebKit/WebProcess/WebPage/WebPage.h	2020-10-28 18:17:23 UTC (rev 269110)
+++ trunk/Source/WebKit/WebProcess/WebPage/WebPage.h	2020-10-28 18:33:08 UTC (rev 269111)
@@ -1075,8 +1075,6 @@
     void setAsynchronousPluginInitializationEnabledForAllPlugins(bool enabled) { m_asynchronousPluginInitializationEnabledForAllPlugins = enabled; }
     bool artificialPluginInitializationDelayEnabled() const { return m_artificialPluginInitializationDelayEnabled; }
     void setArtificialPluginInitializationDelayEnabled(bool enabled) { m_artificialPluginInitializationDelayEnabled = enabled; }
-    void setTabToLinksEnabled(bool enabled) { m_tabToLinks = enabled; }
-    bool tabToLinksEnabled() const { return m_tabToLinks; }
 
     bool scrollingPerformanceLoggingEnabled() const { return m_scrollingPerformanceLoggingEnabled; }
     void setScrollingPerformanceLoggingEnabled(bool);

Modified: trunk/Tools/ChangeLog (269110 => 269111)


--- trunk/Tools/ChangeLog	2020-10-28 18:17:23 UTC (rev 269110)
+++ trunk/Tools/ChangeLog	2020-10-28 18:33:08 UTC (rev 269111)
@@ -1,3 +1,36 @@
+2020-10-28  Sam Weinig  <wei...@apple.com>
+
+        Reduce Preference Override Methods: TabsToLinks/SpatialNavigation
+        https://bugs.webkit.org/show_bug.cgi?id=218288
+
+        Reviewed by Tim Horton.
+
+        Replace uses of testRunner.overridePreference("WebKitTabToLinksPreferenceKey", ...) and
+        testRunner.setSpatialNavigationEnabled(...) with test header commands, helping to reduce
+        the number of different ways we have to override preferences in LayoutTests.
+
+        * DumpRenderTree/TestOptions.cpp:
+        (WTR::TestOptions::defaults):
+        * DumpRenderTree/TestRunner.cpp:
+        (TestRunner::staticFunctions):
+        (setSpatialNavigationEnabledCallback): Deleted.
+        * DumpRenderTree/TestRunner.h:
+        * DumpRenderTree/mac/DumpRenderTree.mm:
+        (resetWebPreferencesToConsistentValues):
+        * DumpRenderTree/mac/TestRunnerMac.mm:
+        (TestRunner::setSpatialNavigationEnabled): Deleted.
+        * DumpRenderTree/win/DumpRenderTree.cpp:
+        (resetWebPreferencesToConsistentValues):
+        (setWebPreferencesForTestOptions):
+        * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
+        * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
+        (WTR::InjectedBundle::beginTesting):
+        * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
+        (WTR::TestRunner::setSpatialNavigationEnabled): Deleted.
+        * WebKitTestRunner/InjectedBundle/TestRunner.h:
+        * WebKitTestRunner/TestController.cpp:
+        (WTR::TestController::resetPreferencesToConsistentValues):
+
 2020-10-28  Aakash Jain  <aakash_j...@apple.com>
 
         [ews] Ensure that uat instance doesn't send emails

Modified: trunk/Tools/DumpRenderTree/TestOptions.cpp (269110 => 269111)


--- trunk/Tools/DumpRenderTree/TestOptions.cpp	2020-10-28 18:17:23 UTC (rev 269110)
+++ trunk/Tools/DumpRenderTree/TestOptions.cpp	2020-10-28 18:33:08 UTC (rev 269111)
@@ -62,6 +62,8 @@
             { "KeygenElementEnabled", false },
             { "MenuItemElementEnabled", false },
             { "ModernMediaControlsEnabled", true },
+            { "SpatialNavigationEnabled", false },
+            { "TabsToLinks", false },
 
             { "CSSLogicalEnabled", false },
             { "LineHeightUnitsEnabled", false },

Modified: trunk/Tools/DumpRenderTree/TestRunner.cpp (269110 => 269111)


--- trunk/Tools/DumpRenderTree/TestRunner.cpp	2020-10-28 18:17:23 UTC (rev 269110)
+++ trunk/Tools/DumpRenderTree/TestRunner.cpp	2020-10-28 18:33:08 UTC (rev 269111)
@@ -1154,18 +1154,6 @@
     return JSValueMakeUndefined(context);
 }
 
-static JSValueRef setSpatialNavigationEnabledCallback(JSContextRef context, JSObjectRef function, JSObjectRef thisObject, size_t argumentCount, const JSValueRef arguments[], JSValueRef* exception)
-{
-    // Has mac & windows implementation.
-    if (argumentCount < 1)
-        return JSValueMakeUndefined(context);
-
-    TestRunner* controller = static_cast<TestRunner*>(JSObjectGetPrivate(thisObject));
-    controller->setSpatialNavigationEnabled(JSValueToBoolean(context, arguments[0]));
-
-    return JSValueMakeUndefined(context);
-}
-
 static JSValueRef setPrintingCallback(JSContextRef context, JSObjectRef function, JSObjectRef thisObject, size_t argumentCount, const JSValueRef arguments[], JSValueRef* exception)
 {
     TestRunner* controller = static_cast<TestRunner*>(JSObjectGetPrivate(thisObject));
@@ -2205,7 +2193,6 @@
         { "setShouldSwapToEphemeralSessionOnNextNavigation", setShouldSwapToEphemeralSessionOnNextNavigationCallback, kJSPropertyAttributeReadOnly | kJSPropertyAttributeDontDelete },
         { "setShouldSwapToDefaultSessionOnNextNavigation", setShouldSwapToDefaultSessionOnNextNavigationCallback, kJSPropertyAttributeReadOnly | kJSPropertyAttributeDontDelete },
         { "setSerializeHTTPLoads", setSerializeHTTPLoadsCallback, kJSPropertyAttributeReadOnly | kJSPropertyAttributeDontDelete },
-        { "setSpatialNavigationEnabled", setSpatialNavigationEnabledCallback, kJSPropertyAttributeReadOnly | kJSPropertyAttributeDontDelete },
         { "setStopProvisionalFrameLoads", setStopProvisionalFrameLoadsCallback, kJSPropertyAttributeReadOnly | kJSPropertyAttributeDontDelete },
         { "setTabKeyCyclesThroughElements", setTabKeyCyclesThroughElementsCallback, kJSPropertyAttributeReadOnly | kJSPropertyAttributeDontDelete },
 #if PLATFORM(IOS_FAMILY)

Modified: trunk/Tools/DumpRenderTree/TestRunner.h (269110 => 269111)


--- trunk/Tools/DumpRenderTree/TestRunner.h	2020-10-28 18:17:23 UTC (rev 269110)
+++ trunk/Tools/DumpRenderTree/TestRunner.h	2020-10-28 18:33:08 UTC (rev 269111)
@@ -126,7 +126,6 @@
     void setUserStyleSheetLocation(JSStringRef path);
     void setValueForUser(JSContextRef, JSValueRef nodeObject, JSStringRef value);
     void setXSSAuditorEnabled(bool flag);
-    void setSpatialNavigationEnabled(bool);
     void setScrollbarPolicy(JSStringRef orientation, JSStringRef policy);
 #if PLATFORM(IOS_FAMILY)
     void setTelephoneNumberParsingEnabled(bool enable);

Modified: trunk/Tools/DumpRenderTree/mac/DumpRenderTree.mm (269110 => 269111)


--- trunk/Tools/DumpRenderTree/mac/DumpRenderTree.mm	2020-10-28 18:17:23 UTC (rev 269110)
+++ trunk/Tools/DumpRenderTree/mac/DumpRenderTree.mm	2020-10-28 18:33:08 UTC (rev 269111)
@@ -871,9 +871,6 @@
     [preferences setJavaEnabled:NO];
     [preferences setJavaScriptEnabled:YES];
     [preferences setEditableLinkBehavior:WebKitEditableLinkOnlyLiveWithShiftKey];
-#if !PLATFORM(IOS_FAMILY)
-    [preferences setTabsToLinks:NO];
-#endif
     [preferences setDOMPasteAllowed:YES];
 #if !PLATFORM(IOS_FAMILY)
     [preferences setShouldPrintBackgrounds:YES];
@@ -898,7 +895,6 @@
     [preferences setLoadsSiteIconsIgnoringImageLoadingPreference:NO];
     [preferences setFrameFlattening:WebKitFrameFlatteningDisabled];
     [preferences setAsyncFrameScrollingEnabled:NO];
-    [preferences setSpatialNavigationEnabled:NO];
     [preferences setMetaRefreshEnabled:YES];
 
     if (persistentUserStyleSheetLocation) {

Modified: trunk/Tools/DumpRenderTree/mac/TestRunnerMac.mm (269110 => 269111)


--- trunk/Tools/DumpRenderTree/mac/TestRunnerMac.mm	2020-10-28 18:17:23 UTC (rev 269110)
+++ trunk/Tools/DumpRenderTree/mac/TestRunnerMac.mm	2020-10-28 18:33:08 UTC (rev 269111)
@@ -515,11 +515,6 @@
     [[[mainFrame webView] preferences] setXSSAuditorEnabled:enabled];
 }
 
-void TestRunner::setSpatialNavigationEnabled(bool enabled)
-{
-    [[[mainFrame webView] preferences] setSpatialNavigationEnabled:enabled];
-}
-
 void TestRunner::setAllowUniversalAccessFromFileURLs(bool enabled)
 {
     [[[mainFrame webView] preferences] setAllowUniversalAccessFromFileURLs:enabled];

Modified: trunk/Tools/DumpRenderTree/win/DumpRenderTree.cpp (269110 => 269111)


--- trunk/Tools/DumpRenderTree/win/DumpRenderTree.cpp	2020-10-28 18:17:23 UTC (rev 269110)
+++ trunk/Tools/DumpRenderTree/win/DumpRenderTree.cpp	2020-10-28 18:33:08 UTC (rev 269111)
@@ -862,7 +862,6 @@
     preferences->setJavaEnabled(FALSE);
     preferences->setJavaScriptEnabled(TRUE);
     preferences->setEditableLinkBehavior(WebKitEditableLinkOnlyLiveWithShiftKey);
-    preferences->setTabsToLinks(FALSE);
     preferences->setDOMPasteAllowed(TRUE);
     preferences->setShouldPrintBackgrounds(TRUE);
     preferences->setCacheModel(WebCacheModelDocumentBrowser);
@@ -884,7 +883,6 @@
     preferences->setLoadsImagesAutomatically(TRUE);
     prefsPrivate->setLoadsSiteIconsIgnoringImageLoadingPreference(FALSE);
     prefsPrivate->setFrameFlatteningEnabled(FALSE);
-    prefsPrivate->setSpatialNavigationEnabled(FALSE);
     if (persistentUserStyleSheetLocation) {
         size_t stringLength = CFStringGetLength(persistentUserStyleSheetLocation.get());
         Vector<UniChar> urlCharacters(stringLength + 1, 0);
@@ -927,6 +925,7 @@
     COMPtr<IWebPreferencesPrivate8> prefsPrivate { Query, preferences };
 
     preferences->setPrivateBrowsingEnabled(options.useEphemeralSession());
+
     preferences->setUsesPageCache(boolWebPreferenceFeatureValue("UsesBackForwardCache", false, options));
     prefsPrivate->setMenuItemElementEnabled(boolWebPreferenceFeatureValue("MenuItemElementEnabled", false, options));
     prefsPrivate->setKeygenElementEnabled(boolWebPreferenceFeatureValue("KeygenElementEnabled", false, options));
@@ -937,6 +936,8 @@
     prefsPrivate->setContactPickerAPIEnabled(boolWebPreferenceFeatureValue("ContactPickerAPIEnabled", false, options));
     prefsPrivate->setAllowTopNavigationToDataURLs(boolWebPreferenceFeatureValue("AllowTopNavigationToDataURLs", true, options));
     prefsPrivate->setCSSOMViewSmoothScrollingEnabled(boolWebPreferenceFeatureValue("CSSOMViewSmoothScrollingEnabled", false, options));
+    prefsPrivate->setSpatialNavigationEnabled(boolWebPreferenceFeatureValue("SpatialNavigationEnabled", false, options));
+    preferences->setTabsToLinks(boolWebPreferenceFeatureValue("TabsToLinks", false, options));
 }
 
 static String applicationId()

Modified: trunk/Tools/DumpRenderTree/win/TestRunnerWin.cpp (269110 => 269111)


--- trunk/Tools/DumpRenderTree/win/TestRunnerWin.cpp	2020-10-28 18:17:23 UTC (rev 269110)
+++ trunk/Tools/DumpRenderTree/win/TestRunnerWin.cpp	2020-10-28 18:33:08 UTC (rev 269111)
@@ -546,23 +546,6 @@
     prefsPrivate->setXSSAuditorEnabled(enabled);
 }
 
-void TestRunner::setSpatialNavigationEnabled(bool enabled)
-{
-    COMPtr<IWebView> webView;
-    if (FAILED(frame->webView(&webView)))
-        return;
-
-    COMPtr<IWebPreferences> preferences;
-    if (FAILED(webView->preferences(&preferences)))
-        return;
-
-    COMPtr<IWebPreferencesPrivate6> prefsPrivate(Query, preferences);
-    if (!prefsPrivate)
-        return;
-
-    prefsPrivate->setSpatialNavigationEnabled(enabled);
-}
-
 void TestRunner::setAllowUniversalAccessFromFileURLs(bool enabled)
 {
     COMPtr<IWebView> webView;

Modified: trunk/Tools/WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl (269110 => 269111)


--- trunk/Tools/WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl	2020-10-28 18:17:23 UTC (rev 269110)
+++ trunk/Tools/WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl	2020-10-28 18:33:08 UTC (rev 269111)
@@ -92,7 +92,6 @@
     undefined removeOriginAccessAllowListEntry(DOMString sourceOrigin, DOMString destinationProtocol, DOMString destinationHost, boolean allowDestinationSubdomains);
     undefined setUserStyleSheetEnabled(boolean value);
     undefined setUserStyleSheetLocation(DOMString location);
-    undefined setSpatialNavigationEnabled(boolean value);
     undefined setTabKeyCyclesThroughElements(boolean enabled);
     undefined setSerializeHTTPLoads();
     undefined dispatchPendingLoadRequests();

Modified: trunk/Tools/WebKitTestRunner/InjectedBundle/InjectedBundle.cpp (269110 => 269111)


--- trunk/Tools/WebKitTestRunner/InjectedBundle/InjectedBundle.cpp	2020-10-28 18:17:23 UTC (rev 269110)
+++ trunk/Tools/WebKitTestRunner/InjectedBundle/InjectedBundle.cpp	2020-10-28 18:33:08 UTC (rev 269111)
@@ -498,7 +498,6 @@
     WKBundleSetAuthorAndUserStylesEnabled(m_bundle, m_pageGroup, true);
     WKBundleSetFrameFlatteningEnabled(m_bundle, m_pageGroup, false);
     WKBundleSetMinimumLogicalFontSize(m_bundle, m_pageGroup, 9);
-    WKBundleSetSpatialNavigationEnabled(m_bundle, m_pageGroup, false);
     WKBundleSetAllowFileAccessFromFileURLs(m_bundle, m_pageGroup, true);
     WKBundleSetPopupBlockingEnabled(m_bundle, m_pageGroup, false);
     WKBundleSetAllowStorageAccessFromFileURLS(m_bundle, m_pageGroup, false);

Modified: trunk/Tools/WebKitTestRunner/InjectedBundle/TestRunner.cpp (269110 => 269111)


--- trunk/Tools/WebKitTestRunner/InjectedBundle/TestRunner.cpp	2020-10-28 18:17:23 UTC (rev 269110)
+++ trunk/Tools/WebKitTestRunner/InjectedBundle/TestRunner.cpp	2020-10-28 18:33:08 UTC (rev 269111)
@@ -899,12 +899,6 @@
         setUserStyleSheetEnabled(true);
 }
 
-void TestRunner::setSpatialNavigationEnabled(bool enabled)
-{
-    auto& injectedBundle = InjectedBundle::singleton();
-    WKBundleSetSpatialNavigationEnabled(injectedBundle.bundle(), injectedBundle.pageGroup(), enabled);
-}
-
 void TestRunner::setTabKeyCyclesThroughElements(bool enabled)
 {
     WKBundleSetTabKeyCyclesThroughElements(InjectedBundle::singleton().bundle(), page(), enabled);

Modified: trunk/Tools/WebKitTestRunner/InjectedBundle/TestRunner.h (269110 => 269111)


--- trunk/Tools/WebKitTestRunner/InjectedBundle/TestRunner.h	2020-10-28 18:17:23 UTC (rev 269110)
+++ trunk/Tools/WebKitTestRunner/InjectedBundle/TestRunner.h	2020-10-28 18:33:08 UTC (rev 269111)
@@ -120,7 +120,6 @@
     void removeOriginAccessAllowListEntry(JSStringRef sourceOrigin, JSStringRef destinationProtocol, JSStringRef destinationHost, bool allowDestinationSubdomains);
     void setUserStyleSheetEnabled(bool);
     void setUserStyleSheetLocation(JSStringRef);
-    void setSpatialNavigationEnabled(bool);
     void setTabKeyCyclesThroughElements(bool);
     void setSerializeHTTPLoads();
     void dispatchPendingLoadRequests();

Modified: trunk/Tools/WebKitTestRunner/TestController.cpp (269110 => 269111)


--- trunk/Tools/WebKitTestRunner/TestController.cpp	2020-10-28 18:17:23 UTC (rev 269110)
+++ trunk/Tools/WebKitTestRunner/TestController.cpp	2020-10-28 18:33:08 UTC (rev 269111)
@@ -872,7 +872,7 @@
     WKPreferencesSetAsynchronousPluginInitializationEnabled(preferences, false);
     WKPreferencesSetAsynchronousPluginInitializationEnabledForAllPlugins(preferences, false);
     WKPreferencesSetArtificialPluginInitializationDelayEnabled(preferences, false);
-    WKPreferencesSetTabToLinksEnabled(preferences, false);
+    WKPreferencesSetTabsToLinks(preferences, false);
     WKPreferencesSetInteractiveFormValidationEnabled(preferences, true);
     WKPreferencesSetDataTransferItemsEnabled(preferences, true);
     WKPreferencesSetCustomPasteboardDataEnabled(preferences, true);
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to