mirror of
https://github.com/oxen-io/session-android.git
synced 2025-06-09 11:18:35 +00:00
Use a min length of 6 for new PIN reminders.
This commit is contained in:
parent
dcb5f7b211
commit
81532cad95
@ -154,7 +154,7 @@ public final class RegistrationLockDialog {
|
|||||||
if (s == null) return;
|
if (s == null) return;
|
||||||
String pin = s.toString();
|
String pin = s.toString();
|
||||||
if (TextUtils.isEmpty(pin)) return;
|
if (TextUtils.isEmpty(pin)) return;
|
||||||
if (pin.length() < KbsConstants.MINIMUM_POSSIBLE_PIN_LENGTH) return;
|
if (pin.length() < KbsConstants.LEGACY_MINIMUM_PIN_LENGTH) return;
|
||||||
|
|
||||||
if (PinHashing.verifyLocalPinHash(localPinHash, pin)) {
|
if (PinHashing.verifyLocalPinHash(localPinHash, pin)) {
|
||||||
dialog.dismiss();
|
dialog.dismiss();
|
||||||
@ -186,9 +186,9 @@ public final class RegistrationLockDialog {
|
|||||||
String pinValue = pin.getText().toString().replace(" ", "");
|
String pinValue = pin.getText().toString().replace(" ", "");
|
||||||
String repeatValue = repeat.getText().toString().replace(" ", "");
|
String repeatValue = repeat.getText().toString().replace(" ", "");
|
||||||
|
|
||||||
if (pinValue.length() < KbsConstants.MINIMUM_POSSIBLE_PIN_LENGTH) {
|
if (pinValue.length() < KbsConstants.LEGACY_MINIMUM_PIN_LENGTH) {
|
||||||
Toast.makeText(context,
|
Toast.makeText(context,
|
||||||
context.getString(R.string.RegistrationLockDialog_the_registration_lock_pin_must_be_at_least_d_digits, KbsConstants.MINIMUM_POSSIBLE_PIN_LENGTH),
|
context.getString(R.string.RegistrationLockDialog_the_registration_lock_pin_must_be_at_least_d_digits, KbsConstants.LEGACY_MINIMUM_PIN_LENGTH),
|
||||||
Toast.LENGTH_LONG).show();
|
Toast.LENGTH_LONG).show();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
@ -115,7 +115,7 @@ public final class SignalPinReminderDialog {
|
|||||||
pinEditText.addTextChangedListener(new SimpleTextWatcher() {
|
pinEditText.addTextChangedListener(new SimpleTextWatcher() {
|
||||||
@Override
|
@Override
|
||||||
public void onTextChanged(String text) {
|
public void onTextChanged(String text) {
|
||||||
if (text.length() >= KbsConstants.MINIMUM_POSSIBLE_PIN_LENGTH) {
|
if (text.length() >= KbsConstants.minimumPossiblePinLength()) {
|
||||||
submit.setEnabled(true);
|
submit.setEnabled(true);
|
||||||
} else {
|
} else {
|
||||||
submit.setEnabled(false);
|
submit.setEnabled(false);
|
||||||
@ -192,7 +192,7 @@ public final class SignalPinReminderDialog {
|
|||||||
if (pin == null) return;
|
if (pin == null) return;
|
||||||
if (TextUtils.isEmpty(pin)) return;
|
if (TextUtils.isEmpty(pin)) return;
|
||||||
|
|
||||||
if (pin.length() < KbsConstants.MINIMUM_POSSIBLE_PIN_LENGTH) return;
|
if (pin.length() < KbsConstants.minimumPossiblePinLength()) return;
|
||||||
|
|
||||||
if (PinHashing.verifyLocalPinHash(localPinHash, pin)) {
|
if (PinHashing.verifyLocalPinHash(localPinHash, pin)) {
|
||||||
callback.onPinCorrect();
|
callback.onPinCorrect();
|
||||||
|
@ -46,7 +46,7 @@ abstract class BaseKbsPinFragment<ViewModel extends BaseKbsPinViewModel> extends
|
|||||||
|
|
||||||
viewModel = initializeViewModel();
|
viewModel = initializeViewModel();
|
||||||
viewModel.getUserEntry().observe(getViewLifecycleOwner(), kbsPin -> {
|
viewModel.getUserEntry().observe(getViewLifecycleOwner(), kbsPin -> {
|
||||||
boolean isEntryValid = kbsPin.length() >= KbsConstants.MINIMUM_NEW_PIN_LENGTH;
|
boolean isEntryValid = kbsPin.length() >= KbsConstants.MINIMUM_PIN_LENGTH;
|
||||||
|
|
||||||
confirm.setEnabled(isEntryValid);
|
confirm.setEnabled(isEntryValid);
|
||||||
confirm.setAlpha(isEntryValid ? 1f : 0.5f);
|
confirm.setAlpha(isEntryValid ? 1f : 0.5f);
|
||||||
|
@ -77,6 +77,6 @@ public class CreateKbsPinFragment extends BaseKbsPinFragment<CreateKbsPinViewMod
|
|||||||
}
|
}
|
||||||
|
|
||||||
private String getPinLengthRestrictionText(@PluralsRes int plurals) {
|
private String getPinLengthRestrictionText(@PluralsRes int plurals) {
|
||||||
return requireContext().getResources().getQuantityString(plurals, KbsConstants.MINIMUM_NEW_PIN_LENGTH, KbsConstants.MINIMUM_NEW_PIN_LENGTH);
|
return requireContext().getResources().getQuantityString(plurals, KbsConstants.MINIMUM_PIN_LENGTH, KbsConstants.MINIMUM_PIN_LENGTH);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,13 +1,15 @@
|
|||||||
package org.thoughtcrime.securesms.lock.v2;
|
package org.thoughtcrime.securesms.lock.v2;
|
||||||
|
|
||||||
|
import org.thoughtcrime.securesms.keyvalue.SignalStore;
|
||||||
|
|
||||||
public final class KbsConstants {
|
public final class KbsConstants {
|
||||||
|
|
||||||
static final int MINIMUM_NEW_PIN_LENGTH = 6;
|
public static final int MINIMUM_PIN_LENGTH = 6;
|
||||||
|
public static final int LEGACY_MINIMUM_PIN_LENGTH = 4;
|
||||||
|
|
||||||
/** Migrated pins from V1 might be 4 */
|
private KbsConstants() { }
|
||||||
public static final int MINIMUM_POSSIBLE_PIN_LENGTH = 4;
|
|
||||||
|
|
||||||
private KbsConstants() {
|
public static int minimumPossiblePinLength() {
|
||||||
|
return SignalStore.kbsValues().hasMigratedToPinsForAll() ? MINIMUM_PIN_LENGTH : LEGACY_MINIMUM_PIN_LENGTH;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user