From 505fa3b66c093a1ec3a31ba8e795f30bbf68ae36 Mon Sep 17 00:00:00 2001 From: Sylvain Berfini Date: Wed, 7 Aug 2024 11:33:09 +0200 Subject: [PATCH] Go to assistant when last account has been removed --- .../main/java/org/linphone/ui/main/MainActivity.kt | 6 ++++++ .../org/linphone/ui/main/viewmodel/MainViewModel.kt | 11 ++++++++++- 2 files changed, 16 insertions(+), 1 deletion(-) diff --git a/app/src/main/java/org/linphone/ui/main/MainActivity.kt b/app/src/main/java/org/linphone/ui/main/MainActivity.kt index f726aee24..5ecce78cf 100644 --- a/app/src/main/java/org/linphone/ui/main/MainActivity.kt +++ b/app/src/main/java/org/linphone/ui/main/MainActivity.kt @@ -220,6 +220,12 @@ class MainActivity : GenericActivity() { } } + viewModel.lastAccountRemovedEvent.observe(this) { + it.consume { + startActivity(Intent(this, AssistantActivity::class.java)) + } + } + // Wait for latest visited fragment to be displayed before hiding the splashscreen binding.root.viewTreeObserver.addOnPreDrawListener(object : ViewTreeObserver.OnPreDrawListener { override fun onPreDraw(): Boolean { diff --git a/app/src/main/java/org/linphone/ui/main/viewmodel/MainViewModel.kt b/app/src/main/java/org/linphone/ui/main/viewmodel/MainViewModel.kt index 1b79f9056..9392963a2 100644 --- a/app/src/main/java/org/linphone/ui/main/viewmodel/MainViewModel.kt +++ b/app/src/main/java/org/linphone/ui/main/viewmodel/MainViewModel.kt @@ -102,7 +102,11 @@ class MainViewModel @UiThread constructor() : ViewModel() { MutableLiveData>() } - var accountsFound = -1 + val lastAccountRemovedEvent: MutableLiveData> by lazy { + MutableLiveData>() + } + + private var accountsFound = -1 var mainIntentHandled = false @@ -264,6 +268,11 @@ class MainViewModel @UiThread constructor() : ViewModel() { removeAlert(NON_DEFAULT_ACCOUNT_NOT_CONNECTED) core.refreshRegisters() computeNonDefaultAccountNotificationsCount() + + if (core.accountList.isEmpty()) { + Log.w("$TAG No more account configured, going into assistant") + lastAccountRemovedEvent.postValue(Event(true)) + } } }