From 16f11a726ae349829bd28588bdf094a79650d4fc Mon Sep 17 00:00:00 2001 From: Bruno Muniz Azevedo Filho <bruno@elixxir.io> Date: Thu, 1 Dec 2022 02:33:56 -0300 Subject: [PATCH] Fixes biometric authentication --- Sources/LaunchFeature/LaunchViewModel.swift | 32 +++++++++++++++++---- 1 file changed, 26 insertions(+), 6 deletions(-) diff --git a/Sources/LaunchFeature/LaunchViewModel.swift b/Sources/LaunchFeature/LaunchViewModel.swift index bbb68e5d..30ac8e24 100644 --- a/Sources/LaunchFeature/LaunchViewModel.swift +++ b/Sources/LaunchFeature/LaunchViewModel.swift @@ -202,20 +202,40 @@ extension LaunchViewModel { try dummyTrafficManager.setStatus(dummyTrafficOn) + var shouldPushChats = false + var shouldPushOnboarding = false + + defer { + hudManager.hide() + if shouldPushChats { + if isBiometricsOn, permissions.biometrics.status() { + permissions.biometrics.request { [weak self] granted in + guard let self else { return } + if granted { + self.stateSubject.value.shouldPushChats = true + } else { + // DO WHAT? + } + } + } else { + stateSubject.value.shouldPushChats = true + } + } else { + stateSubject.value.shouldPushOnboarding = shouldPushOnboarding + } + } + if messenger.isLoggedIn() == false { if try messenger.isRegistered() { try messenger.logIn() - hudManager.hide() - stateSubject.value.shouldPushChats = true + shouldPushChats = true } else { try? sftpManager.unlink() try? dropboxManager.unlink() - hudManager.hide() - stateSubject.value.shouldPushOnboarding = true + shouldPushOnboarding = true } } else { - hudManager.hide() - stateSubject.value.shouldPushChats = true + shouldPushChats = true } if !messenger.isBackupRunning() { try? messenger.resumeBackup() -- GitLab