From 6f02f56f52248a3129da6072ed692591cc1074f6 Mon Sep 17 00:00:00 2001 From: Martijn Coenen Date: Mon, 29 Feb 2016 12:13:56 +0100 Subject: [PATCH] SettingsLib: Always update preference state. In case a RestrictedPreference can also be disabled for other reasons than device admin, the state of RestrictedPreferenceHelper may not be up-to-date with the actual preference state. For example, the "Android Beam" checkbox can be disabled by device policy, but it can also be disabled by Settings itself because NFC was turned off by the user. To fix that, always update the Preference state. Bug: 26907006 Change-Id: I27cde70beb82721dd4d423943a9898e022df8862 --- .../src/com/android/settingslib/RestrictedPreferenceHelper.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/SettingsLib/src/com/android/settingslib/RestrictedPreferenceHelper.java b/packages/SettingsLib/src/com/android/settingslib/RestrictedPreferenceHelper.java index 227b1e8e1b4d5..b96d025a02401 100644 --- a/packages/SettingsLib/src/com/android/settingslib/RestrictedPreferenceHelper.java +++ b/packages/SettingsLib/src/com/android/settingslib/RestrictedPreferenceHelper.java @@ -159,9 +159,9 @@ public class RestrictedPreferenceHelper { public boolean setDisabledByAdmin(EnforcedAdmin admin) { final boolean disabled = (admin != null ? true : false); mEnforcedAdmin = (disabled ? admin : null); + mPreference.setEnabled(!disabled); if (mDisabledByAdmin != disabled) { mDisabledByAdmin = disabled; - mPreference.setEnabled(!disabled); return true; } return false;