From 8bc77aedcc8503ed5b6ba5c1039fc88c3656eb21 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sylwester=20Zieli=C5=84ski?= Date: Fri, 14 Jan 2022 16:57:10 +0100 Subject: [PATCH] Apply fixes to navigation --- .../java/no/nordicsemi/android/nrftoolbox/HomeScreen.kt | 6 +++++- .../java/no/nordicsemi/android/nrftoolbox/HomeViewModel.kt | 4 ++-- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/app/src/main/java/no/nordicsemi/android/nrftoolbox/HomeScreen.kt b/app/src/main/java/no/nordicsemi/android/nrftoolbox/HomeScreen.kt index bd623d85..aeee333c 100644 --- a/app/src/main/java/no/nordicsemi/android/nrftoolbox/HomeScreen.kt +++ b/app/src/main/java/no/nordicsemi/android/nrftoolbox/HomeScreen.kt @@ -2,6 +2,7 @@ package no.nordicsemi.android.nrftoolbox import android.app.Activity import android.os.ParcelUuid +import android.util.Log import androidx.activity.compose.BackHandler import androidx.compose.runtime.Composable import androidx.compose.runtime.LaunchedEffect @@ -88,7 +89,10 @@ internal fun HomeScreen() { when (val destination = destination.value) { FinishDestination -> context.finish() HomeDestination -> navController.navigateUp() - is ProfileDestination -> navController.navigate(destination.id.id) + is ProfileDestination -> { + navController.navigateUp() + navController.navigate(destination.id.id) + } is ScannerDestination -> navController.navigate(destination.id.id) }.exhaustive } diff --git a/app/src/main/java/no/nordicsemi/android/nrftoolbox/HomeViewModel.kt b/app/src/main/java/no/nordicsemi/android/nrftoolbox/HomeViewModel.kt index d9d2b923..63f33396 100644 --- a/app/src/main/java/no/nordicsemi/android/nrftoolbox/HomeViewModel.kt +++ b/app/src/main/java/no/nordicsemi/android/nrftoolbox/HomeViewModel.kt @@ -35,12 +35,12 @@ class HomeViewModel @Inject constructor( fun navigateUp() { val currentDestination = _destination.value - when (currentDestination) { + _destination.value = when (currentDestination) { FinishDestination -> FinishDestination HomeDestination -> FinishDestination is ProfileDestination -> HomeDestination is ScannerDestination -> HomeDestination - }.exhaustive + } } private fun onDeviceSelected(result: FindDeviceSuccessResult) {