Add enterprise policy for ScrollToTextFragment

This change adds a policy for ScrollToTextFragment, and plumbs a
content switch down to blink, where it is used to override the state
of blink::features::kTextFragmentAnchor.

This policy is not marked as dynamic_refresh, since the values are set
early on in renderer startup, with no ability to change dynamically.

Bug: 1055513
Change-Id: I28aae1eb036e94d68974423c871b1d806275d03b
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2083383
Reviewed-by: Pavol Marko <[email protected]>
Reviewed-by: David Bokan <[email protected]>
Reviewed-by: Avi Drissman <[email protected]>
Commit-Queue: Daniel Libby <[email protected]>
Cr-Commit-Position: refs/heads/master@{#747987}
diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/chrome_content_browser_client.cc
index 2970aac..1a1344f 100644
--- a/chrome/browser/chrome_content_browser_client.cc
+++ b/chrome/browser/chrome_content_browser_client.cc
@@ -2134,6 +2134,11 @@
         command_line->AppendSwitch(switches::kUseLegacyFormControls);
       }
 
+      if (prefs->HasPrefPath(prefs::kScrollToTextFragmentEnabled) &&
+          !prefs->GetBoolean(prefs::kScrollToTextFragmentEnabled)) {
+        command_line->AppendSwitch(switches::kDisableScrollToTextFragment);
+      }
+
       if (!profile->ShouldEnableOutOfBlinkCors()) {
         command_line->AppendSwitch(
             network::switches::kForceToDisableOutOfBlinkCors);