Search in sources :

Example 56 with ChooseLockSettingsHelper

use of com.android.settings.password.ChooseLockSettingsHelper in project android_packages_apps_Settings by crdroidandroid.

the class SecuritySettings method onCreate.

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    final Activity activity = getActivity();
    mSubscriptionManager = SubscriptionManager.from(activity);
    mLockPatternUtils = new LockPatternUtils(activity);
    mManagedPasswordProvider = ManagedLockPasswordProvider.get(activity, MY_USER_ID);
    mDPM = (DevicePolicyManager) getSystemService(Context.DEVICE_POLICY_SERVICE);
    mUm = UserManager.get(activity);
    mChooseLockSettingsHelper = new ChooseLockSettingsHelper(activity);
    mDashboardFeatureProvider = FeatureFactory.getFactory(activity).getDashboardFeatureProvider(activity);
    mSecurityFeatureProvider = FeatureFactory.getFactory(activity).getSecurityFeatureProvider();
    mTrustAgentManager = mSecurityFeatureProvider.getTrustAgentManager();
    if (savedInstanceState != null && savedInstanceState.containsKey(TRUST_AGENT_CLICK_INTENT)) {
        mTrustAgentClickIntent = savedInstanceState.getParcelable(TRUST_AGENT_CLICK_INTENT);
    }
    mManageDeviceAdminPreferenceController = new ManageDeviceAdminPreferenceController(activity);
    mEnterprisePrivacyPreferenceController = new EnterprisePrivacyPreferenceController(activity, null);
    mLockScreenNotificationPreferenceController = new LockScreenNotificationPreferenceController(activity);
}
Also used : ChooseLockSettingsHelper(com.android.settings.password.ChooseLockSettingsHelper) ManageDeviceAdminPreferenceController(com.android.settings.enterprise.ManageDeviceAdminPreferenceController) EnterprisePrivacyPreferenceController(com.android.settings.enterprise.EnterprisePrivacyPreferenceController) LineageLockPatternUtils(org.lineageos.internal.util.LineageLockPatternUtils) LockPatternUtils(com.android.internal.widget.LockPatternUtils) Activity(android.app.Activity) LockScreenNotificationPreferenceController(com.android.settings.notification.LockScreenNotificationPreferenceController)

Example 57 with ChooseLockSettingsHelper

use of com.android.settings.password.ChooseLockSettingsHelper in project android_packages_apps_Settings by crdroidandroid.

the class SecuritySettings method onPreferenceTreeClick.

@Override
public boolean onPreferenceTreeClick(Preference preference) {
    final String key = preference.getKey();
    if (KEY_UNLOCK_SET_OR_CHANGE.equals(key)) {
        // able to complete the operation due to the lack of (old) encryption key.
        if (mProfileChallengeUserId != UserHandle.USER_NULL && !mLockPatternUtils.isSeparateProfileChallengeEnabled(mProfileChallengeUserId) && StorageManager.isFileEncryptedNativeOnly()) {
            if (Utils.startQuietModeDialogIfNecessary(this.getActivity(), mUm, mProfileChallengeUserId)) {
                return false;
            }
        }
        startFragment(this, ChooseLockGenericFragment.class.getName(), R.string.lock_settings_picker_title, SET_OR_CHANGE_LOCK_METHOD_REQUEST, null);
    } else if (KEY_UNLOCK_SET_OR_CHANGE_PROFILE.equals(key)) {
        if (Utils.startQuietModeDialogIfNecessary(this.getActivity(), mUm, mProfileChallengeUserId)) {
            return false;
        }
        Bundle extras = new Bundle();
        extras.putInt(Intent.EXTRA_USER_ID, mProfileChallengeUserId);
        startFragment(this, ChooseLockGenericFragment.class.getName(), R.string.lock_settings_picker_title_profile, SET_OR_CHANGE_LOCK_METHOD_REQUEST_PROFILE, extras);
    } else if (KEY_TRUST_AGENT.equals(key)) {
        ChooseLockSettingsHelper helper = new ChooseLockSettingsHelper(this.getActivity(), this);
        mTrustAgentClickIntent = preference.getIntent();
        boolean confirmationLaunched = helper.launchConfirmationActivity(CHANGE_TRUST_AGENT_SETTINGS, preference.getTitle());
        if (!confirmationLaunched && mTrustAgentClickIntent != null) {
            // If this returns false, it means no password confirmation is required.
            startActivity(mTrustAgentClickIntent);
            mTrustAgentClickIntent = null;
        }
    } else {
        // If we didn't handle it, let preferences handle it.
        return super.onPreferenceTreeClick(preference);
    }
    return true;
}
Also used : ChooseLockSettingsHelper(com.android.settings.password.ChooseLockSettingsHelper) Bundle(android.os.Bundle) PersistableBundle(android.os.PersistableBundle) ChooseLockGenericFragment(com.android.settings.password.ChooseLockGeneric.ChooseLockGenericFragment)

Example 58 with ChooseLockSettingsHelper

use of com.android.settings.password.ChooseLockSettingsHelper in project android_packages_apps_Settings by SudaMod.

the class SecuritySettings method onPreferenceChange.

