Fixes #1555, #1562 - Prevent the syncing indicator from showing up every time the app becomes active

This commit is contained in:
Stefan Ceriu 2023-08-25 09:53:57 +03:00 committed by Stefan Ceriu
parent 76c5693a59
commit a0a19fa75b

View File

@ -562,6 +562,10 @@ class AppCoordinator: AppCoordinatorProtocol, AuthenticationCoordinatorDelegate,
ServiceLocator.shared.userIndicatorController.submitIndicator(.init(id: identifier, type: .toast(progress: .indeterminate), title: L10n.commonSyncing, persistent: true))
}
guard clientProxyObserver == nil else {
return
}
// Prevent the syncing indicator from showing over the offline one
if ServiceLocator.shared.networkMonitor.reachabilityPublisher.value == .reachable {
showLoadingIndicator()
@ -610,7 +614,7 @@ class AppCoordinator: AppCoordinatorProtocol, AuthenticationCoordinatorDelegate,
@objc
private func applicationWillTerminate() {
userSession?.clientProxy.stopSync()
stopSync()
}
@objc
@ -624,7 +628,7 @@ class AppCoordinator: AppCoordinatorProtocol, AuthenticationCoordinatorDelegate,
backgroundTask = backgroundTaskService.startBackgroundTask(withName: "SuspendApp: \(UUID().uuidString)") { [weak self] in
guard let self else { return }
userSession?.clientProxy.stopSync()
stopSync()
backgroundTask?.stop()
backgroundTask = nil