From 1bbde476c090fb4b5c9b2490dfaa378e32d32e6f Mon Sep 17 00:00:00 2001 From: Juha Heinanen Date: Fri, 1 May 2026 14:02:47 +0300 Subject: [PATCH] Improved account spinner launched effect --- .../kotlin/com/tutpro/baresip/MainScreen.kt | 22 ++++++++++++------- 1 file changed, 14 insertions(+), 8 deletions(-) diff --git a/app/src/main/kotlin/com/tutpro/baresip/MainScreen.kt b/app/src/main/kotlin/com/tutpro/baresip/MainScreen.kt index 3f629706..d7341945 100644 --- a/app/src/main/kotlin/com/tutpro/baresip/MainScreen.kt +++ b/app/src/main/kotlin/com/tutpro/baresip/MainScreen.kt @@ -1024,16 +1024,22 @@ private fun AccountSpinner(ctx: Context, viewModel: ViewModel, navController: Na var expanded by rememberSaveable { mutableStateOf(false) } val selected: String by viewModel.selectedAor.collectAsState() + val uasValue by uas - if (uas.value.isEmpty()) - viewModel.updateSelectedAor("") - else - if (selected == "" || UserAgent.ofAor(selected) == null) { - viewModel.updateSelectedAor(uas.value.first().account.aor) + LaunchedEffect(uasValue, selected) { + if (uasValue.isEmpty()) { + if (selected != "") viewModel.updateSelectedAor("") + } else { + if (selected == "" || UserAgent.ofAor(selected) == null) { + viewModel.updateSelectedAor(uasValue.first().account.aor) + } } - - showCall(ctx, viewModel, UserAgent.ofAor(selected)) - viewModel.triggerAccountUpdate() + val ua = UserAgent.ofAor(selected) + if (ua != null) { + showCall(ctx, viewModel, ua) + viewModel.triggerAccountUpdate() + } + } if (selected == "") { OutlinedButton(