Skip to content

Fix source list scroll/focus bug, add scroll indicators, sort by quality#374

Merged
ProdigyV21 merged 1 commit into
ProdigyV21:mainfrom
test01203:fix/stream-selector-source-list-scroll
Jun 15, 2026
Merged

Fix source list scroll/focus bug, add scroll indicators, sort by quality#374
ProdigyV21 merged 1 commit into
ProdigyV21:mainfrom
test01203:fix/stream-selector-source-list-scroll

Conversation

@test01203

Copy link
Copy Markdown
Contributor

The focus highlight border in the source picker (Sources screen) stopped appearing once D-pad navigation required scrolling, making it look like the list was stuck or not tracking the cursor, with no visual cue that more sources existed off-screen.

  • Add a reusable scrollToKeepFocusVisible() helper that keeps a one-item buffer above/below the focused row so its border isn't clipped by the viewport edge or the scroll-indicator overlay
  • Apply it to both the source list and the ADDONS rail
  • Add canScrollBackward/canScrollForward chevron overlays (with gradient fade) to both the source list and the ADDONS rail
  • Remove the ADDONS rail's tabLabels.take(9) cap and make it a scrollable TvLazyColumn so addons beyond the 9th are reachable
  • Sort sources by resolution, then release type, then size (best quality first), using addon order/title only as tiebreakers
  • Add a searching-for-more-sources spinner next to the source count while background scraping is still in progress
  • Disable system focus on OledSourceRow/AddonRailItem (focusProperties canFocus = false) so manual D-pad navigation remains the sole authority

The focus highlight border in the source picker (Sources screen) stopped
appearing once D-pad navigation required scrolling, making it look like the
list was stuck or not tracking the cursor, with no visual cue that more
sources existed off-screen.

- Add a reusable scrollToKeepFocusVisible() helper that keeps a one-item
  buffer above/below the focused row so its border isn't clipped by the
  viewport edge or the scroll-indicator overlay
- Apply it to both the source list and the ADDONS rail
- Add canScrollBackward/canScrollForward chevron overlays (with gradient
  fade) to both the source list and the ADDONS rail
- Remove the ADDONS rail's tabLabels.take(9) cap and make it a scrollable
  TvLazyColumn so addons beyond the 9th are reachable
- Sort sources by resolution, then release type, then size (best quality
  first), using addon order/title only as tiebreakers
- Add a searching-for-more-sources spinner next to the source count while
  background scraping is still in progress
- Disable system focus on OledSourceRow/AddonRailItem (focusProperties
  canFocus = false) so manual D-pad navigation remains the sole authority
@ProdigyV21 ProdigyV21 merged commit 2cbd623 into ProdigyV21:main Jun 15, 2026
1 check passed
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.

3 participants