summaryrefslogtreecommitdiffstats
path: root/src/com/android/settings/SecuritySettings.java
diff options
context:
space:
mode:
authorJim Miller <jaggies@google.com>2014-08-21 19:24:47 -0700
committerJim Miller <jaggies@google.com>2014-08-21 19:46:26 -0700
commit9d25005e7ab39bcc14722f7bdb977ceccb6107dc (patch)
treec1decb64e251819db8cd6805bb7f563fbfca8231 /src/com/android/settings/SecuritySettings.java
parent2534be37462f9ab5c98ca07758d71f98019eddf4 (diff)
downloadpackages_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/com/android/settings/SecuritySettings.java')
-rw-r--r--src/com/android/settings/SecuritySettings.java14
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