diff --git a/res/xml/security_settings_misc.xml b/res/xml/security_settings_misc.xml index 6f9311af4ad..41a84b9f2e4 100644 --- a/res/xml/security_settings_misc.xml +++ b/res/xml/security_settings_misc.xml @@ -60,7 +60,8 @@ android:persistent="false" /> - 0) { - return root; - } - // Rest are for primary user... - - // Append the rest of the settings - addPreferencesFromResource(R.xml.security_settings_misc); - - // Do not display SIM lock for devices without an Icc card - TelephonyManager tm = TelephonyManager.getDefault(); - if (!tm.hasIccCard()) { - root.removePreference(root.findPreference(KEY_SIM_LOCK)); - } else { - // Disable SIM lock if sim card is missing or unknown - if ((TelephonyManager.getDefault().getSimState() == - TelephonyManager.SIM_STATE_ABSENT) || - (TelephonyManager.getDefault().getSimState() == - TelephonyManager.SIM_STATE_UNKNOWN)) { - root.findPreference(KEY_SIM_LOCK).setEnabled(false); - } - } - - // Show password - mShowPassword = (CheckBoxPreference) root.findPreference(KEY_SHOW_PASSWORD); - - // Credential storage - mResetCredentials = root.findPreference(KEY_RESET_CREDENTIALS); - - mToggleAppInstallation = (CheckBoxPreference) findPreference( - KEY_TOGGLE_INSTALL_APPLICATIONS); - mToggleAppInstallation.setChecked(isNonMarketAppsAllowed()); - - // Package verification - if (showVerifierSetting()) { - mToggleVerifyApps = (CheckBoxPreference) findPreference(KEY_TOGGLE_VERIFY_APPLICATIONS); - if (isVerifierInstalled()) { - mToggleVerifyApps.setChecked(isVerifyAppsEnabled()); - } else { - mToggleVerifyApps.setChecked(false); - mToggleVerifyApps.setEnabled(false); - } - } - mUserSelectedWidget = root.findPreference(KEY_CHOOSE_LOCKSCREEN_STATUS_WIDGET); if (mUserSelectedWidget != null) { AppWidgetManager appWidgetManager = AppWidgetManager.getInstance(getActivity()); @@ -287,6 +249,50 @@ public class SecuritySettings extends SettingsPreferenceFragment } } + // Append the rest of the settings + addPreferencesFromResource(R.xml.security_settings_misc); + + // Do not display SIM lock for devices without an Icc card + TelephonyManager tm = TelephonyManager.getDefault(); + if (!mIsPrimary || !tm.hasIccCard()) { + root.removePreference(root.findPreference(KEY_SIM_LOCK)); + } else { + // Disable SIM lock if sim card is missing or unknown + if ((TelephonyManager.getDefault().getSimState() == + TelephonyManager.SIM_STATE_ABSENT) || + (TelephonyManager.getDefault().getSimState() == + TelephonyManager.SIM_STATE_UNKNOWN)) { + root.findPreference(KEY_SIM_LOCK).setEnabled(false); + } + } + + // Show password + mShowPassword = (CheckBoxPreference) root.findPreference(KEY_SHOW_PASSWORD); + + // Credential storage, only for primary user + if (mIsPrimary) { + mResetCredentials = root.findPreference(KEY_RESET_CREDENTIALS); + } else { + removePreference(KEY_CREDENTIALS_MANAGER); + } + + mToggleAppInstallation = (CheckBoxPreference) findPreference( + KEY_TOGGLE_INSTALL_APPLICATIONS); + mToggleAppInstallation.setChecked(isNonMarketAppsAllowed()); + + // Package verification, only visible to primary user and if enabled + mToggleVerifyApps = (CheckBoxPreference) findPreference(KEY_TOGGLE_VERIFY_APPLICATIONS); + if (mIsPrimary && showVerifierSetting()) { + if (isVerifierInstalled()) { + mToggleVerifyApps.setChecked(isVerifyAppsEnabled()); + } else { + mToggleVerifyApps.setChecked(false); + mToggleVerifyApps.setEnabled(false); + } + } else if (mToggleVerifyApps != null) { + mToggleVerifyApps.setEnabled(false); + } + return root; }