More fine-grained config for 'Search result preloading' setting.

Instead of a checkbox, it's now a setting always/wifi only/never.

Bug: 5086576
Change-Id: I265a22968eafee547571dc86c10c5d5421a305e8
diff --git a/res/values/strings.xml b/res/values/strings.xml
index 123e5c8..77e25a3 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -646,8 +646,25 @@
     <string name="pref_data_title">Bandwidth Management</string>
     <!-- Title for search preloading [CHAR LIMIT=40] -->
     <string name="pref_data_preload_title">Search result preloading</string>
+    <!-- Search preloading options [CHAR LIMIT=20] -->
+    <string-array name="pref_data_preload_choices">
+        <item>Never</item>
+        <item>Only on Wi-Fi</item>
+        <item>Always</item>
+    </string-array>
+    <!-- Do not translate -->
+    <string name="pref_data_preload_value_never" translatable="false">NEVER</string>
+    <string name="pref_data_preload_value_wifi_only" translatable="false">WIFI_ONLY</string>
+    <string name="pref_data_preload_value_always" translatable="false">ALWAYS</string>
+    <string-array name="pref_data_preload_values" translatable="false">
+        <item><xliff:g>@string/pref_data_preload_value_never</xliff:g></item>
+        <item><xliff:g>@string/pref_data_preload_value_wifi_only</xliff:g></item>
+        <item><xliff:g>@string/pref_data_preload_value_always</xliff:g></item>
+    </string-array>
     <!-- Summary for search preloading [CHAR LIMIT=80] -->
     <string name="pref_data_preload_summary">Allow the browser to preload high confidence search results in the background</string>
+    <!-- Title of dialog for search preloading [CHAR LIMIT=40] -->
+    <string name="pref_data_preload_dialogtitle">Search result preloading</string>
     <!-- Title for a dialog displayed when the browser has a data connectivity
             problem -->
     <string name="browserFrameNetworkErrorLabel">Data connectivity problem</string>
diff --git a/res/xml/bandwidth_preferences.xml b/res/xml/bandwidth_preferences.xml
index 0767ac5..8a31304 100644
--- a/res/xml/bandwidth_preferences.xml
+++ b/res/xml/bandwidth_preferences.xml
@@ -16,11 +16,14 @@
 
 <PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
 
-    <CheckBoxPreference
-        android:key="preload_enabled"
+    <ListPreference
+        android:key="preload_when"
         android:title="@string/pref_data_preload_title"
         android:summary="@string/pref_data_preload_summary"
-        android:defaultValue="false" />
+        android:defaultValue="@string/pref_data_preload_value_wifi_only"
+        android:entries="@array/pref_data_preload_choices"
+        android:entryValues="@array/pref_data_preload_values"
+        android:dialogTitle="@string/pref_data_preload_dialogtitle" />
 
     <CheckBoxPreference
         android:key="load_images"