Skip to content

Commit

Permalink
style: Clean OnboardingScreen
Browse files Browse the repository at this point in the history
  • Loading branch information
LunarX committed Dec 4, 2024
1 parent 6f4cbe5 commit 16be839
Showing 1 changed file with 11 additions and 16 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -67,19 +67,17 @@ fun OnboardingScreen(goToMainActivity: () -> Unit) {
}

val onboardingPages = buildList {
Page.entries.forEach { page ->
add(page.toOnboardingPage(isHighlighted))
}
Page.entries.forEach { page -> add(page.toOnboardingPage(isHighlighted)) }
}

OnboardingScaffold(
pagerState = pagerState,
onboardingPages = onboardingPages,
bottomContent = {
bottomContent = { paddingValues ->
BottomContent(
modifier = Modifier
.padding(it)
.consumeWindowInsets(it),
.padding(paddingValues)
.consumeWindowInsets(paddingValues),
isLastPage = { isLastPage },
startMainActivity = goToMainActivity,
goToNextPage = { coroutineScope.launch { pagerState.animateScrollToPage(pagerState.currentPage + 1) } },
Expand All @@ -91,7 +89,7 @@ fun OnboardingScreen(goToMainActivity: () -> Unit) {
@Composable
private fun Page.toOnboardingPage(isHighlighted: Map<Page, MutableState<Boolean>>) = OnboardingPage(
background = background.image(),
illustration = { Illustration(illustration) },
illustration = { Image(illustration.image(), contentDescription = null) },
text = {
TitleAndDescription(
page = this,
Expand All @@ -100,11 +98,6 @@ private fun Page.toOnboardingPage(isHighlighted: Map<Page, MutableState<Boolean>
}
)

@Composable
private fun Illustration(illustration: ThemedImage) {
Image(illustration.image(), contentDescription = null)
}

@Composable
private fun TitleAndDescription(page: Page, isHighlighted: () -> Boolean) {
Column(horizontalAlignment = Alignment.CenterHorizontally) {
Expand Down Expand Up @@ -132,7 +125,7 @@ private fun BottomContent(
modifier: Modifier = Modifier,
isLastPage: () -> Boolean,
startMainActivity: () -> Unit,
goToNextPage: () -> Unit
goToNextPage: () -> Unit,
) {
Box(
contentAlignment = Alignment.Center,
Expand All @@ -147,6 +140,8 @@ private fun BottomContent(
}
}

private const val HIGHLIGHT_ANGLE = 3.0

private enum class Page(
val background: ThemedImage,
val illustration: ThemedImage,
Expand All @@ -161,23 +156,23 @@ private enum class Page(
titleRes = R.string.onboardingStorageTitle,
subtitleTemplateRes = R.string.onboardingStorageSubtitleTemplate,
subtitleArgumentRes = R.string.onboardingStorageSubtitleArgument,
highlightAngleDegree = -3.0,
highlightAngleDegree = -HIGHLIGHT_ANGLE,
),
EXPIRATION(
background = AppIllus.RadialGradientCornerTopLeft,
illustration = AppIllus.ThreeCardsTransferType,
titleRes = R.string.onboardingExpirationTitle,
subtitleTemplateRes = R.string.onboardingExpirationSubtitleTemplate,
subtitleArgumentRes = R.string.onboardingExpirationSubtitleArgument,
highlightAngleDegree = -3.0,
highlightAngleDegree = -HIGHLIGHT_ANGLE,
),
PASSWORD(
background = AppIllus.RadialGradientCornerTopRight,
illustration = AppIllus.TwoPadlocksIntertwinedStars,
titleRes = R.string.onboardingPasswordTitle,
subtitleTemplateRes = R.string.onboardingPasswordSubtitleTemplate,
subtitleArgumentRes = R.string.onboardingPasswordSubtitleArgument,
highlightAngleDegree = 3.0,
highlightAngleDegree = HIGHLIGHT_ANGLE,
),
}

Expand Down

0 comments on commit 16be839

Please sign in to comment.