refactor: some tweaks in Navigation

- make orientation named to Row and Column
- rename contentSpace to contentSpacing
This commit is contained in:
2023-11-28 22:32:25 +08:00
parent 9e583d383e
commit 3c8a83e5bc

View File

@@ -72,13 +72,13 @@ data class NavigationColors(
@Immutable @Immutable
data class NavigationStyle( data class NavigationStyle(
val padding: PaddingValues, val padding: PaddingValues,
val contentSpace: Dp, val contentSpacing: Dp,
val contentPadding: PaddingValues, val contentPadding: PaddingValues,
val contentShape: Shape val contentShape: Shape
) )
@Composable @Composable
fun HorizontalNavigation( fun NavigationRow(
modifier: Modifier = Modifier, modifier: Modifier = Modifier,
colors: NavigationColors = Navigation.colors, colors: NavigationColors = Navigation.colors,
style: NavigationStyle = Navigation.style, style: NavigationStyle = Navigation.style,
@@ -96,7 +96,7 @@ fun HorizontalNavigation(
} }
@Composable @Composable
fun VerticalNavigation( fun NavigationColumn(
modifier: Modifier = Modifier, modifier: Modifier = Modifier,
colors: NavigationColors = Navigation.colors, colors: NavigationColors = Navigation.colors,
style: NavigationStyle = Navigation.style, style: NavigationStyle = Navigation.style,
@@ -130,7 +130,7 @@ fun NavigationItem(
) { ) {
val currentHorizontal = horizontal ?: LocalHorizontalNavigation.current val currentHorizontal = horizontal ?: LocalHorizontalNavigation.current
val currentColors = colors ?: LocalNavigationColors.current ?: Navigation.colors val currentColors = colors ?: LocalNavigationColors.current ?: Navigation.colors
val currentContentSpace = contentSpace.orElse() ?: LocalNavigationContentSpace.current.orElse() ?: Navigation.style.contentSpace val currentContentSpace = contentSpace.orElse() ?: LocalNavigationContentSpace.current.orElse() ?: Navigation.style.contentSpacing
val currentContentPadding = contentPadding ?: LocalNavigationContentPadding.current ?: Navigation.style.contentPadding val currentContentPadding = contentPadding ?: LocalNavigationContentPadding.current ?: Navigation.style.contentPadding
val currentContentShape = contentShape ?: LocalNavigationContentShape.current ?: Navigation.style.contentShape val currentContentShape = contentShape ?: LocalNavigationContentShape.current ?: Navigation.style.contentShape
val animatedIndicatorColor by animateColorAsState(if (selected) currentColors.indicatorColor else Color.Transparent) val animatedIndicatorColor by animateColorAsState(if (selected) currentColors.indicatorColor else Color.Transparent)
@@ -246,7 +246,7 @@ private fun defaultNavigationStyle() = NavigationStyle(
vertical = LocalSizes.current.spacingSecondary vertical = LocalSizes.current.spacingSecondary
) )
}, },
contentSpace = LocalSizes.current.spacingSecondary, contentSpacing = LocalSizes.current.spacingSecondary,
contentPadding = PaddingValues( contentPadding = PaddingValues(
horizontal = LocalSizes.current.spacingPrimary, horizontal = LocalSizes.current.spacingPrimary,
vertical = LocalSizes.current.spacingSecondary vertical = LocalSizes.current.spacingSecondary