Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 7183e83b authored by Avinash Vadlamudi's avatar Avinash Vadlamudi Committed by Bhavuk Jain
Browse files

Store the PIN length to disk when Pin auto confirm feature is enabled

Bug: 267222046
Test: Manual test
Change-Id: I4f76e607ea7fb08d20a042e49c9669f8988aeff8
parent 222a89ac
Loading
Loading
Loading
Loading
+11 −2
Original line number Diff line number Diff line
@@ -107,12 +107,21 @@ public class ScreenLockSettings extends DashboardFragment
    public void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
        if (requestCode == AUTO_PIN_SETTING_ENABLING_REQUEST_CODE) {
            if (resultCode == Activity.RESULT_OK) {
                mLockPatternUtils.setAutoPinConfirm(/* enabled= */ true, MY_USER_ID);
                onAutoPinConfirmSettingChange(/* newState= */ true);
            }
        } else if (requestCode == AUTO_PIN_SETTING_DISABLING_REQUEST_CODE) {
            if (resultCode == Activity.RESULT_OK) {
                mLockPatternUtils.setAutoPinConfirm(/* enabled= */ false, MY_USER_ID);
                onAutoPinConfirmSettingChange(/* newState= */ false);
            }
        }
    }

    private void onAutoPinConfirmSettingChange(boolean newState) {
        // update the auto pin confirm setting.
        mLockPatternUtils.setAutoPinConfirm(newState, MY_USER_ID);
        // store the pin length info to disk; If it fails, reset the setting to prev state.
        if (!mLockPatternUtils.refreshStoredPinLength(MY_USER_ID)) {
            mLockPatternUtils.setAutoPinConfirm(!newState, MY_USER_ID);
        }
    }
}