Skip to content

Commit 0ac34c3

Browse files
committed
didn't navigated login already in same screen
1 parent 0367835 commit 0ac34c3

File tree

3 files changed

+9
-11
lines changed

3 files changed

+9
-11
lines changed

app/src/main/java/pseudoankit/droid/tasky/launcher/MainActivity.kt

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -22,12 +22,12 @@ import com.google.accompanist.permissions.rememberPermissionState
2222
import com.ramcosta.composedestinations.DestinationsNavHost
2323
import com.ramcosta.composedestinations.animations.rememberAnimatedNavHostEngine
2424
import com.ramcosta.composedestinations.navigation.dependency
25+
import com.ramcosta.composedestinations.navigation.navigate
2526
import kotlinx.coroutines.flow.collectLatest
2627
import org.koin.androidx.viewmodel.ext.android.getViewModel
2728
import org.orbitmvi.orbit.compose.collectAsState
28-
import pseudoankit.droid.core.deeplink.TaskyDeeplink
29+
import pseudoankit.droid.authentication.presentation.destinations.LoginScreenDestination
2930
import pseudoankit.droid.coreui.deeplink.navigateViaDeepLink
30-
import pseudoankit.droid.coreui.util.extension.clearStack
3131
import pseudoankit.droid.tasky.navigation.navgraph.NavGraph
3232
import pseudoankit.droid.tasky.navigation.navigator.CoreFeatureNavigator
3333
import pseudoankit.droid.tasky.util.hide
@@ -110,10 +110,9 @@ internal class MainActivity : ComponentActivity() {
110110
LaunchedEffect(Unit) {
111111
container.sideEffectFlow.collectLatest { effect ->
112112
when (effect) {
113-
MainActivityViewModel.SideEffect.ClearBackStackAndNavigateToLogin -> {
114-
navController?.apply {
115-
clearStack()
116-
navigateViaDeepLink(TaskyDeeplink.login)
113+
MainActivityViewModel.SideEffect.NavigateToLoginScreen -> {
114+
if (navController?.currentDestination?.route != LoginScreenDestination.route) {
115+
navController?.navigate(LoginScreenDestination)
117116
}
118117
}
119118

app/src/main/java/pseudoankit/droid/tasky/launcher/MainActivityViewModel.kt

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,6 @@ import org.orbitmvi.orbit.ContainerHost
1111
import org.orbitmvi.orbit.container
1212
import pseudoankit.droid.core.util.extension.orFalse
1313
import pseudoankit.droid.coreui.util.extension.postSideEffect
14-
import pseudoankit.droid.coreui.util.extension.state
1514
import pseudoankit.droid.preferencesmanager.PreferenceRepository
1615

1716
class MainActivityViewModel(
@@ -33,9 +32,9 @@ class MainActivityViewModel(
3332
private fun observeLoggedInStatus() {
3433
preferenceRepository.isLoggedInFlow()
3534
.onEach { isLoggedIn ->
36-
if (!isLoggedIn && !state.isUserLoggedIn) {
35+
if (!isLoggedIn) {
3736
postSideEffect {
38-
SideEffect.ClearBackStackAndNavigateToLogin
37+
SideEffect.NavigateToLoginScreen
3938
}
4039
}
4140
}
@@ -55,7 +54,7 @@ class MainActivityViewModel(
5554
)
5655

5756
sealed interface SideEffect {
58-
object ClearBackStackAndNavigateToLogin : SideEffect
57+
object NavigateToLoginScreen : SideEffect
5958
object LaunchNotificationPermissionRequest : SideEffect
6059
}
6160
}

gradle/libs.versions.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ detekt = "1.23.1" # https://detekt.dev/docs/gettingstarted/gradle/
1010
composeDestinations = "1.9.57"
1111

1212
# Android
13-
minSdk = "23"
13+
minSdk = "26"
1414
compileSdk = "34"
1515
targetSdk = "33"
1616
version-code = "1"

0 commit comments

Comments
 (0)