mirror of
https://github.com/FluxaMedia/fluxa.git
synced 2026-08-05 08:18:41 +00:00
Extracts the "which stream/episode plays, is it cs3, how much resume progress" decision into a pure DetailNavigationLogic object in commonMain. DetailStore (used by mobile's shared CMP Detail screen) now delegates to it instead of carrying its own copy. DetailRoute.kt (Android TV's legacy Detail route - mobile no longer reaches this file after the earlier Detail route migration) now calls the same DetailNavigationLogic functions instead of its own hand- rolled duplicate of the same branching, so both platforms make this decision through one code path. TvDetailScreenContent's rendering is untouched - it still reads DetailViewModel directly, since it needs richer domain data (MetaDetail/Video/Stream) than the lightweight shared Detail UI models carry. Preserves the movie-vs-series distinction from the original TV logic: Play button on a movie always targets a null video id (no accidental resume-progress carryover), matching the legacy behavior exactly. |
||
|---|---|---|
| .. | ||
| src | ||
| build.gradle.kts | ||