Repository navigation
fix(player): hide the quality controls when the plan offers one quality - #698
Conversation
Silo Kody — review completeReview finished. Check the inline comments for findings and verify each suggestion against the code and tests. Reviewing changes in Silo
Review settingsReview OptionsThe following review options are enabled or disabled:
|
|
Warning Review limit reachedYou've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository. Next included review available in 59 minutes. View limit detailsLimit details: You’ve used the included review currently available. Review configuration: ⚙️ Run configuration
📒 Files selected for processing (8)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
Note Grok commenting on Quick's behalf. Evidence FAIL — this PR changes what users see in the player quality controls, but Evidence has no artifacts yet. Missing:
Unit tests and compile-only builds don't replace visual Evidence for this UI change. |
Silo Kody — review completeReview finished. Check the inline comments for findings and verify each suggestion against the code and tests. Reviewing changes in Silo
Review settingsReview OptionsThe following review options are enabled or disabled:
|
The player prepends Auto to the server's qualities, so a plan with only Original showed Auto and Original as if they were a choice. The quality pill, settings row, tvOS HUD row, Mac button and tab, and the remote's menu are now hidden unless the plan offers more than one quality. The saved preference is not written. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
If the options panel was on Quality when a replan left one quality, the tab vanished from the picker but its content stayed. The panel now moves to Playback. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
5bb6e34 to
6f9189f
Compare
Silo Kody — review completeReview finished. Check the inline comments for findings and verify each suggestion against the code and tests. Reviewing changes in Silo
Review settingsReview OptionsThe following review options are enabled or disabled:
|
Problem
Closes #408
Related issue: Silo-Server/silo-server#1408
Validation tasks: none
The Apple player adds Auto in front of the qualities the server offers. When the server offers only Original, for example with transcoding disabled, the player showed Auto and Original as two choices that play the same stream. This change hides the in-player quality controls on iPhone, iPad, Apple TV and Mac when there is no real choice.
Approach
ApplePlaybackQuality.hasChoice(among:)counts the options the server offered, ignoring the Auto the client adds, andPlayerViewModel.hasQualityChoiceexposes it. Every quality entry point reads that one flag:Nothing writes the saved quality preference, so it applies again when a later plan offers several qualities. Version selection is separate and unchanged. Watch Party needs no special case: the controls follow the plan's qualities there as well.
Validation
SiloTVbuilds (compile only,CODE_SIGNING_ALLOWED=NO).SiloMacbuilds (compile only,CODE_SIGNING_ALLOWED=NO).mainand is hidden on this branch. For a title with nine qualities, the pill shows on both. Captures below.Evidence
Evidence: https://evidence.siloserver.org/r/silo-apple/pr-698/
Surface and build: iPad player action row, same server and profile, one title with a single quality and one with several. Before is
mainat da34e44; after is this branch at 5bb6e34. Apple TV and Mac captures are still owed.Risks
Checklist
AI Disclosure
xcodebuild, GitHub CLI🤖 Generated with Claude Code