@@ -743,42 +743,58 @@ class MainActivity : AppCompatActivity() {
743743 )
744744
745745 Box (modifier = Modifier .fillMaxSize()) {
746- CompositionLocalProvider (
747- LocalSnackbarHost provides snackBarHostState,
748- LocalScrollState provides if (isFloatingMode) ScrollState (
749- isScrollingDown = isScrollingDown,
750- scrollOffset = scrollOffset,
751- previousScrollOffset = previousScrollOffset
752- ) else null ,
753- LocalBottomBarVisible provides bottomBarVisibleState,
754- LocalIsFloatingNavMode provides isFloatingMode
755- ) {
756- DestinationsNavHost (
757- modifier = Modifier
758- .fillMaxSize()
759- .then(
760- if (useNavigationRail) Modifier .padding(start = 80 .dp) else Modifier
761- )
762- .navBarLiquefiable(
763- if (shouldExposeContentToLiquid) floatingLiquidState else null
764- )
765- .then(
766- when {
767- isFloatingMode -> Modifier .nestedScroll(scrollConnection)
768- ! useNavigationRail -> Modifier .padding(bottom = 80 .dp)
769- else -> Modifier
770- }
771- ),
772- navGraph = NavGraphs .root,
773- navController = navController,
774- engine = rememberNavHostEngine(navHostContentAlignment = Alignment .TopCenter ),
775- defaultTransitions = navTransitions
746+ val baseContentModifier = Modifier
747+ .navBarLiquefiable(
748+ if (shouldExposeContentToLiquid) floatingLiquidState else null
749+ )
750+ .then(
751+ when {
752+ isFloatingMode -> Modifier .nestedScroll(scrollConnection)
753+ ! useNavigationRail -> Modifier .padding(bottom = 80 .dp)
754+ else -> Modifier
755+ }
776756 )
777- }
778757
779758 if (useNavigationRail) {
780- Box (modifier = Modifier .align( Alignment . CenterStart )) {
759+ Row (modifier = Modifier .fillMaxSize( )) {
781760 NavigationRailBar (navController)
761+ CompositionLocalProvider (
762+ LocalSnackbarHost provides snackBarHostState,
763+ LocalScrollState provides if (isFloatingMode) ScrollState (
764+ isScrollingDown = isScrollingDown,
765+ scrollOffset = scrollOffset,
766+ previousScrollOffset = previousScrollOffset
767+ ) else null ,
768+ LocalBottomBarVisible provides bottomBarVisibleState,
769+ LocalIsFloatingNavMode provides isFloatingMode
770+ ) {
771+ DestinationsNavHost (
772+ modifier = Modifier .weight(1f ).then(baseContentModifier),
773+ navGraph = NavGraphs .root,
774+ navController = navController,
775+ engine = rememberNavHostEngine(navHostContentAlignment = Alignment .TopCenter ),
776+ defaultTransitions = navTransitions
777+ )
778+ }
779+ }
780+ } else {
781+ CompositionLocalProvider (
782+ LocalSnackbarHost provides snackBarHostState,
783+ LocalScrollState provides if (isFloatingMode) ScrollState (
784+ isScrollingDown = isScrollingDown,
785+ scrollOffset = scrollOffset,
786+ previousScrollOffset = previousScrollOffset
787+ ) else null ,
788+ LocalBottomBarVisible provides bottomBarVisibleState,
789+ LocalIsFloatingNavMode provides isFloatingMode
790+ ) {
791+ DestinationsNavHost (
792+ modifier = Modifier .fillMaxSize().then(baseContentModifier),
793+ navGraph = NavGraphs .root,
794+ navController = navController,
795+ engine = rememberNavHostEngine(navHostContentAlignment = Alignment .TopCenter ),
796+ defaultTransitions = navTransitions
797+ )
782798 }
783799 }
784800
@@ -1478,7 +1494,7 @@ private fun NavigationRailBar(navController: NavHostController) {
14781494 label = {
14791495 Text (
14801496 text = stringResource(destination.label),
1481- overflow = TextOverflow .Visible ,
1497+ overflow = TextOverflow .Ellipsis ,
14821498 maxLines = 1 ,
14831499 softWrap = false
14841500 )
@@ -1487,7 +1503,7 @@ private fun NavigationRailBar(navController: NavHostController) {
14871503 )
14881504 }
14891505 }
1490-
1506+
14911507 Spacer (Modifier .weight(1f ))
14921508 }
14931509 }
0 commit comments