Skip to content

fix(tv): restore imports, UI mode selection, and channel navigation - #7

Merged
PastaHimself merged 54 commits into
tv-stufffrom
fix/tv-stuff-feedback
Sep 4, 2026
Merged

PastaHimself merged 54 commits into
tv-stufffrom
fix/tv-stuff-feedback

Conversation

@PastaHimself

@PastaHimself PastaHimself commented Sep 3, 2026

Copy link
Copy Markdown
Owner

Summary

Fixes the remaining Android TV regressions from the tv-stuff feedback pass:

  • adds a TV-native Import Data route using Android's system document picker
    • Flow backup JSON
    • master backup ZIP
    • YouTube subscription OPML/XML
    • NewPipe subscriptions JSON
    • LibreTube subscriptions JSON
    • YouTube Takeout ZIP
  • adds a shared OPML/XML subscription parser/importer for canonical YouTube channel feeds, including XML entity decoding and duplicate-channel suppression
  • fixes Settings → UI mode jumping back to the first settings category when selecting Mobile or TV by removing the forced focus clear/frame delay
  • makes the channel name in the TV video overlay actionable and routes to the existing TV channel screen so users can open the channel and subscribe

Regression coverage

  • OPML parser tests cover YouTube feed outlines, XML entities, duplicate channel IDs, unsupported feeds, and non-XML input
  • TV regression guards fail unit CI if the forced focus clear/frame wait is reintroduced or the player → channel route/button is removed

Sync findings

The two reported device-sync failures are already addressed in the current tv-stuff base and are intentionally not reworked in this PR:

  • recommendation/FlowNeuro sync already emits the desktop-compatible bare G-counter map rather than the old perDevice wrapper that caused invalid-JSON/type failures
  • followed channels already sync through the dedicated subscribed_channels collection independently from subscription groups, so subscriptions no longer depend on groups existing

Existing regression coverage for those sync paths remains in place.

Validation

  • based on current tv-stuff HEAD (cf2e0cea19933a54aab29e9ef39daffeb6ce9b36)
  • GitHub Actions is the authoritative Android validation because the local runtime cannot resolve the Gradle distribution host
  • current head validation is running on the CI-only main-target PR ci(tv): validate tv-stuff fixes #8

Base: tv-stuff
Head: fix/tv-stuff-feedback

@github-actions github-actions Bot added the ci label Sep 3, 2026
@PastaHimself
PastaHimself merged commit d67cc9e into tv-stuff Sep 4, 2026
6 checks passed
@PastaHimself
PastaHimself deleted the fix/tv-stuff-feedback branch September 5, 2026 11:49
@PastaHimself
PastaHimself restored the fix/tv-stuff-feedback branch September 5, 2026 11:49
@PastaHimself
PastaHimself deleted the fix/tv-stuff-feedback branch September 5, 2026 11:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant