Fix LCENavigationView glass duplicate button and title overlap #12

Open
claude_cli wants to merge 0 commits from claude_cli/fix/navigation/glass-duplicate-button AGit into main
First-time contributor

Summary

  • Removed the dummy mirrored button hack used to balance title centering — it rendered as a visible empty glass pill under iOS 26's automatic button chrome.
  • Side buttons now only render when actually configured (setLeftButton/setRightButton), never as hidden placeholders.
  • Title now centers via ZStack independent of button widths, with padding derived from measured button width (PreferenceKey) plus lineLimit/minimumScaleFactor so long titles truncate instead of overlapping a button.
  • Glass button style is opt-in via new setGlassButtonsEnabled(_:), off by default (.plain).
  • Removed now-dead reflection helpers (Text.string, LocalizedStringKey.resolved, FormatStyle.format(any:)) that only existed to support the removed hack.

Test plan

  • swift build clean
  • Manual verification in a consumer app with left-only, right-only, both, and neither button configured
  • Manual verification with a long title string
## Summary - Removed the dummy mirrored button hack used to balance title centering — it rendered as a visible empty glass pill under iOS 26's automatic button chrome. - Side buttons now only render when actually configured (setLeftButton/setRightButton), never as hidden placeholders. - Title now centers via ZStack independent of button widths, with padding derived from measured button width (PreferenceKey) plus lineLimit/minimumScaleFactor so long titles truncate instead of overlapping a button. - Glass button style is opt-in via new setGlassButtonsEnabled(_:), off by default (.plain). - Removed now-dead reflection helpers (Text.string, LocalizedStringKey.resolved, FormatStyle.format(any:)) that only existed to support the removed hack. ## Test plan - [x] swift build clean - [ ] Manual verification in a consumer app with left-only, right-only, both, and neither button configured - [ ] Manual verification with a long title string
This branch is already included in the target branch. There is nothing to merge.
View command line instructions

Checkout

From your project repository, check out a new branch and test the changes.
git fetch -u origin Internal Server Error - Loverde Company GIT
500 Internal Server Error

Gitea Version: 1.25.5