diff --git a/res/values/strings.xml b/res/values/strings.xml index d87d98fa73e..a927cf48b42 100644 --- a/res/values/strings.xml +++ b/res/values/strings.xml @@ -985,6 +985,9 @@ High security + + Current screen lock + Device protection features will no longer work. diff --git a/src/com/android/settings/ChooseLockGeneric.java b/src/com/android/settings/ChooseLockGeneric.java index 6d31e604f4a..7dac8847c4b 100644 --- a/src/com/android/settings/ChooseLockGeneric.java +++ b/src/com/android/settings/ChooseLockGeneric.java @@ -244,12 +244,40 @@ public class ChooseLockGeneric extends SettingsActivity { } addPreferencesFromResource(R.xml.security_settings_picker); disableUnusablePreferences(quality, hideDisabledPrefs); + updateCurrentPreference(); updatePreferenceSummaryIfNeeded(); } else { updateUnlockMethodAndFinish(quality, false); } } + private void updateCurrentPreference() { + String currentKey = getKeyForCurrent(); + Preference preference = findPreference(currentKey); + if (preference != null) { + preference.setSummary(R.string.current_screen_lock); + } + } + + private String getKeyForCurrent() { + if (mLockPatternUtils.isLockScreenDisabled()) { + return KEY_UNLOCK_SET_OFF; + } + switch (mLockPatternUtils.getKeyguardStoredPasswordQuality()) { + case DevicePolicyManager.PASSWORD_QUALITY_SOMETHING: + return KEY_UNLOCK_SET_PATTERN; + case DevicePolicyManager.PASSWORD_QUALITY_NUMERIC: + case DevicePolicyManager.PASSWORD_QUALITY_NUMERIC_COMPLEX: + return KEY_UNLOCK_SET_PIN; + case DevicePolicyManager.PASSWORD_QUALITY_ALPHABETIC: + case DevicePolicyManager.PASSWORD_QUALITY_ALPHANUMERIC: + return KEY_UNLOCK_SET_PASSWORD; + case DevicePolicyManager.PASSWORD_QUALITY_UNSPECIFIED: + return KEY_UNLOCK_SET_NONE; + } + return null; + } + /** increases the quality if necessary */ private int upgradeQuality(int quality) { quality = upgradeQualityForDPM(quality);