A title per page, scroll that resets between pages, and the player-owner's line (#796) #799
Loading…
Reference in a new issue
No description provided.
Delete branch "build/796-titles-scroll"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Closes #796 (R4, from the B-questions).
Titles (WCAG 2.4.2)
AppFramesetsdocument.titleonce per navigation from the bar's own breadcrumb (titleForinuseContents.js). The breadcrumb's root moves to just before the brand:useDocumentTitlehook: help (index and each guide), sign in, privacy, licences, accessibility, setup (per step), the invitation (with the campaign's name once it's known), and not found. The front door is just "Quest Board".pageTitle()invocabulary.jsdrops empty segments, so a page whose data is still loading never shows "undefined".Scroll
.book__mainback at the top. If the address has a fragment, it scrolls to the element the fragment names instead, which is the same targetuseRouteFocusresolves (fragmentTarget, now exported). If the target arrives late with a lazy page, a boundedMutationObserverkeeps looking.pathname → scrollTopmap. React Router'sScrollRestorationonly restores the window, and in this app the window never scrolls.The player-owner's line (D93)
A campaign owner who isn't its GM now reads "You're a player, and you own this campaign." The GM's line is unchanged.
Checks
useScrollRestoration.test.jsx, which uses the test-controlledarrive()gate rather than timers.AppFrame.test.jsx.🤖 Generated with Claude Code