DO NOT MERGE Fix widget update listener

 Bug: 4193627
 Just need to expand the lifecycle during which we listen for preference changes
 Specifically, instead of listening between onResume and onPause, listen between
 onCreate and onDestroy since the dialog that sets the preference will cause the
 fragment to receive an onPause.

Change-Id: Ibaa62fc722d74840f159d6023af7ec1543ae4541
diff --git a/src/com/android/browser/preferences/GeneralPreferencesFragment.java b/src/com/android/browser/preferences/GeneralPreferencesFragment.java
index d64f062..0c63ab5 100644
--- a/src/com/android/browser/preferences/GeneralPreferencesFragment.java
+++ b/src/com/android/browser/preferences/GeneralPreferencesFragment.java
@@ -68,6 +68,8 @@
                 .getString(BrowserSettings.PREF_HOMEPAGE, null));
         ((BrowserHomepagePreference) e).setCurrentPage(
                 getActivity().getIntent().getStringExtra(BrowserPreferencesPage.CURRENT_PAGE));
+        mSharedPrefs = PreferenceManager.getDefaultSharedPreferences(getActivity());
+        mSharedPrefs.registerOnSharedPreferenceChangeListener(mListener);
     }
 
     @Override
@@ -94,13 +96,11 @@
         // Setup the proper state for the sync with chrome item
         mChromeSync = findPreference(PREF_CHROME_SYNC);
         refreshUi();
-        mSharedPrefs = PreferenceManager.getDefaultSharedPreferences(getActivity());
-        mSharedPrefs.registerOnSharedPreferenceChangeListener(mListener);
     }
 
     @Override
-    public void onPause() {
-        super.onPause();
+    public void onDestroy() {
+        super.onDestroy();
 
         mSharedPrefs.unregisterOnSharedPreferenceChangeListener(mListener);
     }