[unified-consent] Move network prediction toggle to privacy section

The network prediction toggle is moved from the "Other Google
serivces" section back to the privacy section.

Screenshot:
https://drive.google.com/file/d/1opUtSQKtM8YbGSZsLyLDvreC0mDUJ3Nm/view?usp=sharing

Bug: 925882
Change-Id: I7ace7b314106608c39b50776ee51f23a7da9c6e2
Reviewed-on: https://chromium-review.googlesource.com/c/1442199
Reviewed-by: Hector Carmona <hcarmona@chromium.org>
Commit-Queue: Thomas Tangl <tangltom@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#627495}(cherry picked from commit 4a2f7f75959574f44d6ce1bf688a1d1e57f6661f)
Reviewed-on: https://chromium-review.googlesource.com/c/1451984
Reviewed-by: Thomas Tangl <tangltom@chromium.org>
Cr-Commit-Position: refs/branch-heads/3683@{#181}
Cr-Branched-From: e51029943e0a38dd794b73caaf6373d5496ae783-refs/heads/master@{#625896}
diff --git a/chrome/browser/resources/settings/privacy_page/personalization_options.html b/chrome/browser/resources/settings/privacy_page/personalization_options.html
index 8ec53b8..9df16c8 100644
--- a/chrome/browser/resources/settings/privacy_page/personalization_options.html
+++ b/chrome/browser/resources/settings/privacy_page/personalization_options.html
@@ -28,12 +28,6 @@
         label="$i18n{searchSuggestPref}"
         sub-label="$i18n{searchSuggestPrefDesc}">
     </settings-toggle-button>
-    <settings-toggle-button hidden="[[!pageVisibility.networkPrediction]]"
-        pref="{{prefs.net.network_prediction_options}}"
-        label="$i18n{networkPredictionEnabled}"
-        sub-label="$i18n{networkPredictionEnabledDesc}"
-        numeric-unchecked-value="[[networkPredictionEnum_.NEVER]]">
-    </settings-toggle-button>
     <settings-toggle-button pref="{{prefs.alternate_error_pages.enabled}}"
         label="$i18n{linkDoctorPref}"
         sub-label="$i18n{linkDoctorPrefDesc}">
diff --git a/chrome/browser/resources/settings/privacy_page/personalization_options.js b/chrome/browser/resources/settings/privacy_page/personalization_options.js
index fcdf4ec..c6ffda1 100644
--- a/chrome/browser/resources/settings/privacy_page/personalization_options.js
+++ b/chrome/browser/resources/settings/privacy_page/personalization_options.js
@@ -9,17 +9,6 @@
  */
 (function() {
 
-/**
- * Must be kept in sync with the C++ enum of the same name.
- * @enum {number}
- */
-const NetworkPredictionOptions = {
-  ALWAYS: 0,
-  WIFI_ONLY: 1,
-  NEVER: 2,
-  DEFAULT: 1,
-};
-
 Polymer({
   is: 'settings-personalization-options',
 
@@ -39,17 +28,6 @@
      */
     pageVisibility: Object,
 
-    /**
-     * Used for HTML bindings. This is defined as a property rather than within
-     * the ready callback, because the value needs to be available before
-     * local DOM initialization - otherwise, the toggle has unexpected behavior.
-     * @private
-     */
-    networkPredictionEnum_: {
-      type: Object,
-      value: NetworkPredictionOptions,
-    },
-
     unifiedConsentEnabled: Boolean,
 
     /** @type {settings.SyncStatus} */
diff --git a/chrome/browser/resources/settings/privacy_page/privacy_page.html b/chrome/browser/resources/settings/privacy_page/privacy_page.html
index 0611bfe..f58c307 100644
--- a/chrome/browser/resources/settings/privacy_page/privacy_page.html
+++ b/chrome/browser/resources/settings/privacy_page/privacy_page.html
@@ -125,6 +125,12 @@
             label="$i18n{canMakePaymentToggleLabel}"
             pref="{{prefs.payments.can_make_payment_enabled}}">
         </settings-toggle-button>
+        <settings-toggle-button hidden="[[!pageVisibility.networkPrediction]]"
+            pref="{{prefs.net.network_prediction_options}}"
+            label="$i18n{networkPredictionEnabled}"
+            sub-label="$i18n{networkPredictionEnabledDesc}"
+            numeric-unchecked-value="[[networkPredictionUncheckedValue_]]">
+        </settings-toggle-button>
 <if expr="chromeos">
         <settings-toggle-button
             pref="{{prefs.cros.device.attestation_for_content_protection_enabled}}"
diff --git a/chrome/browser/resources/settings/privacy_page/privacy_page.js b/chrome/browser/resources/settings/privacy_page/privacy_page.js
index 62a2ad7..403dcfe 100644
--- a/chrome/browser/resources/settings/privacy_page/privacy_page.js
+++ b/chrome/browser/resources/settings/privacy_page/privacy_page.js
@@ -17,6 +17,17 @@
  */
 (function() {
 
+/**
+ * Must be kept in sync with the C++ enum of the same name.
+ * @enum {number}
+ */
+const NetworkPredictionOptions = {
+  ALWAYS: 0,
+  WIFI_ONLY: 1,
+  NEVER: 2,
+  DEFAULT: 1,
+};
+
 Polymer({
   is: 'settings-privacy-page',
 
@@ -64,6 +75,17 @@
       value: false,
     },
 
+    /**
+     * Used for HTML bindings. This is defined as a property rather than within
+     * the ready callback, because the value needs to be available before
+     * local DOM initialization - otherwise, the toggle has unexpected behavior.
+     * @private
+     */
+    networkPredictionUncheckedValue_: {
+      type: Number,
+      value: NetworkPredictionOptions.NEVER,
+    },
+
     /** @private */
     enableSafeBrowsingSubresourceFilter_: {
       type: Boolean,