Key recovery: Trust on decrypt

#2223
This commit is contained in:
manuroe
2019-02-14 12:48:54 +01:00
parent 7eb133d51c
commit e790466a1b
2 changed files with 35 additions and 6 deletions
@@ -73,12 +73,26 @@ final class KeyBackupRecoverFromRecoveryKeyViewModel: KeyBackupRecoverFromRecove
self.update(viewState: .loading)
self.currentHTTPOperation = self.keyBackup.restore(self.keyBackupVersion, withRecoveryKey: recoveryKey, room: nil, session: nil, success: { [weak self] (totalKeys, _) in
self.currentHTTPOperation = self.keyBackup.restore(self.keyBackupVersion, withRecoveryKey: recoveryKey, room: nil, session: nil, success: { [weak self] (_, _) in
guard let sself = self else {
return
}
sself.update(viewState: .loaded)
sself.coordinatorDelegate?.keyBackupRecoverFromRecoveryKeyViewModelDidRecover(sself)
// Trust on decrypt
sself.currentHTTPOperation = sself.keyBackup.trust(sself.keyBackupVersion, trust: true, success: { [weak sself] () in
guard let ssself = sself else {
return
}
ssself.update(viewState: .loaded)
ssself.coordinatorDelegate?.keyBackupRecoverFromRecoveryKeyViewModelDidRecover(ssself)
}, failure: { [weak sself] error in
guard let ssself = sself else {
return
}
ssself.update(viewState: .error(error))
})
}, failure: { [weak self] error in
guard let sself = self else {