Browse Source

Pin create : improve clear validation

pull/1608/head
ganfra 11 months ago
parent
commit
7b611e7c7a
  1. 13
      features/lockscreen/impl/src/main/kotlin/io/element/android/features/lockscreen/impl/create/CreatePinPresenter.kt

13
features/lockscreen/impl/src/main/kotlin/io/element/android/features/lockscreen/impl/create/CreatePinPresenter.kt

@ -59,7 +59,6 @@ class CreatePinPresenter @Inject constructor( @@ -59,7 +59,6 @@ class CreatePinPresenter @Inject constructor(
if (confirmPinEntry == choosePinEntry) {
//pinCodeManager.savePin(confirmPinEntry.toText())
} else {
confirmPinEntry = PinEntry.empty(PIN_SIZE)
creationFailure = PinCreationFailure.ConfirmationPinNotMatching
}
}
@ -68,7 +67,6 @@ class CreatePinPresenter @Inject constructor( @@ -68,7 +67,6 @@ class CreatePinPresenter @Inject constructor(
if (choosePinEntry.isPinComplete()) {
when (val pinValidationResult = pinValidator.isPinValid(choosePinEntry)) {
is PinValidator.Result.Invalid -> {
choosePinEntry = PinEntry.empty(PIN_SIZE)
creationFailure = pinValidationResult.failure
}
PinValidator.Result.Valid -> isConfirmationStep = true
@ -77,6 +75,17 @@ class CreatePinPresenter @Inject constructor( @@ -77,6 +75,17 @@ class CreatePinPresenter @Inject constructor(
}
}
CreatePinEvents.OnClearValidationFailure -> {
when (creationFailure) {
is PinCreationFailure.ConfirmationPinNotMatching -> {
choosePinEntry = PinEntry.empty(PIN_SIZE)
confirmPinEntry = PinEntry.empty(PIN_SIZE)
}
is PinCreationFailure.ChosenPinBlacklisted -> {
choosePinEntry = PinEntry.empty(PIN_SIZE)
}
null -> Unit
}
isConfirmationStep = false
creationFailure = null
}
}

Loading…
Cancel
Save