summaryrefslogtreecommitdiff
path: root/packages/SettingsLib/src/com/android/settingslib/RestrictedPreference.java
diff options
context:
space:
mode:
authorSudheer Shanka <sudheersai@google.com>2016-01-13 19:57:11 +0000
committerSudheer Shanka <sudheersai@google.com>2016-01-14 16:25:56 +0000
commitea088af5c12e25995a3992413c8f413abc22eeab (patch)
tree7005609c93ea4429d7bc2c158dc13042115f3ae1 /packages/SettingsLib/src/com/android/settingslib/RestrictedPreference.java
parent0c57596905977e7243a9e4bae9dbf7a18742ec54 (diff)
Made changes to padlock support for preferences.
- Currently, if a preference is disabled by admin, we add a padlock and disable the preference. And now if the preference is enabled in some other place, the padlock is not removed. Updated RestrictedPreference to fix this behavior. - Made RestrictedPreferenceHelper and RestrictedPreferenceHelper.onAttachedToHierarchy public so that preferences in Settings can use these. - Put a check for null to avoid NullPointerException. - Removed a redundant statement. Change-Id: Ie88a761dc38c58a680c62b3703d2081c67462079
Diffstat (limited to 'packages/SettingsLib/src/com/android/settingslib/RestrictedPreference.java')
-rw-r--r--packages/SettingsLib/src/com/android/settingslib/RestrictedPreference.java9
1 files changed, 9 insertions, 0 deletions
diff --git a/packages/SettingsLib/src/com/android/settingslib/RestrictedPreference.java b/packages/SettingsLib/src/com/android/settingslib/RestrictedPreference.java
index 569017a6af36..13a46d093549 100644
--- a/packages/SettingsLib/src/com/android/settingslib/RestrictedPreference.java
+++ b/packages/SettingsLib/src/com/android/settingslib/RestrictedPreference.java
@@ -79,6 +79,15 @@ public class RestrictedPreference extends Preference {
mHelper.checkRestrictionAndSetDisabled(userRestriction, userId);
}
+ @Override
+ public void setEnabled(boolean enabled) {
+ if (enabled && isDisabledByAdmin()) {
+ mHelper.setDisabledByAdmin(null);
+ return;
+ }
+ super.setEnabled(enabled);
+ }
+
public void setDisabledByAdmin(EnforcedAdmin admin) {
if (mHelper.setDisabledByAdmin(admin)) {
notifyChanged();