Skip to content

Keep library toolbar buttons together on folded iPhone Duo - #861

Merged
tillkruss merged 1 commit into
developfrom
fix/duo-toolbar-top-bar
Nov 8, 2026
Merged

tillkruss merged 1 commit into
developfrom
fix/duo-toolbar-top-bar

Conversation

@tillkruss

@tillkruss tillkruss commented Nov 8, 2026 •

Copy link
Copy Markdown
Collaborator

Fixes #859.

On the folded Duo, iOS moves plain toolbar items into the side rail but keeps items that host their own view in a bar at the top. Since #831 the filter hosts its own icon to keep the theme-colored badge, while sort was still a Label from #819, so the group split: filter on top, sort in the rail. The instance switcher was hidden when folded because the rail had no room for it.

Sort and the iPhone instance switcher now use ToolbarIconLabel, the same hosted image with an invisible title as the filter. All three sit together at the top on Movies and Series, and only + stays in the rail. The switcher shows on the folded Duo again and always uses the navigation placement, so isFolded and hasVerticalToolbar are no longer needed there. Overflow menus and VoiceOver still get the titles.

Putting everything in the rail instead would need the filter to be a Label again, which brings back the red badge dot #831 fixed.

Tested on iOS 27.2 simulators with the mock API and two Radarr and two Sonarr instances:

  • Folded Duo cover: filter, sort and the instance switcher on top, + in the rail, on Movies and Series.
  • iPhone 18 Pro: toolbar pixel-identical to before. The sort glyph is the same size after dropping .imageScale(.medium), which the hosted image honors and the native item ignored.
  • Unfolded Duo inner display: before, the filter sat alone on top, sort and + were in the rail, and the instance switcher was at the bottom of the rail. Now it matches the folded layout: filter, sort and the instance switcher on top, + in the rail.
  • iOS and macOS builds pass.

Not checked: iPad, where sort now uses the hosted label like the filter already does.

🤖 Generated with Claude Code

On the folded Duo, iOS moves plain toolbar items into the side rail but
keeps items that host their own view in a bar at the top. Since #831 the
filter hosts its own icon to keep the theme-colored badge, while sort was
still a Label from #819, so the group split: filter on top, sort in the
rail. The instance switcher was hidden when folded because the rail had
no room for it.

Sort and the iPhone instance switcher now use ToolbarIconLabel, the same
hosted image with an invisible title as the filter, so all three sit
together on top and only + stays in the rail. The switcher shows on the
folded Duo again and always uses the navigation placement, so isFolded
and hasVerticalToolbar are no longer needed there.

The hosted sort image honors .imageScale(.medium), which the native item
ignored, so the modifier is dropped to keep the glyph size unchanged.
@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Nov 8, 2026 •

Copy link
Copy Markdown
Codex Review Summary: ✅ Completed

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-11-08T21:13:41.456577Z 8172e3f PR opened
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@tillkruss
tillkruss merged commit 41cd007 into develop Nov 8, 2026
6 of 7 checks passed
@tillkruss
tillkruss deleted the fix/duo-toolbar-top-bar branch November 8, 2026 23:42
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.

iPhone Duo instance switcher

1 participant