Add cancellable property to secureBackup/recovery view controllers

This commit is contained in:
Arnaud Ringenbach
2022-03-09 10:41:27 +01:00
parent 25660bdace
commit 6c5584acc0
6 changed files with 59 additions and 35 deletions

View File

@@ -39,6 +39,7 @@ final class SecureBackupSetupIntroViewController: UIViewController {
// MARK: Private
private var viewModel: SecureBackupSetupIntroViewModelType!
private var cancellable: Bool!
private var theme: Theme!
private var activityIndicatorPresenter: ActivityIndicatorPresenter!
@@ -50,9 +51,10 @@ final class SecureBackupSetupIntroViewController: UIViewController {
// MARK: - Setup
class func instantiate(with viewModel: SecureBackupSetupIntroViewModelType) -> SecureBackupSetupIntroViewController {
class func instantiate(with viewModel: SecureBackupSetupIntroViewModelType, cancellable: Bool = true) -> SecureBackupSetupIntroViewController {
let viewController = StoryboardScene.SecureBackupSetupIntroViewController.initialScene.instantiate()
viewController.viewModel = viewModel
viewController.cancellable = cancellable
viewController.theme = ThemeService.shared().theme
return viewController
}
@@ -86,13 +88,15 @@ final class SecureBackupSetupIntroViewController: UIViewController {
// MARK: - Private
private func setupViews() {
let cancelBarButtonItem = MXKBarButtonItem(title: VectorL10n.cancel, style: .plain) { [weak self] in
guard let self = self else {
return
if self.cancellable {
let cancelBarButtonItem = MXKBarButtonItem(title: VectorL10n.cancel, style: .plain) { [weak self] in
guard let self = self else {
return
}
self.delegate?.secureBackupSetupIntroViewControllerDidCancel(self, showSkipAlert: true)
}
self.delegate?.secureBackupSetupIntroViewControllerDidCancel(self, showSkipAlert: true)
self.navigationItem.rightBarButtonItem = cancelBarButtonItem
}
self.navigationItem.rightBarButtonItem = cancelBarButtonItem
self.title = VectorL10n.secureKeyBackupSetupIntroTitle