Fix: don’t allow to reset secrets if it is already in progress.

This commit is contained in:
Nicolas Mauri
2023-04-03 13:50:35 +02:00
parent 2c1d56ece9
commit 6500a8ac43
6 changed files with 18 additions and 2 deletions
@@ -49,6 +49,8 @@ final class SecretsResetViewModel: SecretsResetViewModelType {
break
case .reset:
self.askAuthentication()
case .authenticationCancelled:
self.authenticationCancelled()
case .authenticationInfoEntered(let authParameters):
self.resetSecrets(with: authParameters)
case .cancel:
@@ -68,7 +70,6 @@ final class SecretsResetViewModel: SecretsResetViewModelType {
}
MXLog.debug("[SecretsResetViewModel] resetSecrets")
self.update(viewState: .resetting)
crossSigning.setup(withAuthParams: authParameters, success: { [weak self] in
guard let self = self else {
return
@@ -96,7 +97,13 @@ final class SecretsResetViewModel: SecretsResetViewModelType {
}
private func askAuthentication() {
self.update(viewState: .resetting)
let setupCrossSigningRequest = self.crossSigningService.setupCrossSigningRequest()
self.coordinatorDelegate?.secretsResetViewModel(self, needsToAuthenticateWith: setupCrossSigningRequest)
}
private func authenticationCancelled() {
self.update(viewState: .resetCancelled)
}
}