From d245b301e82e8beb49cf9113cd72293a580cfc14 Mon Sep 17 00:00:00 2001 From: Juha Heinanen Date: Tue, 30 Dec 2025 03:03:11 +0200 Subject: [PATCH] Replaced remaining popBackStack() calls with navigateUp() calls --- app/src/main/kotlin/com/tutpro/baresip/AccountScreen.kt | 8 ++++---- app/src/main/kotlin/com/tutpro/baresip/AccountsScreen.kt | 2 +- app/src/main/kotlin/com/tutpro/baresip/AudioScreen.kt | 4 ++-- app/src/main/kotlin/com/tutpro/baresip/BlockedScreen.kt | 4 +--- app/src/main/kotlin/com/tutpro/baresip/ChatScreen.kt | 2 +- app/src/main/kotlin/com/tutpro/baresip/CodecsScreen.kt | 4 ++-- app/src/main/kotlin/com/tutpro/baresip/ContactsScreen.kt | 2 +- app/src/main/kotlin/com/tutpro/baresip/SettingsScreen.kt | 6 +++--- 8 files changed, 15 insertions(+), 17 deletions(-) diff --git a/app/src/main/kotlin/com/tutpro/baresip/AccountScreen.kt b/app/src/main/kotlin/com/tutpro/baresip/AccountScreen.kt index 17e6aa01..3b3707de 100644 --- a/app/src/main/kotlin/com/tutpro/baresip/AccountScreen.kt +++ b/app/src/main/kotlin/com/tutpro/baresip/AccountScreen.kt @@ -97,12 +97,12 @@ fun NavGraphBuilder.accountScreenRoute(navController: NavController) { AccountScreen( viewModel = viewModel, navController = navController, - onBack = { navController.popBackStack() }, + onBack = { navController.navigateUp() }, checkOnClick = { val ok = checkOnClick(ctx, viewModel, ua) if (ok) { if (reRegister) ua.reRegister() - navController.popBackStack() + navController.navigateUp() } }, aor = aor, @@ -404,12 +404,12 @@ private fun AccountContent( Api.account_set_auth_pass(ua.account.accp, password.value) password.value = "" ua.reRegister() - navController.popBackStack() + navController.navigateUp() } }, cancelAction = { ua.reRegister() - navController.popBackStack() + navController.navigateUp() } ) } diff --git a/app/src/main/kotlin/com/tutpro/baresip/AccountsScreen.kt b/app/src/main/kotlin/com/tutpro/baresip/AccountsScreen.kt index c9a40922..9f5265a5 100644 --- a/app/src/main/kotlin/com/tutpro/baresip/AccountsScreen.kt +++ b/app/src/main/kotlin/com/tutpro/baresip/AccountsScreen.kt @@ -93,7 +93,7 @@ fun AccountsScreen(navController: NavController) { titleContentColor = MaterialTheme.colorScheme.onPrimary, ), navigationIcon = { - IconButton(onClick = { navController.popBackStack() }) { + IconButton(onClick = { navController.navigateUp() }) { Icon( imageVector = Icons.AutoMirrored.Filled.ArrowBack, contentDescription = null, diff --git a/app/src/main/kotlin/com/tutpro/baresip/AudioScreen.kt b/app/src/main/kotlin/com/tutpro/baresip/AudioScreen.kt index 5f96243a..ad06f62e 100644 --- a/app/src/main/kotlin/com/tutpro/baresip/AudioScreen.kt +++ b/app/src/main/kotlin/com/tutpro/baresip/AudioScreen.kt @@ -64,14 +64,14 @@ fun NavGraphBuilder.audioScreenRoute( val ctx = LocalContext.current AudioScreen( onBack = { - navController.popBackStack() + navController.navigateUp() }, checkOnClick = { val result = checkOnClick(ctx) // Your existing logic that returns true/false navController.previousBackStackEntry ?.savedStateHandle ?.set("audio_settings_result", result) - navController.popBackStack() + navController.navigateUp() }, ) } diff --git a/app/src/main/kotlin/com/tutpro/baresip/BlockedScreen.kt b/app/src/main/kotlin/com/tutpro/baresip/BlockedScreen.kt index c691d768..bc8d976b 100644 --- a/app/src/main/kotlin/com/tutpro/baresip/BlockedScreen.kt +++ b/app/src/main/kotlin/com/tutpro/baresip/BlockedScreen.kt @@ -175,9 +175,7 @@ private fun TopAppBar( windowInsets = WindowInsets(0, 0, 0, 0), navigationIcon = { IconButton( - onClick = { - navController.popBackStack() - } + onClick = { navController.navigateUp() } ) { Icon( imageVector = Icons.AutoMirrored.Filled.ArrowBack, diff --git a/app/src/main/kotlin/com/tutpro/baresip/ChatScreen.kt b/app/src/main/kotlin/com/tutpro/baresip/ChatScreen.kt index 6ca39698..3eca91a8 100644 --- a/app/src/main/kotlin/com/tutpro/baresip/ChatScreen.kt +++ b/app/src/main/kotlin/com/tutpro/baresip/ChatScreen.kt @@ -605,7 +605,7 @@ private fun backAction(navController: NavController, account: Account, peerUri: val aor = account.aor Message.updateMessagesFromPearRead(aor, peerUri) account.unreadMessages = Message.unreadMessages(aor) - navController.popBackStack() + navController.navigateUp() } private fun loadPeerMessages(aor: String, peerUri: String): List { diff --git a/app/src/main/kotlin/com/tutpro/baresip/CodecsScreen.kt b/app/src/main/kotlin/com/tutpro/baresip/CodecsScreen.kt index 8ca7db9a..697d8f21 100644 --- a/app/src/main/kotlin/com/tutpro/baresip/CodecsScreen.kt +++ b/app/src/main/kotlin/com/tutpro/baresip/CodecsScreen.kt @@ -61,7 +61,7 @@ fun NavGraphBuilder.codecsScreenRoute(navController: NavController) { val media = backStackEntry.arguments?.getString("media")!! val account = UserAgent.ofAor(aor)?.account!! CodecsScreen( - onBack = { navController.popBackStack() }, + onBack = { navController.navigateUp() }, checkOnClick = { updatedCodecs -> val enabledCodecNames = updatedCodecs.filter { it.enabled.value }.map { it.name } val codecList = Utils.implode(enabledCodecNames, ",") @@ -80,7 +80,7 @@ fun NavGraphBuilder.codecsScreenRoute(navController: NavController) { } else Log.e(TAG, "Failed to set $aor codecs.") - navController.popBackStack() + navController.navigateUp() }, aor = aor, media = media diff --git a/app/src/main/kotlin/com/tutpro/baresip/ContactsScreen.kt b/app/src/main/kotlin/com/tutpro/baresip/ContactsScreen.kt index 997685ea..cafb31f0 100644 --- a/app/src/main/kotlin/com/tutpro/baresip/ContactsScreen.kt +++ b/app/src/main/kotlin/com/tutpro/baresip/ContactsScreen.kt @@ -257,7 +257,7 @@ private fun ContactsContent( neutralAction.value = { if (ua != null) { handleIntent(ctx, viewModel, intent, "message") - navController.popBackStack() + navController.navigateUp() } } showDialog.value = true diff --git a/app/src/main/kotlin/com/tutpro/baresip/SettingsScreen.kt b/app/src/main/kotlin/com/tutpro/baresip/SettingsScreen.kt index 6502b0be..f4e14439 100644 --- a/app/src/main/kotlin/com/tutpro/baresip/SettingsScreen.kt +++ b/app/src/main/kotlin/com/tutpro/baresip/SettingsScreen.kt @@ -102,13 +102,13 @@ fun NavGraphBuilder.settingsScreenRoute( ctx = ctx, navController = navController, settingsViewModel = viewModel, - onBack = { navController.popBackStack() }, + onBack = { navController.navigateUp() }, checkOnClick = { if (checkOnClick(ctx, viewModel)) { if (restart) showRestartDialog.value = true else - navController.popBackStack() + navController.navigateUp() } }, onRestartApp = onRestartApp @@ -206,7 +206,7 @@ private fun SettingsScreen( }, negativeButtonText = stringResource(R.string.cancel), onNegativeClicked = { - navController.popBackStack() + navController.navigateUp() } ) }