fix FableLoom graph header running off phone screens and clipping the rail - #5510
Merged
Conversation
… rail The story header packed five labelled action buttons into one non-wrapping row, so Play sat off the right edge of a phone; the stacked graph/rail split then sized itself in viewport units (graph min 55vh + rail max 45vh) even though the pane only gets what's left under the app chrome and this route's <main> is overflow-hidden — so the validation panel's content was cut off below the fold. - Header actions come from one list, rendered as labelled buttons from sm up and demoted into the shared OverflowMenu on phones; Play stays visible. - Graph/rail split is sized against the pane (rail max-h-[45%], graph takes the rest) instead of vh, so the panel is always fully reachable. - Episode picker, + Episode and the Graph/Outline toggle share one row on mobile via a new TabPills mobileSelectClassName escape hatch. - Validation panel: scrollable tab strip, wrapping stat headers, tighter phone padding.
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.
Summary
The FableLoom graph view was unusable on a phone: the story header's five action buttons sat in one non-wrapping row, so Play ran off the right edge of the screen, and the stacked graph/rail split was sized in viewport units (graph
min-h-[55vh]+ railmax-h-[45vh]) even though the pane only gets what's left under the app chrome — and this route's<main>isoverflow-hidden, so the validation panel's content was simply cut off below the fold.smup and demoted into the sharedOverflowMenuon phones; Play stays visible as the primary action. Every action keeps an explicitaria-label.max-h-[45%], graph takes the rest) instead ofvh, so the selected/validation content is always reachable.+ Episodeand the Graph/Outline toggle share a row via a newmobileSelectClassNameescape hatch onTabPills.14 cuts · … · depth 12line no longer collides with the heading), tighter phone padding.Test plan
client: 826 files / 10,481 tests pass;npm run lintclean.server: 1,779 files / 36,270 tests pass (no server changes; run as a guard).FableLoomStory.test.jsx: the rail is capped against the pane with novhinline style and the graph pane keepsflex-1 min-h-0; every header action is reachable and actionable from the phone overflow menu.