diff options
author | Jim Miller <jaggies@google.com> | 2014-08-21 19:24:47 -0700 |
---|---|---|
committer | Jim Miller <jaggies@google.com> | 2014-08-21 19:46:26 -0700 |
commit | 9d25005e7ab39bcc14722f7bdb977ceccb6107dc (patch) | |
tree | c1decb64e251819db8cd6805bb7f563fbfca8231 /src | |
parent | 2534be37462f9ab5c98ca07758d71f98019eddf4 (diff) | |
download | packages_apps_Settings-9d25005e7ab39bcc14722f7bdb977ceccb6107dc.zip packages_apps_Settings-9d25005e7ab39bcc14722f7bdb977ceccb6107dc.tar.gz packages_apps_Settings-9d25005e7ab39bcc14722f7bdb977ceccb6107dc.tar.bz2 |
Show trust agent entries as disabled rather than removing them.
Fixes bug 17108810
Change-Id: I646f5c299cd680d5c3a4978610f3852eba4b116b
Diffstat (limited to 'src')
-rw-r--r-- | src/com/android/settings/SecuritySettings.java | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/src/com/android/settings/SecuritySettings.java b/src/com/android/settings/SecuritySettings.java index d3a290b..7798937 100644 --- a/src/com/android/settings/SecuritySettings.java +++ b/src/com/android/settings/SecuritySettings.java @@ -225,7 +225,8 @@ public class SecuritySettings extends SettingsPreferenceFragment // Trust Agent preferences PreferenceGroup securityCategory = (PreferenceGroup) root.findPreference(KEY_SECURITY_CATEGORY); - if (securityCategory != null && mLockPatternUtils.isSecure()) { + if (securityCategory != null) { + final boolean hasSecurity = mLockPatternUtils.isSecure(); ArrayList<TrustAgentComponentInfo> agents = getActiveTrustAgents(getPackageManager(), mLockPatternUtils); for (int i = 0; i < agents.size(); i++) { @@ -242,6 +243,10 @@ public class SecuritySettings extends SettingsPreferenceFragment trustAgentPreference.setIntent(intent); // Add preference to the settings menu. securityCategory.addPreference(trustAgentPreference); + if (!hasSecurity) { + trustAgentPreference.setEnabled(false); + trustAgentPreference.setSummary(R.string.disabled_because_no_backup_security); + } } } @@ -340,9 +345,12 @@ public class SecuritySettings extends SettingsPreferenceFragment // Advanced Security features PreferenceGroup advancedCategory = (PreferenceGroup)root.findPreference(KEY_ADVANCED_SECURITY); - if (advancedCategory != null && !mLockPatternUtils.isSecure()) { + if (advancedCategory != null) { Preference manageAgents = advancedCategory.findPreference(KEY_MANAGE_TRUST_AGENTS); - if (manageAgents != null) advancedCategory.removePreference(manageAgents); + if (manageAgents != null && !mLockPatternUtils.isSecure()) { + manageAgents.setEnabled(false); + manageAgents.setSummary(R.string.disabled_because_no_backup_security); + } } // The above preferences come and go based on security state, so we need to update |