From d39e3d7b90973c77e3d7e31855398f96896bb6b4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Michael=20Sch=C3=A4ttgen?= Date: Tue, 3 Mar 2020 23:43:33 +0100 Subject: [PATCH] Improve confirm password functionality --- .../main/java/com/beemdevelopment/aegis/ui/Dialogs.java | 9 +++++---- .../aegis/ui/slides/CustomAuthenticatedSlide.java | 9 +++++---- 2 files changed, 10 insertions(+), 8 deletions(-) diff --git a/app/src/main/java/com/beemdevelopment/aegis/ui/Dialogs.java b/app/src/main/java/com/beemdevelopment/aegis/ui/Dialogs.java index 3a8a0c52..528b5a15 100644 --- a/app/src/main/java/com/beemdevelopment/aegis/ui/Dialogs.java +++ b/app/src/main/java/com/beemdevelopment/aegis/ui/Dialogs.java @@ -93,11 +93,12 @@ public class Dialogs { switchToggleVisibility.setOnCheckedChangeListener((CompoundButton.OnCheckedChangeListener) (buttonView, isChecked) -> { if (isChecked) { textPassword.setTransformationMethod(null); + textPasswordConfirm.setTransformationMethod(null); textPassword.clearFocus(); - textPasswordConfirm.setEnabled(false); + textPasswordConfirm.clearFocus(); } else { textPassword.setTransformationMethod(new PasswordTransformationMethod()); - textPasswordConfirm.setEnabled(true); + textPasswordConfirm.setTransformationMethod(new PasswordTransformationMethod()); } }); @@ -116,7 +117,7 @@ public class Dialogs { // replace the default listener button.setOnClickListener(v -> { - if (!EditTextHelper.areEditTextsEqual(textPassword, textPasswordConfirm) && !switchToggleVisibility.isChecked()) { + if (!EditTextHelper.areEditTextsEqual(textPassword, textPasswordConfirm)) { return; } @@ -141,7 +142,7 @@ public class Dialogs { TextWatcher watcher = new TextWatcher() { public void onTextChanged(CharSequence c, int start, int before, int count) { boolean equal = EditTextHelper.areEditTextsEqual(textPassword, textPasswordConfirm); - buttonOK.get().setEnabled(equal || switchToggleVisibility.isChecked()); + buttonOK.get().setEnabled(equal); } public void beforeTextChanged(CharSequence c, int start, int count, int after) { diff --git a/app/src/main/java/com/beemdevelopment/aegis/ui/slides/CustomAuthenticatedSlide.java b/app/src/main/java/com/beemdevelopment/aegis/ui/slides/CustomAuthenticatedSlide.java index 10e45695..640101f0 100644 --- a/app/src/main/java/com/beemdevelopment/aegis/ui/slides/CustomAuthenticatedSlide.java +++ b/app/src/main/java/com/beemdevelopment/aegis/ui/slides/CustomAuthenticatedSlide.java @@ -45,11 +45,12 @@ public class CustomAuthenticatedSlide extends Fragment implements ISlidePolicy, _checkPasswordVisibility.setOnCheckedChangeListener((buttonView, isChecked) -> { if (isChecked) { _textPassword.setTransformationMethod(null); + _textPasswordConfirm.setTransformationMethod(null); _textPassword.clearFocus(); - _textPasswordConfirm.setEnabled(false); + _textPasswordConfirm.clearFocus(); } else { _textPassword.setTransformationMethod(new PasswordTransformationMethod()); - _textPasswordConfirm.setEnabled(true); + _textPasswordConfirm.setTransformationMethod(new PasswordTransformationMethod()); } }); @@ -113,7 +114,7 @@ public class CustomAuthenticatedSlide extends Fragment implements ISlidePolicy, // intentional fallthrough case CustomAuthenticationSlide.CRYPT_TYPE_PASS: if (EditTextHelper.getEditTextChars(_textPassword).length > 0) { - return EditTextHelper.areEditTextsEqual(_textPassword, _textPasswordConfirm) || _checkPasswordVisibility.isChecked(); + return EditTextHelper.areEditTextsEqual(_textPassword, _textPasswordConfirm); } return false; @@ -125,7 +126,7 @@ public class CustomAuthenticatedSlide extends Fragment implements ISlidePolicy, @Override public void onUserIllegallyRequestedNextPage() { String message; - if (!EditTextHelper.areEditTextsEqual(_textPassword, _textPasswordConfirm) && !_checkPasswordVisibility.isChecked()) { + if (!EditTextHelper.areEditTextsEqual(_textPassword, _textPasswordConfirm)) { message = getString(R.string.password_equality_error); View view = getView();