Fix welcome screen layout overflow; rebrand web loader#95
Merged
Conversation
The wide-layout Row in welcome_view.dart used CrossAxisAlignment.stretch inside a SingleChildScrollView (vertically unbounded), forcing an infinite height and throwing a cascade of layout assertions on load. Wrap it in IntrinsicHeight so stretch resolves to the tallest card's height, keeping equal-height feature cards without the bad constraint. Also rebrand web/index.html's loading screen from Bonfire's fire palette to Daccord's accent colors (#5764F1 family) to match the app's dark theme. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What changed
Rowinwelcome_view.dartusedCrossAxisAlignment.stretchwhile nested inside aSingleChildScrollView(vertically unbounded).stretchtherefore tried to size the row to infinite height, throwingBoxConstraints forces an infinite heighton first layout, followed by a cascade of "render box with no size" / "cannot hit test" errors. Wrapping theRowinIntrinsicHeightbounds it to the tallest card's height, so the feature cards still render at equal heights without the bad constraint.web/index.html) from Bonfire's fire palette to Daccord's accent colors (#5764F1family), matching the app's dark theme.Why
The welcome/onboarding screen — the first thing a user sees on web (and any layout wider than 420px) — threw a continuous stream of rendering exceptions on load. The
IntrinsicHeightwrap is the minimal fix that preserves the intended equal-height card row.Testing
flutter run -d chrome) before and after.EXCEPTION CAUGHT BY RENDERING LIBRARY/ infinite-height assertions on load.localhost:8088.Reviewer notes
pubspec.lockis intentionally not included. Local verification ran on stable Flutter 3.38.1 (the repo pinsbetavia.fvmrc, whose Dart SDK requires macOS 14; the test machine is on 13.0), which downgraded several locked packages. That lockfile churn was reverted so it doesn't leak into the repo —pubspec.lockis unchanged frommaster.🤖 Generated with Claude Code