Skip to content

feat(ui): inline large bar title on iPhone tab roots - #1204

Merged
everpcpc merged 3 commits into
mainfrom
feat/inline-large-bar-title
Oct 4, 2026
Merged

everpcpc merged 3 commits into
mainfrom
feat/inline-large-bar-title

Conversation

@everpcpc

@everpcpc everpcpc commented Oct 4, 2026 •

Copy link
Copy Markdown
Member

What

  • iPhone tab roots (Dashboard, Library, Offline, Search) now render a large serif title at the leading edge of the navigation bar row via ToolbarItem(placement: .largeTitle) + .toolbarTitleDisplayMode(.inlineLarge), gated to iOS 26+. The system hides the title on scroll down and restores it at the top by itself; the bar buttons stay put, and the bar background plus the top scroll-edge effect stay hidden so only the floating buttons remain. No system navigation title is set, so no collapsed bar title ever appears.
  • Library picker moves to the trailing side on iPhone — on every page that shows it, tab roots and pushed browse pages alike — split from the ellipsis menu into its own capsule by a fixed ToolbarSpacer on iOS 26+ (on earlier iOS versions it also moves trailing, just without the spacer). Placement is unchanged elsewhere: leading (.cancellationAction) on iPad, .navigation on macOS.
  • The Home tab is renamed to Dashboard (drops the now-unused tab.home localization key; macOS window title unchanged).
  • Dashboard content no longer adds its own vertical padding — the taller inline-large bar provides the top spacing, and section bands already carry their own vertical rhythm. Title-to-first-section gap goes from 67pt to 51pt.

Why

The tab roots had no visible title on iPhone, and the library picker sat inside the trailing menu capsule. A leading large title gives each tab a clear identity in the bar row without spending content space on an in-content header, and the picker reads as its own control next to the menu.

Validation

  • make build green on iOS, macOS, tvOS.
  • iPhone 18 Pro simulator (iOS 27): all four tabs show the leading serif large title; scrolling down hides it while buttons stay, scrolling back restores it; no bar background or top blur; picker renders as a separate trailing capsule; pushed detail pages keep their normal bars.
  • iPad Pro 13 simulator: no large title item, picker stays leading and opens correctly.
  • make localize / translate.py list: no missing keys after removing tab.home.

Includes make bump to build 624.

@everpcpc
everpcpc merged commit a999097 into main Oct 4, 2026
3 checks passed
@everpcpc
everpcpc deleted the feat/inline-large-bar-title branch October 4, 2026 14:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant