From 8aa6b68a345fe76116a651809c4eaf46977909c2 Mon Sep 17 00:00:00 2001 From: yunsehwan Date: Fri, 1 Aug 2025 19:27:13 +0900 Subject: [PATCH] =?UTF-8?q?FIX:=20popBackStack=EC=9D=B4=20=EB=B9=A0?= =?UTF-8?q?=EB=A5=B4=EA=B2=8C=202=EB=B2=88=20=ED=98=B8=EC=B6=9C=EB=90=A0?= =?UTF-8?q?=20=EA=B2=BD=EC=9A=B0=20=EB=84=A4=EB=B9=84=EA=B2=8C=EC=9D=B4?= =?UTF-8?q?=EC=85=98=20=EB=82=B4=20=EB=AA=A8=EB=93=A0=20=ED=99=94=EB=A9=B4?= =?UTF-8?q?=EC=9D=B4=20pop=EB=90=A0=20=EC=88=98=20=EC=9E=88=EB=8A=94=20?= =?UTF-8?q?=EB=AC=B8=EC=A0=9C=20=EC=88=98=EC=A0=95,=20=EC=84=A4=EC=A0=95?= =?UTF-8?q?=20=ED=99=94=EB=A9=B4=20=EB=82=B4=20=EB=AF=B8=EA=B5=AC=ED=98=84?= =?UTF-8?q?=20UI=20=EC=A0=9C=EA=B1=B0,=20=EB=B2=84=EC=A0=84=20=EC=BD=94?= =?UTF-8?q?=EB=93=9C=20=EC=97=85=EB=8D=B0=EC=9D=B4=ED=8A=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/threegap/bitnagil/MainNavHost.kt | 28 ++++++++++++---- gradle/libs.versions.toml | 2 +- .../presentation/setting/SettingScreen.kt | 33 ------------------- 3 files changed, 23 insertions(+), 40 deletions(-) diff --git a/app/src/main/java/com/threegap/bitnagil/MainNavHost.kt b/app/src/main/java/com/threegap/bitnagil/MainNavHost.kt index bc43017c..facc24cb 100644 --- a/app/src/main/java/com/threegap/bitnagil/MainNavHost.kt +++ b/app/src/main/java/com/threegap/bitnagil/MainNavHost.kt @@ -88,7 +88,11 @@ fun MainNavHost( navigateToOnBoarding = { navigator.navController.navigate(Route.OnBoarding()) }, - navigateToBack = { navigator.navController.popBackStack() }, + navigateToBack = { + if (navigator.navController.previousBackStackEntry != null) { + navigator.navController.popBackStack() + } + }, ) } @@ -133,14 +137,20 @@ fun MainNavHost( BitnagilWebViewScreen( title = webViewRoute.title, url = webViewRoute.url, - onBackClick = { navigator.navController.popBackStack() }, + onBackClick = { + if (navigator.navController.previousBackStackEntry != null) { + navigator.navController.popBackStack() + } + }, ) } composable { SettingScreenContainer( navigateToBack = { - navigator.navController.popBackStack() + if (navigator.navController.previousBackStackEntry != null) { + navigator.navController.popBackStack() + } }, navigateToTermsOfService = { navigator.navController.navigate( @@ -190,7 +200,9 @@ fun MainNavHost( } }, navigateToBack = { - navigator.navController.popBackStack() + if (navigator.navController.previousBackStackEntry != null) { + navigator.navController.popBackStack() + } }, ) } @@ -210,7 +222,9 @@ fun MainNavHost( WriteRoutineScreenContainer( viewModel = viewModel, navigateToBack = { - navigator.navController.popBackStack() + if (navigator.navController.previousBackStackEntry != null) { + navigator.navController.popBackStack() + } }, ) } @@ -218,7 +232,9 @@ fun MainNavHost( composable { EmotionScreenContainer( navigateToBack = { - navigator.navController.popBackStack() + if (navigator.navController.previousBackStackEntry != null) { + navigator.navController.popBackStack() + } }, ) } diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 187b4919..47973da5 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -5,7 +5,7 @@ minSdk = "28" targetSdk = "35" ## App Versioning -versionCode = "1" +versionCode = "2" versionName = "1.0" # Android Gradle Plugin diff --git a/presentation/src/main/java/com/threegap/bitnagil/presentation/setting/SettingScreen.kt b/presentation/src/main/java/com/threegap/bitnagil/presentation/setting/SettingScreen.kt index 5f54a4eb..1df7064f 100644 --- a/presentation/src/main/java/com/threegap/bitnagil/presentation/setting/SettingScreen.kt +++ b/presentation/src/main/java/com/threegap/bitnagil/presentation/setting/SettingScreen.kt @@ -29,7 +29,6 @@ import com.threegap.bitnagil.designsystem.component.block.BitnagilOptionButton import com.threegap.bitnagil.designsystem.component.block.BitnagilTopBar import com.threegap.bitnagil.presentation.common.flow.collectAsEffect import com.threegap.bitnagil.presentation.setting.component.atom.settingtitle.SettingTitle -import com.threegap.bitnagil.presentation.setting.component.atom.toggleswitch.ToggleSwitch import com.threegap.bitnagil.presentation.setting.component.block.ConfirmDialog import com.threegap.bitnagil.presentation.setting.model.mvi.SettingSideEffect import com.threegap.bitnagil.presentation.setting.model.mvi.SettingState @@ -103,38 +102,6 @@ private fun SettingScreen( ) { Spacer(modifier = Modifier.height(32.dp)) - SettingTitle("알림") - - Row( - modifier = Modifier - .fillMaxWidth() - .height(48.dp) - .padding(horizontal = 16.dp), - horizontalArrangement = Arrangement.SpaceBetween, - verticalAlignment = Alignment.CenterVertically, - ) { - Text("서비스 이용 알림", style = BitnagilTheme.typography.body1Regular) - ToggleSwitch(checked = state.useServiceAlarm, onCheckedChange = { toggleServiceAlarm() }) - } - - Row( - modifier = Modifier - .fillMaxWidth() - .height(48.dp) - .padding(horizontal = 16.dp), - horizontalArrangement = Arrangement.SpaceBetween, - verticalAlignment = Alignment.CenterVertically, - ) { - Text("푸시알림", style = BitnagilTheme.typography.body1Regular) - ToggleSwitch(checked = state.usePushAlarm, onCheckedChange = { togglePushAlarm() }) - } - - Spacer(modifier = Modifier.height(6.dp)) - - HorizontalDivider(modifier = Modifier.height(6.dp), thickness = 6.dp, color = BitnagilTheme.colors.coolGray98) - - Spacer(modifier = Modifier.height(18.dp)) - SettingTitle("정보") Row(