Fix library navigation and Xbox shell focus for collection browsing#95
Closed
CyberoniOntoni wants to merge 8 commits into
Closed
Fix library navigation and Xbox shell focus for collection browsing#95CyberoniOntoni wants to merge 8 commits into
CyberoniOntoni wants to merge 8 commits into
Conversation
Centralize gamepad virtual-key handling in GamepadInput and route shell navigation (menu toggle, left-edge open, B/Escape back) through NavigationManager at the CoreWindow level so it works on every content page, not only when MainPage has focus. Video playback now maps A to play/pause, X to mute, and D-pad/stick directions to volume and seeking. Login and server selection accept Gamepad A to submit. WebVideo supports B to go back.
Place a styled AutoSuggestBox at the top of MainPage with debounced Jellyfin search hints. Submitting a query or picking a suggestion navigates to search results or item details. Includes a dedicated Search page with portrait result cards and adjusted content page spacing for the new header.
Replace nested TwoWay x:Bind on search text with code-behind TextChanged handling, use ObservableCollection for suggestions with TextMemberPath, simplify the search box style, and restore full-screen navigation overlay span.
Suppress duplicate QuerySubmitted navigation after SuggestionChosen, cancel stale ItemDetails loads when navigating away, and guard against null UserData on series items.
Defer AutoSuggestBox suggestion navigation to the next UI frame, reset ItemDetails playback state between loads, use null-safe stream bindings, navigate cards by item id, and log unhandled exceptions to the debug output.
AutoSuggestBox TextMemberPath requires WinRT bindable custom properties on suggestion items. Selection text is already applied in code when a suggestion is chosen.
Route Home page collection tiles through the same navigation path as the side menu so Movies, TV Shows, Collections, and Books open the library view instead of item details. Add CollectionNavigation to map Jellyfin collection types to library parameters. Introduce ShellFocusCoordinator so search is not focused by default and navigation no longer calls the invalid FocusState.Unfocused API on Xbox. Move library filter toolbar XYFocus bindings to code-behind for console stability. Target Xbox in the app manifest (min OS 22000, JellyBox.exe entry for AOT) and add a win-x64 publish profile for Release sideload builds.
NavigateToItem(Guid) now fetches the item from the API and routes through the same CollectionNavigation logic as the DTO overload, so library collections are not always opened as item details.
This was referenced Jun 20, 2026
Contributor
Author
|
Splitting further per feedback — closing this PR in favor of three smaller stacked PRs:
Bite-sized diffs (fork stacked)
Merge after #94, in the order above. |
Contributor
Author
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.
Summary
Fixes library browsing from Home and side menu on Xbox, plus Xbox packaging tweaks.
Library navigation
CollectionNavigationfor Movies, TV Shows, Collections (box sets), and BooksNavigateToItem(Guid)fetches item metadata before routing so collections are not always opened as item detailsXbox shell focus
ShellFocusCoordinatorso search is not auto-focused on loadFocusState.UnfocusedAPI usage that crashed navigation on XboxXbox packaging
JellyBox.exeentry point for Native AOTwin-x64.pubxmlpublish profile for Release sideload buildsMerge order
Replaces the library portion of closed #89.
Test plan
0xc000027b)Notes