@@ -39,6 +39,7 @@ import com.hoc081098.channeleventbus.sample.android.ui.register.stepone.Register
3939import com.hoc081098.channeleventbus.sample.android.ui.register.stepthree.RegisterStepThreeScreen
4040import com.hoc081098.channeleventbus.sample.android.ui.register.steptwo.RegisterStepTwoScreen
4141import org.koin.androidx.compose.koinViewModel
42+ import org.koin.compose.KoinContext
4243import timber.log.Timber
4344
4445@OptIn(ExperimentalLayoutApi ::class )
@@ -47,57 +48,59 @@ class MainActivity : ComponentActivity() {
4748 super .onCreate(savedInstanceState)
4849
4950 setContent {
50- MyApplicationTheme {
51- Surface (
52- modifier = Modifier .fillMaxSize(),
53- color = MaterialTheme .colorScheme.background,
54- ) {
55- val navController = rememberNavController()
56- val currentBackStackEntryAsState = navController.currentBackStackEntryAsState()
57-
58- val route by rememberCurrentRouteAsState(currentBackStackEntryAsState)
59- val previousBackStackEntry by remember(currentBackStackEntryAsState) {
60- derivedStateOf {
61- currentBackStackEntryAsState.value
62- navController.previousBackStackEntry
51+ KoinContext {
52+ MyApplicationTheme {
53+ Surface (
54+ modifier = Modifier .fillMaxSize(),
55+ color = MaterialTheme .colorScheme.background,
56+ ) {
57+ val navController = rememberNavController()
58+ val currentBackStackEntryAsState = navController.currentBackStackEntryAsState()
59+
60+ val route by rememberCurrentRouteAsState(currentBackStackEntryAsState)
61+ val previousBackStackEntry by remember(currentBackStackEntryAsState) {
62+ derivedStateOf {
63+ currentBackStackEntryAsState.value
64+ navController.previousBackStackEntry
65+ }
6366 }
64- }
6567
66- Scaffold (
67- topBar = {
68- TopAppBar (
69- title = {
70- Text (
71- text = when (route) {
72- Route .RegisterStepOne -> " Register step 1"
73- Route .RegisterStepTwo -> " Register step 2"
74- Route .RegisterStepThree -> " Register step 3"
75- Route .Home -> " Home"
76- Route .Detail -> " Detail"
77- null -> " "
78- },
79- )
80- },
81- navigationIcon = {
82- if (previousBackStackEntry != null ) {
83- IconButton (onClick = navController::popBackStack) {
84- Icon (
85- imageVector = Icons .Default .ArrowBack ,
86- contentDescription = " Back" ,
87- )
68+ Scaffold (
69+ topBar = {
70+ TopAppBar (
71+ title = {
72+ Text (
73+ text = when (route) {
74+ Route .RegisterStepOne -> " Register step 1"
75+ Route .RegisterStepTwo -> " Register step 2"
76+ Route .RegisterStepThree -> " Register step 3"
77+ Route .Home -> " Home"
78+ Route .Detail -> " Detail"
79+ null -> " "
80+ },
81+ )
82+ },
83+ navigationIcon = {
84+ if (previousBackStackEntry != null ) {
85+ IconButton (onClick = navController::popBackStack) {
86+ Icon (
87+ imageVector = Icons .Default .ArrowBack ,
88+ contentDescription = " Back" ,
89+ )
90+ }
8891 }
89- }
90- },
92+ },
93+ )
94+ },
95+ ) { innerPadding ->
96+ AppNavHost (
97+ modifier = Modifier
98+ .padding(innerPadding)
99+ .consumeWindowInsets(innerPadding)
100+ .fillMaxSize(),
101+ navController = navController,
91102 )
92- },
93- ) { innerPadding ->
94- AppNavHost (
95- modifier = Modifier
96- .padding(innerPadding)
97- .consumeWindowInsets(innerPadding)
98- .fillMaxSize(),
99- navController = navController,
100- )
103+ }
101104 }
102105 }
103106 }
0 commit comments