diff options
Diffstat (limited to 'iosApp/iosApp/Session')
-rw-r--r-- | iosApp/iosApp/Session/AccountViewModel.swift | 7 | ||||
-rw-r--r-- | iosApp/iosApp/Session/RootViewModel.swift | 7 |
2 files changed, 10 insertions, 4 deletions
diff --git a/iosApp/iosApp/Session/AccountViewModel.swift b/iosApp/iosApp/Session/AccountViewModel.swift index 7953265..0558268 100644 --- a/iosApp/iosApp/Session/AccountViewModel.swift +++ b/iosApp/iosApp/Session/AccountViewModel.swift @@ -9,6 +9,7 @@ import Foundation import shared +@MainActor class AccountViewModel: ObservableObject { @Inject var sessionController: SessionController @@ -16,11 +17,13 @@ class AccountViewModel: ObservableObject { init() { let userCollector = Collector<User?>(callback: setUser) - sessionController.userFlow.collect(collector: userCollector) {_, _ in } + sessionController.userFlow.collect(collector: userCollector) { _ in } } func setUser(user: User?) { - self.user = user + Task { @MainActor in + self.user = user + } } func fetchUserInfo() { diff --git a/iosApp/iosApp/Session/RootViewModel.swift b/iosApp/iosApp/Session/RootViewModel.swift index 682deee..ec103ba 100644 --- a/iosApp/iosApp/Session/RootViewModel.swift +++ b/iosApp/iosApp/Session/RootViewModel.swift @@ -18,6 +18,7 @@ import Foundation import shared +@MainActor class RootViewModel: ObservableObject { @Inject private var sessionController: SessionController @@ -25,13 +26,15 @@ class RootViewModel: ObservableObject { init() { let collector = Collector<SessionController.LoginState?>(callback: setLoginState) - sessionController.loginStateFlow.collect(collector: collector) { (unit, error) in } + sessionController.loginStateFlow.collect(collector: collector) { _ in } restoreSession() } func setLoginState(state: SessionController.LoginState?) { print("State is: \(state?.debugDescription ?? "")") - self.loginState = state ?? SessionController.LoginStateNothing() + Task { @MainActor in + self.loginState = state ?? SessionController.LoginStateNothing() + } } func restoreSession() { |