Different approach to auto signin.

On startup, attempt to log the user into google sites.  Show a progress dialog
that the user can cancel if login takes too long.

Add a new preference for toggling auto signin.  This preference shows the
current account and allows the user to choose the account to use.  If there are
no accounts, the option is disabled.  The saved account is validated each time
it is accessed in case the account was removed.

Bug: 3278072
Change-Id: I10ce1dc57a683b2820b17ef6955577037c82f332
diff --git a/res/xml/browser_preferences.xml b/res/xml/browser_preferences.xml
deleted file mode 100644
index 1c04528..0000000
--- a/res/xml/browser_preferences.xml
+++ /dev/null
@@ -1,216 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2008 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
--->
-
-<PreferenceScreen
-        xmlns:android="http://schemas.android.com/apk/res/android">
-
-    <PreferenceCategory
-            android:title="@string/pref_content_title">  
-
-        <ListPreference
-                android:key="text_size"
-                android:title="@string/pref_text_size"
-                android:defaultValue="NORMAL"
-                android:entries="@array/pref_text_size_choices"
-                android:entryValues="@array/pref_text_size_values"
-                android:dialogTitle="@string/pref_text_size_dialogtitle" />
-
-        <ListPreference
-                android:key="default_zoom"
-                android:title="@string/pref_default_zoom"
-                android:defaultValue="MEDIUM"
-                android:entries="@array/pref_default_zoom_choices"
-                android:entryValues="@array/pref_default_zoom_values"
-                android:dialogTitle="@string/pref_default_zoom_dialogtitle" />
-
-        <CheckBoxPreference
-                android:key="load_page"
-                android:defaultValue="true"
-                android:title="@string/pref_content_load_page"
-                android:summary="@string/pref_content_load_page_summary" />
-
-        <ListPreference
-                android:key="default_text_encoding"
-                android:title="@string/pref_default_text_encoding"
-                android:defaultValue="@string/pref_default_text_encoding_default"
-                android:entries="@array/pref_default_text_encoding_choices"
-                android:entryValues="@array/pref_default_text_encoding_values"
-                android:dialogTitle="@string/pref_default_text_encoding_dialogtitle" />
-
-        <CheckBoxPreference
-                android:key="block_popup_windows"
-                android:defaultValue="true"
-                android:title="@string/pref_content_block_popups" /> 
-
-        <CheckBoxPreference
-                android:key="load_images"
-                android:defaultValue="true"
-                android:title="@string/pref_content_load_images"
-                android:summary="@string/pref_content_load_images_summary" />   
-
-        <CheckBoxPreference
-                android:key="autofit_pages"
-                android:defaultValue="true"
-                android:title="@string/pref_content_autofit"
-                android:summary="@string/pref_content_autofit_summary" />  
-
-        <CheckBoxPreference
-                android:key="enable_javascript"
-                android:defaultValue="true"
-                android:title="@string/pref_content_javascript" />     
-
-        <ListPreference
-                android:key="plugin_state"
-                android:title="@string/pref_content_plugins"
-                android:defaultValue="ON"
-                android:entries="@array/pref_content_plugins_choices"
-                android:entryValues="@array/pref_content_plugins_values"
-                android:dialogTitle="@string/pref_content_plugins" />
-
-        <CheckBoxPreference
-                android:key="open_in_background"
-                android:defaultValue="false"
-                android:title="@string/pref_content_open_in_background"
-                android:summary="@string/pref_content_open_in_background_summary" />
-
-        <com.android.browser.BrowserHomepagePreference
-                android:key="homepage" 
-                android:title="@string/pref_content_homepage"
-                android:hint="@string/http"
-                android:inputType="textUri|textMultiLine" />
-
-    </PreferenceCategory>
-
-    <PreferenceCategory
-            android:title="@string/pref_privacy_security_title">
-            
-        <com.android.browser.BrowserYesNoPreference
-                android:key="privacy_clear_cache"
-                android:title="@string/pref_privacy_clear_cache"
-                android:summary="@string/pref_privacy_clear_cache_summary"
-                android:dialogMessage="@string/pref_privacy_clear_cache_dlg" 
-                android:dialogTitle="@string/clear" 
-                android:dialogIcon="@android:drawable/ic_dialog_alert" />
-                
-        <com.android.browser.BrowserYesNoPreference
-                android:key="privacy_clear_history"
-                android:title="@string/pref_privacy_clear_history"
-                android:summary="@string/pref_privacy_clear_history_summary"
-                android:dialogMessage="@string/pref_privacy_clear_history_dlg" 
-                android:dialogTitle="@string/clear" 
-                android:dialogIcon="@android:drawable/ic_dialog_alert"/>
-
-        <CheckBoxPreference
-                android:key="accept_cookies"
-                android:defaultValue="true"
-                android:title="@string/pref_security_accept_cookies"
-                android:summary="@string/pref_security_accept_cookies_summary" />
-                
-        <com.android.browser.BrowserYesNoPreference
-                android:key="privacy_clear_cookies"
-                android:title="@string/pref_privacy_clear_cookies"
-                android:summary="@string/pref_privacy_clear_cookies_summary"
-                android:dialogMessage="@string/pref_privacy_clear_cookies_dlg" 
-                android:dialogTitle="@string/clear" 
-                android:dialogIcon="@android:drawable/ic_dialog_alert"/>
-
-        <CheckBoxPreference
-                android:key="save_formdata"
-                android:defaultValue="true"
-                android:title="@string/pref_security_save_form_data"
-                android:summary="@string/pref_security_save_form_data_summary" />
-
-        <CheckBoxPreference
-                android:key="autofill_enabled"
-                android:defaultValue="true"
-                android:title="@string/pref_autofill_enabled"
-                android:summary="@string/pref_autofill_enabled_summary" />
-
-        <com.android.browser.BrowserYesNoPreference
-                android:key="privacy_clear_form_data"
-                android:title="@string/pref_privacy_clear_form_data"
-                android:summary="@string/pref_privacy_clear_form_data_summary"
-                android:dialogMessage="@string/pref_privacy_clear_form_data_dlg" 
-                android:dialogTitle="@string/clear" 
-                android:dialogIcon="@android:drawable/ic_dialog_alert"/>
-
-        <CheckBoxPreference
-                android:key="enable_geolocation"
-                android:defaultValue="true"
-                android:title="@string/pref_privacy_enable_geolocation"
-                android:summary="@string/pref_privacy_enable_geolocation_summary" />
-
-        <com.android.browser.BrowserYesNoPreference
-                android:key="privacy_clear_geolocation_access"
-                android:dependency="enable_geolocation"
-                android:title="@string/pref_privacy_clear_geolocation_access"
-                android:summary="@string/pref_privacy_clear_geolocation_access_summary"
-                android:dialogMessage="@string/pref_privacy_clear_geolocation_access_dlg"
-                android:dialogTitle="@string/clear"
-                android:dialogIcon="@android:drawable/ic_dialog_alert"/>
-
-    </PreferenceCategory>
-    
-        <PreferenceCategory
-            android:title="@string/pref_privacy_security_title">
-            
-        <CheckBoxPreference
-                android:key="remember_passwords"
-                android:defaultValue="true"
-                android:title="@string/pref_security_remember_passwords"
-                android:summary="@string/pref_security_remember_passwords_summary" />
-
-        <com.android.browser.BrowserYesNoPreference
-                android:key="privacy_clear_passwords"
-                android:title="@string/pref_privacy_clear_passwords"
-                android:summary="@string/pref_privacy_clear_passwords_summary"
-                android:dialogMessage="@string/pref_privacy_clear_passwords_dlg" 
-                android:dialogTitle="@string/clear" 
-                android:dialogIcon="@android:drawable/ic_dialog_alert"/>
-                
-        <CheckBoxPreference
-                android:key="show_security_warnings"
-                android:defaultValue="true"
-                android:title="@string/pref_security_show_security_warning"
-                android:summary="@string/pref_security_show_security_warning_summary" />
-
-            
-    </PreferenceCategory>
-    <PreferenceCategory
-            android:title="@string/pref_extras_title">
-
-            <!-- Entries and values in this list are set dynamically. -->
-            <com.android.browser.search.SearchEnginePreference
-                    android:key="search_engine"
-                    android:title="@string/pref_content_search_engine"
-                    android:defaultValue="google"
-                    android:summary="@string/pref_content_search_engine_summary"
-                    android:dialogTitle="@string/pref_content_search_engine" />
-
-            <PreferenceScreen
-                  android:key="website_settings"
-                  android:title="@string/pref_extras_website_settings"
-                  android:summary="@string/pref_extras_website_settings_summary" />
-
-            <com.android.browser.BrowserYesNoPreference
-                    android:key="reset_default_preferences"
-                    android:title="@string/pref_extras_reset_default"
-                    android:summary="@string/pref_extras_reset_default_summary"
-                    android:dialogMessage="@string/pref_extras_reset_default_dlg" 
-                    android:dialogTitle="@string/pref_extras_reset_default_dlg_title" 
-                    android:dialogIcon="@android:drawable/ic_dialog_alert" />
-    </PreferenceCategory>
-</PreferenceScreen>
diff --git a/res/xml/privacy_security_preferences.xml b/res/xml/privacy_security_preferences.xml
index 50802ca..54f3ff0 100644
--- a/res/xml/privacy_security_preferences.xml
+++ b/res/xml/privacy_security_preferences.xml
@@ -39,6 +39,11 @@
             android:title="@string/pref_security_show_security_warning"
             android:summary="@string/pref_security_show_security_warning_summary" />
 
+    <CheckBoxPreference
+            android:key="enable_autologin"
+            android:title="@string/pref_autologin_title"
+            android:defaultValue="true" />
+
     <PreferenceCategory android:title="@string/pref_privacy_cookies_title">
         <CheckBoxPreference
                 android:key="accept_cookies"