From eaef1fb4eb4065d7d3479cc85178962f37f91967 Mon Sep 17 00:00:00 2001 From: KhooLy <73142442+KhooLy@users.noreply.github.com> Date: Sun, 19 Jul 2026 17:12:37 +0300 Subject: [PATCH] Thread trailer URL from detail state into DetailUiModel Adds trailerUrl to DetailUiState and DetailUiModel so the detail screen's data source can pass the resolved trailer through, and adds the missing HeroPageChanged branch to CatalogHomeStore's no-op action list. --- .../java/com/fluxa/app/ui/catalog/AndroidDetailDataSource.kt | 1 + .../commonMain/kotlin/com/fluxa/app/ui/catalog/DetailUiState.kt | 1 + .../com/fluxa/app/shared/feature/catalog/CatalogHomeStore.kt | 1 + .../com/fluxa/app/shared/feature/detail/DetailContracts.kt | 1 + 4 files changed, 4 insertions(+) diff --git a/app/src/main/java/com/fluxa/app/ui/catalog/AndroidDetailDataSource.kt b/app/src/main/java/com/fluxa/app/ui/catalog/AndroidDetailDataSource.kt index 24ce1da..cded314 100644 --- a/app/src/main/java/com/fluxa/app/ui/catalog/AndroidDetailDataSource.kt +++ b/app/src/main/java/com/fluxa/app/ui/catalog/AndroidDetailDataSource.kt @@ -52,6 +52,7 @@ class AndroidDetailDataSource( posterUrl = detail.poster, backgroundUrl = detail.background, logoUrl = detail.logo, + trailerUrl = state.trailerUrl, releaseLabel = detail.releaseInfo.orEmpty(), ratingLabel = detail.imdbRating.orEmpty(), runtimeLabel = detail.runtime, diff --git a/data/src/commonMain/kotlin/com/fluxa/app/ui/catalog/DetailUiState.kt b/data/src/commonMain/kotlin/com/fluxa/app/ui/catalog/DetailUiState.kt index d988be0..7462758 100644 --- a/data/src/commonMain/kotlin/com/fluxa/app/ui/catalog/DetailUiState.kt +++ b/data/src/commonMain/kotlin/com/fluxa/app/ui/catalog/DetailUiState.kt @@ -26,5 +26,6 @@ data class DetailUiState( val savedPlayback: Meta? = null, val similarItems: List = emptyList(), val trailers: List = emptyList(), + val trailerUrl: String? = null, val userAddons: List = emptyList() ) diff --git a/shared/src/commonMain/kotlin/com/fluxa/app/shared/feature/catalog/CatalogHomeStore.kt b/shared/src/commonMain/kotlin/com/fluxa/app/shared/feature/catalog/CatalogHomeStore.kt index ea57f9b..2f5c3da 100644 --- a/shared/src/commonMain/kotlin/com/fluxa/app/shared/feature/catalog/CatalogHomeStore.kt +++ b/shared/src/commonMain/kotlin/com/fluxa/app/shared/feature/catalog/CatalogHomeStore.kt @@ -21,6 +21,7 @@ class CatalogHomeStore( is CatalogAction.PlayRequested, is CatalogAction.ResumeRequested, is CatalogAction.ItemFocused, + is CatalogAction.HeroPageChanged, is CatalogAction.MarkWatchedRequested, is CatalogAction.DropRequested, is CatalogAction.AddToLibraryRequested -> Unit diff --git a/shared/src/commonMain/kotlin/com/fluxa/app/shared/feature/detail/DetailContracts.kt b/shared/src/commonMain/kotlin/com/fluxa/app/shared/feature/detail/DetailContracts.kt index 22cac74..93828b7 100644 --- a/shared/src/commonMain/kotlin/com/fluxa/app/shared/feature/detail/DetailContracts.kt +++ b/shared/src/commonMain/kotlin/com/fluxa/app/shared/feature/detail/DetailContracts.kt @@ -48,6 +48,7 @@ data class DetailUiModel( val posterUrl: String?, val backgroundUrl: String?, val logoUrl: String?, + val trailerUrl: String? = null, val releaseLabel: String, val ratingLabel: String, val runtimeLabel: String?,