Top-align onboarding content in all steps

This commit is contained in:
alexandrev-tibco
2026-02-26 10:58:24 +01:00
parent b0c7a41625
commit 37c2e01a09
6 changed files with 10 additions and 0 deletions
@@ -152,5 +152,6 @@ struct CalendarStepView: View {
} message: {
Text("calendar_permission_message")
}
.frame(maxWidth: .infinity, maxHeight: .infinity, alignment: .top)
}
}
@@ -239,6 +239,7 @@ struct FirstDishesStepView: View {
ensureDefaultTagsIfNeeded()
}
}
.frame(maxWidth: .infinity, maxHeight: .infinity, alignment: .top)
}
private func suggestedDishes() -> [(name: String, tagHints: [String])] {
@@ -35,6 +35,7 @@ struct MealWindowsStepView: View {
.padding(.top, 8)
.padding(.bottom, 40)
}
.frame(maxWidth: .infinity, maxHeight: .infinity, alignment: .top)
}
private func optionTitle(_ option: MealWindows) -> String {
@@ -27,18 +27,21 @@ struct OnboardingView: View {
TabView(selection: $viewModel.currentStep) {
WelcomeStepView(onNext: { viewModel.nextStep() })
.frame(maxWidth: .infinity, maxHeight: .infinity, alignment: .top)
.tag(0)
MealWindowsStepView(
selection: $viewModel.selectedMealWindows,
onNext: { viewModel.nextStep() }
)
.frame(maxWidth: .infinity, maxHeight: .infinity, alignment: .top)
.tag(1)
WeekendsStepView(
includeWeekends: $viewModel.includeWeekends,
onNext: { viewModel.nextStep() }
)
.frame(maxWidth: .infinity, maxHeight: .infinity, alignment: .top)
.tag(2)
CalendarStepView(
@@ -53,6 +56,7 @@ struct OnboardingView: View {
onNext: { viewModel.nextStep() },
onSkip: { viewModel.nextStep() }
)
.frame(maxWidth: .infinity, maxHeight: .infinity, alignment: .top)
.tag(3)
FirstDishesStepView(
@@ -64,6 +68,7 @@ struct OnboardingView: View {
}
}
)
.frame(maxWidth: .infinity, maxHeight: .infinity, alignment: .top)
.tag(4)
}
.tabViewStyle(.page(indexDisplayMode: .never))
@@ -45,5 +45,6 @@ struct WeekendsStepView: View {
.padding(.top, 8)
.padding(.bottom, 40)
}
.frame(maxWidth: .infinity, maxHeight: .infinity, alignment: .top)
}
}
@@ -31,6 +31,7 @@ struct WelcomeStepView: View {
.padding(.horizontal, 24)
.padding(.bottom, 40)
}
.frame(maxWidth: .infinity, maxHeight: .infinity, alignment: .top)
}
}