diff options
author | Adnan Begovic <adnan@cyngn.com> | 2016-02-24 16:02:00 -0800 |
---|---|---|
committer | Gerrit Code Review <gerrit@cyanogenmod.org> | 2016-02-29 06:56:36 -0800 |
commit | 5d79a9edfa606cb8900c59b1e528a4c39cdf4737 (patch) | |
tree | f89b107cc3ab7047963c8ef1e7bee7675f89d53e /src/com/android/settings/SecuritySettings.java | |
parent | 672db85f3a9bd6690c823eee2866dc1740e110fd (diff) | |
download | packages_apps_Settings-5d79a9edfa606cb8900c59b1e528a4c39cdf4737.zip packages_apps_Settings-5d79a9edfa606cb8900c59b1e528a4c39cdf4737.tar.gz packages_apps_Settings-5d79a9edfa606cb8900c59b1e528a4c39cdf4737.tar.bz2 |
Settings: Meet BYOD check intent filter expectations.
CTS Verifier expects SecuritySettings to contain Lockscreen options, thus
if SecuritySettings are externally invoked and disambiguated by intent
resolution, we need to display both lockscreen options and security options.
AOSP provides an activity that handles android.settings.BATTERY_SAVER_SETTINGS
thus, we provide an activity-alias that points to the PowerUsage menu
to meet the expectation of the cts verifier request.
Change-Id: I6f06b031e341e8a63ffdd765884b49fd1c079825
TICKET: CYNGNOS-2105
Diffstat (limited to 'src/com/android/settings/SecuritySettings.java')
-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 bb7d147..1969dcb 100644 --- a/src/com/android/settings/SecuritySettings.java +++ b/src/com/android/settings/SecuritySettings.java @@ -87,6 +87,7 @@ public class SecuritySettings extends SettingsPreferenceFragment protected static final String FILTER_TYPE_EXTRA = "filter_type"; protected static final int TYPE_LOCKSCREEN_EXTRA = 0; private static final int TYPE_SECURITY_EXTRA = 1; + private static final int TYPE_EXTERNAL_RESOLUTION = 2; // Lock Settings private static final String KEY_UNLOCK_SET_OR_CHANGE = "unlock_set_or_change"; @@ -191,6 +192,12 @@ public class SecuritySettings extends SettingsPreferenceFragment } } + Bundle extras = getActivity().getIntent().getExtras(); + // Even uglier hack to make cts verifier expectations make sense. + if (extras.get(SettingsActivity.EXTRA_SHOW_FRAGMENT_ARGUMENTS) != null) { + mFilterType = TYPE_EXTERNAL_RESOLUTION; + } + mSubscriptionManager = SubscriptionManager.from(getActivity()); mLockPatternUtils = new LockPatternUtils(getActivity()); @@ -263,7 +270,7 @@ public class SecuritySettings extends SettingsPreferenceFragment root.addPreference(mLockscreenDisabledPreference); } - if (mFilterType == TYPE_LOCKSCREEN_EXTRA) { + if (mFilterType == TYPE_LOCKSCREEN_EXTRA || mFilterType == TYPE_EXTERNAL_RESOLUTION) { // Add options for lock/unlock screen final int resid = getResIdForLockUnlockScreen(getActivity(), mLockPatternUtils); addPreferencesFromResource(resid); @@ -280,7 +287,8 @@ public class SecuritySettings extends SettingsPreferenceFragment } } - if (mIsPrimary && mFilterType == TYPE_SECURITY_EXTRA) { + if (mIsPrimary && mFilterType == TYPE_SECURITY_EXTRA + || mFilterType == TYPE_EXTERNAL_RESOLUTION) { if (LockPatternUtils.isDeviceEncryptionEnabled()) { // The device is currently encrypted. addPreferencesFromResource(R.xml.security_settings_encrypted); @@ -290,7 +298,7 @@ public class SecuritySettings extends SettingsPreferenceFragment } } - if (mFilterType == TYPE_LOCKSCREEN_EXTRA) { + if (mFilterType == TYPE_LOCKSCREEN_EXTRA || mFilterType == TYPE_EXTERNAL_RESOLUTION) { // Fingerprint and trust agents PreferenceGroup securityCategory = (PreferenceGroup) root.findPreference(KEY_SECURITY_CATEGORY); |