@Override
public boolean onPreferenceChange(Preference preference, Object value) {
    boolean result = true;
    final String key = preference.getKey();
    final LockPatternUtils lockPatternUtils = mChooseLockSettingsHelper.utils();
    if (KEY_VISIBLE_PATTERN_PROFILE.equals(key)) {
        if (Utils.startQuietModeDialogIfNecessary(this.getActivity(), mUm, mProfileChallengeUserId)) {
            return false;
        }
        lockPatternUtils.setVisiblePatternEnabled((Boolean) value, mProfileChallengeUserId);
    } else if (KEY_UNIFICATION.equals(key)) {
        if (Utils.startQuietModeDialogIfNecessary(this.getActivity(), mUm, mProfileChallengeUserId)) {
            return false;
        }
        if ((Boolean) value) {
            final boolean compliantForDevice = (mLockPatternUtils.getKeyguardStoredPasswordQuality(mProfileChallengeUserId) >= DevicePolicyManager.PASSWORD_QUALITY_SOMETHING && mLockPatternUtils.isSeparateProfileChallengeAllowedToUnify(mProfileChallengeUserId));
            UnificationConfirmationDialog dialog = UnificationConfirmationDialog.newIntance(compliantForDevice);
            dialog.show(getChildFragmentManager(), TAG_UNIFICATION_DIALOG);
        } else {
            final String title = getActivity().getString(R.string.unlock_set_unlock_launch_picker_title);
            final ChooseLockSettingsHelper helper = new ChooseLockSettingsHelper(getActivity(), this);
            if (!helper.launchConfirmationActivity(UNUNIFY_LOCK_CONFIRM_DEVICE_REQUEST, title, true, MY_USER_ID)) {
                ununifyLocks();
            }
        }
    } else if (KEY_SHOW_PASSWORD.equals(key)) {
        Settings.System.putInt(getContentResolver(), Settings.System.TEXT_SHOW_PASSWORD, ((Boolean) value) ? 1 : 0);
        lockPatternUtils.setVisiblePasswordEnabled((Boolean) value, MY_USER_ID);
    }
    return result;
}
Also used : ChooseLockSettingsHelper(com.android.settings.password.ChooseLockSettingsHelper) LineageLockPatternUtils(org.lineageos.internal.util.LineageLockPatternUtils) LockPatternUtils(com.android.internal.widget.LockPatternUtils)

Example 59 with ChooseLockSettingsHelper

use of com.android.settings.password.ChooseLockSettingsHelper in project android_packages_apps_Settings by SudaMod.

the class SecuritySettings method launchConfirmProfileLockForUnification.

private void launchConfirmProfileLockForUnification() {
    final String title = getActivity().getString(R.string.unlock_set_unlock_launch_picker_title_profile);
    final ChooseLockSettingsHelper helper = new ChooseLockSettingsHelper(getActivity(), this);
    if (!helper.launchConfirmationActivity(UNIFY_LOCK_CONFIRM_PROFILE_REQUEST, title, true, mProfileChallengeUserId)) {
        unifyLocks();
        createPreferenceHierarchy();
    }
}
Also used : ChooseLockSettingsHelper(com.android.settings.password.ChooseLockSettingsHelper)

Example 60 with ChooseLockSettingsHelper

use of com.android.settings.password.ChooseLockSettingsHelper in project android_packages_apps_Settings by SudaMod.

the class FingerprintEnrollFindSensor method launchConfirmLock.

private void launchConfirmLock() {
    long challenge = Utils.getFingerprintManagerOrNull(this).preEnroll();
    ChooseLockSettingsHelper helper = new ChooseLockSettingsHelper(this);
    boolean launchedConfirmationActivity = false;
    if (mUserId == UserHandle.USER_NULL) {
        launchedConfirmationActivity = helper.launchConfirmationActivity(CONFIRM_REQUEST, getString(R.string.security_settings_fingerprint_preference_title), null, null, challenge);
    } else {
        launchedConfirmationActivity = helper.launchConfirmationActivity(CONFIRM_REQUEST, getString(R.string.security_settings_fingerprint_preference_title), null, null, challenge, mUserId);
    }
    if (!launchedConfirmationActivity) {
        // This shouldn't happen, as we should only end up at this step if a lock thingy is
        // already set.
        finish();
    } else {
        mLaunchedConfirmLock = true;
    }
}
Also used : ChooseLockSettingsHelper(com.android.settings.password.ChooseLockSettingsHelper)

Aggregations

ChooseLockSettingsHelper (com.android.settings.password.ChooseLockSettingsHelper)68 Resources (android.content.res.Resources)13 LockPatternUtils (com.android.internal.widget.LockPatternUtils)11 UserManager (android.os.UserManager)8 Bundle (android.os.Bundle)6 PersistableBundle (android.os.PersistableBundle)6 ChooseLockGenericFragment (com.android.settings.password.ChooseLockGeneric.ChooseLockGenericFragment)6 Activity (android.app.Activity)5 EnterprisePrivacyPreferenceController (com.android.settings.enterprise.EnterprisePrivacyPreferenceController)5 ManageDeviceAdminPreferenceController (com.android.settings.enterprise.ManageDeviceAdminPreferenceController)5 LockScreenNotificationPreferenceController (com.android.settings.notification.LockScreenNotificationPreferenceController)5 LineageLockPatternUtils (org.lineageos.internal.util.LineageLockPatternUtils)5 Intent (android.content.Intent)3 UserInfo (android.content.pm.UserInfo)2 ComponentName (android.content.ComponentName)1 ResolveInfo (android.content.pm.ResolveInfo)1 StorageManager (android.os.storage.StorageManager)1 Random (java.util.Random)1