Repository navigation
fix(browse): lead with the pinned aggregate in library scope listings - #1289
Merged
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Problem
On iPad, the pinned library set is not applied when opening the Libraries tab: the tab bar's Libraries item always lands on All Libraries, showing unfiltered content. The Dashboard and the iPhone Library/Search tabs all default to the pinned scope, so the iPad library tab is the only surface that ignores it.
Root cause
A
TabSection's tab-bar item opens the section's first tab, and the iPad Libraries section listed All Libraries before the Pinned aggregate (a leftover from #1185, which introduced the sidebar-adaptable tabs with the aggregates leading the section in All-first order).Fix
PadTabView): the Pinned aggregate tab now leads the Libraries section while pins exist, so the tab-bar Libraries item opens the pinned scope, matching the default everywhere else.SidebarView) and the shared scope dropdown (LibraryScopeMenu, used by the Dashboard, browse pages, Lists, Offline, and the tvOS header): the same Pinned-first order wherever the All/Pinned pair is listed, since pinned is the default scope on every surface.No behavior change when no libraries are pinned: the Pinned entry only exists while the pinned set is non-empty, and the redirect of a live pinned selection to All on removing the last pin is unchanged.
Validation
make formatmake build— iOS, macOS, and tvOS all build successfully.