Once we decide to show Home settings, keep it shown forever

Principle of Least Surprise FTW.

Bug 11131794

Change-Id: I1df720fa86fb870aa74a5d0074ca966843317f12
diff --git a/src/com/android/settings/Settings.java b/src/com/android/settings/Settings.java
index eb98fec..2b8bde2 100644
--- a/src/com/android/settings/Settings.java
+++ b/src/com/android/settings/Settings.java
@@ -686,6 +686,12 @@
     }
 
     private boolean updateHomeSettingHeaders(Header header) {
+        // Once we decide to show Home settings, keep showing it forever
+        SharedPreferences sp = getSharedPreferences(HomeSettings.HOME_PREFS, Context.MODE_PRIVATE);
+        if (sp.getBoolean(HomeSettings.HOME_PREFS_DO_SHOW, false)) {
+            return true;
+        }
+
         try {
             final ArrayList<ResolveInfo> homeApps = new ArrayList<ResolveInfo>();
             getPackageManager().getHomeActivities(homeApps);
@@ -712,6 +718,8 @@
             // Can't look up the home activity; bail on configuring the icon
             Log.w(LOG_TAG, "Problem looking up home activity!", e);
         }
+
+        sp.edit().putBoolean(HomeSettings.HOME_PREFS_DO_SHOW, true).apply();
         return true;
     }