OSDN Git Service

Settings app should be available to restricted user
authorFyodor Kupolov <fkupolov@google.com>
Mon, 2 Mar 2015 18:59:23 +0000 (10:59 -0800)
committerFyodor Kupolov <fkupolov@google.com>
Mon, 2 Mar 2015 19:01:03 +0000 (11:01 -0800)
Fixed a regression, caused by collapsing location and settings entries
into a single preference. Now settings package is explicitly enabled.

Bug: 19434520
Change-Id: I05440d04c100b6a5ee5573ac116bfb4d66782aa8

src/com/android/settings/users/AppRestrictionsFragment.java

index 37b1813..53fdf1b 100644 (file)
@@ -317,10 +317,6 @@ public class AppRestrictionsFragment extends SettingsPreferenceFragment implemen
         return getPreferenceScreen();
     }
 
-    protected void clearSelectedApps() {
-        mSelectedPackages.clear();
-    }
-
     private void applyUserAppsStates() {
         final int userId = mUser.getIdentifier();
         if (!mUserManager.getUserInfo(userId).isRestricted() && userId != UserHandle.myUserId()) {
@@ -643,6 +639,8 @@ public class AppRestrictionsFragment extends SettingsPreferenceFragment implemen
             final boolean hasSettings = resolveInfoListHasPackage(receivers, packageName);
             if (isSettingsApp) {
                 addLocationAppRestrictionsPreference(app, p);
+                // Settings app should be available to restricted user
+                mSelectedPackages.put(packageName, true);
                 continue;
             }
             PackageInfo pi = null;
@@ -687,7 +685,8 @@ public class AppRestrictionsFragment extends SettingsPreferenceFragment implemen
                 p.setChecked(mSelectedPackages.get(packageName));
             }
             p.setOrder(MAX_APP_RESTRICTIONS * (mAppList.getPreferenceCount() + 2));
-            addToAppList(p, packageName);
+            mSelectedPackages.put(packageName, p.isChecked());
+            mAppList.addPreference(p);
         }
         mAppListChanged = true;
         // If this is the first time for a new profile, install/uninstall default apps for profile
@@ -736,11 +735,6 @@ public class AppRestrictionsFragment extends SettingsPreferenceFragment implemen
         p.setPersistent(false);
         p.setOnPreferenceClickListener(this);
         p.setOrder(MAX_APP_RESTRICTIONS);
-        addToAppList(p, packageName);
-    }
-
-    private void addToAppList(AppRestrictionsPreference p, String packageName) {
-        mSelectedPackages.put(packageName, p.isChecked());
         mAppList.addPreference(p);
     }