diff options
author | Adrian Roos <roosa@google.com> | 2015-04-16 17:11:22 -0700 |
---|---|---|
committer | Adrian Roos <roosa@google.com> | 2015-04-28 12:01:09 -0700 |
commit | 5437588abd69bf3eff59684528aaf50e09b6cffc (patch) | |
tree | e2b8b27419fbf1473748b6550d224b6212c185a2 /src/com/android/settings/SecuritySettings.java | |
parent | bc95630994227736aff46885ca1d9345829e83e2 (diff) | |
download | packages_apps_Settings-5437588abd69bf3eff59684528aaf50e09b6cffc.zip packages_apps_Settings-5437588abd69bf3eff59684528aaf50e09b6cffc.tar.gz packages_apps_Settings-5437588abd69bf3eff59684528aaf50e09b6cffc.tar.bz2 |
Require explicit userId in LockPatternUtils
Bug: 18931518
Change-Id: Ie2faa18918aaadf17a84287898438549a693b0cc
Diffstat (limited to 'src/com/android/settings/SecuritySettings.java')
-rw-r--r-- | src/com/android/settings/SecuritySettings.java | 41 |
1 files changed, 23 insertions, 18 deletions
diff --git a/src/com/android/settings/SecuritySettings.java b/src/com/android/settings/SecuritySettings.java index 132281f..1c0f445 100644 --- a/src/com/android/settings/SecuritySettings.java +++ b/src/com/android/settings/SecuritySettings.java @@ -111,6 +111,8 @@ public class SecuritySettings extends SettingsPreferenceFragment // Only allow one trust agent on the platform. private static final boolean ONLY_ONE_TRUST_AGENT = true; + private static final int MY_USER_ID = UserHandle.myUserId(); + private DevicePolicyManager mDPM; private SubscriptionManager mSubscriptionManager; @@ -160,14 +162,14 @@ public class SecuritySettings extends SettingsPreferenceFragment private static int getResIdForLockUnlockScreen(Context context, LockPatternUtils lockPatternUtils) { int resid = 0; - if (!lockPatternUtils.isSecure()) { - if (lockPatternUtils.isLockScreenDisabled()) { + if (!lockPatternUtils.isSecure(MY_USER_ID)) { + if (lockPatternUtils.isLockScreenDisabled(MY_USER_ID)) { resid = R.xml.security_settings_lockscreen; } else { resid = R.xml.security_settings_chooser; } } else { - switch (lockPatternUtils.getKeyguardStoredPasswordQuality()) { + switch (lockPatternUtils.getKeyguardStoredPasswordQuality(MY_USER_ID)) { case DevicePolicyManager.PASSWORD_QUALITY_SOMETHING: resid = R.xml.security_settings_pattern; break; @@ -204,7 +206,7 @@ public class SecuritySettings extends SettingsPreferenceFragment addPreferencesFromResource(resid); // Add options for device encryption - mIsPrimary = UserHandle.myUserId() == UserHandle.USER_OWNER; + mIsPrimary = MY_USER_ID == UserHandle.USER_OWNER; mOwnerInfoPref = findPreference(KEY_OWNER_INFO_SETTINGS); if (mOwnerInfoPref != null) { @@ -304,7 +306,7 @@ public class SecuritySettings extends SettingsPreferenceFragment mToggleAppInstallation.setChecked(isNonMarketAppsAllowed()); // Side loading of apps. // Disable for restricted profiles. For others, check if policy disallows it. - mToggleAppInstallation.setEnabled(!um.getUserInfo(UserHandle.myUserId()).isRestricted()); + mToggleAppInstallation.setEnabled(!um.getUserInfo(MY_USER_ID).isRestricted()); if (um.hasUserRestriction(UserManager.DISALLOW_INSTALL_UNKNOWN_SOURCES) || um.hasUserRestriction(UserManager.DISALLOW_INSTALL_APPS)) { mToggleAppInstallation.setEnabled(false); @@ -315,7 +317,7 @@ public class SecuritySettings extends SettingsPreferenceFragment (PreferenceGroup)root.findPreference(KEY_ADVANCED_SECURITY); if (advancedCategory != null) { Preference manageAgents = advancedCategory.findPreference(KEY_MANAGE_TRUST_AGENTS); - if (manageAgents != null && !mLockPatternUtils.isSecure()) { + if (manageAgents != null && !mLockPatternUtils.isSecure(MY_USER_ID)) { manageAgents.setEnabled(false); manageAgents.setSummary(R.string.disabled_because_no_backup_security); } @@ -348,7 +350,8 @@ public class SecuritySettings extends SettingsPreferenceFragment final List<Fingerprint> items = fpm.getEnrolledFingerprints(); final int fingerprintCount = items != null ? items.size() : 0; final String clazz; - boolean hasPassword = mChooseLockSettingsHelper.utils().getActivePasswordQuality() + boolean hasPassword = mChooseLockSettingsHelper.utils().getActivePasswordQuality( + MY_USER_ID) != DevicePolicyManager.PASSWORD_QUALITY_UNSPECIFIED; if (fingerprintCount > 0) { fingerprintPreference.setSummary(getResources().getQuantityString( @@ -368,7 +371,7 @@ public class SecuritySettings extends SettingsPreferenceFragment } private void addTrustAgentSettings(PreferenceGroup securityCategory) { - final boolean hasSecurity = mLockPatternUtils.isSecure(); + final boolean hasSecurity = mLockPatternUtils.isSecure(MY_USER_ID); ArrayList<TrustAgentComponentInfo> agents = getActiveTrustAgents(getPackageManager(), mLockPatternUtils, mDPM); for (int i = 0; i < agents.size(); i++) { @@ -438,7 +441,7 @@ public class SecuritySettings extends SettingsPreferenceFragment ArrayList<TrustAgentComponentInfo> result = new ArrayList<TrustAgentComponentInfo>(); List<ResolveInfo> resolveInfos = pm.queryIntentServices(TRUST_AGENT_INTENT, PackageManager.GET_META_DATA); - List<ComponentName> enabledTrustAgents = utils.getEnabledTrustAgents(); + List<ComponentName> enabledTrustAgents = utils.getEnabledTrustAgents(MY_USER_ID); boolean disableTrustAgents = (dpm.getKeyguardDisabledFeatures(null) & DevicePolicyManager.KEYGUARD_DISABLE_TRUST_AGENTS) != 0; @@ -597,10 +600,12 @@ public class SecuritySettings extends SettingsPreferenceFragment final LockPatternUtils lockPatternUtils = mChooseLockSettingsHelper.utils(); if (mVisiblePattern != null) { - mVisiblePattern.setChecked(lockPatternUtils.isVisiblePatternEnabled()); + mVisiblePattern.setChecked(lockPatternUtils.isVisiblePatternEnabled( + MY_USER_ID)); } if (mPowerButtonInstantlyLocks != null) { - mPowerButtonInstantlyLocks.setChecked(lockPatternUtils.getPowerButtonInstantlyLocks()); + mPowerButtonInstantlyLocks.setChecked(lockPatternUtils.getPowerButtonInstantlyLocks( + MY_USER_ID)); } if (mShowPassword != null) { @@ -617,8 +622,8 @@ public class SecuritySettings extends SettingsPreferenceFragment public void updateOwnerInfo() { if (mOwnerInfoPref != null) { - mOwnerInfoPref.setSummary(mLockPatternUtils.isOwnerInfoEnabled() - ? mLockPatternUtils.getOwnerInfo(UserHandle.myUserId()) + mOwnerInfoPref.setSummary(mLockPatternUtils.isOwnerInfoEnabled(MY_USER_ID) + ? mLockPatternUtils.getOwnerInfo(MY_USER_ID) : getString(R.string.owner_info_settings_summary)); } } @@ -678,9 +683,9 @@ public class SecuritySettings extends SettingsPreferenceFragment } updateLockAfterPreferenceSummary(); } else if (KEY_VISIBLE_PATTERN.equals(key)) { - lockPatternUtils.setVisiblePatternEnabled((Boolean) value); + lockPatternUtils.setVisiblePatternEnabled((Boolean) value, MY_USER_ID); } else if (KEY_POWER_INSTANTLY_LOCKS.equals(key)) { - mLockPatternUtils.setPowerButtonInstantlyLocks((Boolean) value); + mLockPatternUtils.setPowerButtonInstantlyLocks((Boolean) value, MY_USER_ID); } else if (KEY_SHOW_PASSWORD.equals(key)) { Settings.System.putInt(getContentResolver(), Settings.System.TEXT_SHOW_PASSWORD, ((Boolean) value) ? 1 : 0); @@ -715,7 +720,7 @@ public class SecuritySettings extends SettingsPreferenceFragment public SecuritySearchIndexProvider() { super(); - mIsPrimary = UserHandle.myUserId() == UserHandle.USER_OWNER; + mIsPrimary = MY_USER_ID == UserHandle.USER_OWNER; } @Override @@ -800,7 +805,7 @@ public class SecuritySettings extends SettingsPreferenceFragment // Advanced final LockPatternUtils lockPatternUtils = new LockPatternUtils(context); - if (lockPatternUtils.isSecure()) { + if (lockPatternUtils.isSecure(MY_USER_ID)) { ArrayList<TrustAgentComponentInfo> agents = getActiveTrustAgents(context.getPackageManager(), lockPatternUtils, context.getSystemService(DevicePolicyManager.class)); @@ -835,7 +840,7 @@ public class SecuritySettings extends SettingsPreferenceFragment } // TrustAgent settings disappear when the user has no primary security. - if (!lockPatternUtils.isSecure()) { + if (!lockPatternUtils.isSecure(MY_USER_ID)) { keys.add(KEY_TRUST_AGENT); keys.add(KEY_MANAGE_TRUST_AGENTS); } |