Support for nested bundles in setApplicationRestrictions
Replaced RestrictionUtils.restrictionsToBundle with RestrictionsManager.
convertRestrictionsToBundle.
Bug: 19540606
Change-Id: I32b264e04d5d177ea5b4c39a8ace5ee0ce907970
diff --git a/src/com/android/settings/users/AppRestrictionsFragment.java b/src/com/android/settings/users/AppRestrictionsFragment.java
index e09d650..a166f0d 100644
--- a/src/com/android/settings/users/AppRestrictionsFragment.java
+++ b/src/com/android/settings/users/AppRestrictionsFragment.java
@@ -23,6 +23,7 @@
import android.content.Intent;
import android.content.IntentFilter;
import android.content.RestrictionEntry;
+import android.content.RestrictionsManager;
import android.content.pm.ActivityInfo;
import android.content.pm.ApplicationInfo;
import android.content.pm.IPackageManager;
@@ -841,7 +842,7 @@
continue;
}
mUserManager.setApplicationRestrictions(packageName,
- RestrictionUtils.restrictionsToBundle(restrictions),
+ RestrictionsManager.convertRestrictionsToBundle(restrictions),
mUser);
break;
}
@@ -915,7 +916,7 @@
onRestrictionsReceived(preference, packageName, restrictions);
if (mRestrictedProfile) {
mUserManager.setApplicationRestrictions(packageName,
- RestrictionUtils.restrictionsToBundle(restrictions), mUser);
+ RestrictionsManager.convertRestrictionsToBundle(restrictions), mUser);
}
} else if (restrictionsIntent != null) {
preference.setRestrictions(restrictions);
@@ -1046,7 +1047,7 @@
// If there's a valid result, persist it to the user manager.
pref.setRestrictions(list);
mUserManager.setApplicationRestrictions(packageName,
- RestrictionUtils.restrictionsToBundle(list), mUser);
+ RestrictionsManager.convertRestrictionsToBundle(list), mUser);
} else if (bundle != null) {
// If there's a valid result, persist it to the user manager.
mUserManager.setApplicationRestrictions(packageName, bundle, mUser);
diff --git a/src/com/android/settings/users/RestrictionUtils.java b/src/com/android/settings/users/RestrictionUtils.java
index e8d46e9..b36cb3e 100644
--- a/src/com/android/settings/users/RestrictionUtils.java
+++ b/src/com/android/settings/users/RestrictionUtils.java
@@ -90,18 +90,4 @@
}
um.setUserRestrictions(userRestrictions, user);
}
-
- public static Bundle restrictionsToBundle(ArrayList<RestrictionEntry> entries) {
- final Bundle bundle = new Bundle();
- for (RestrictionEntry entry : entries) {
- if (entry.getType() == RestrictionEntry.TYPE_BOOLEAN) {
- bundle.putBoolean(entry.getKey(), entry.getSelectedState());
- } else if (entry.getType() == RestrictionEntry.TYPE_MULTI_SELECT) {
- bundle.putStringArray(entry.getKey(), entry.getAllSelectedStrings());
- } else {
- bundle.putString(entry.getKey(), entry.getSelectedString());
- }
- }
- return bundle;
- }
}