From e7d2fa3d62f7fbf7a071d75d1035cb01c0fd2c1a Mon Sep 17 00:00:00 2001 From: Barnabas Balogh Date: Wed, 18 Feb 2026 15:53:24 +0100 Subject: [PATCH] feat: Use fraction for the size of MediaHero component --- .../bbara/purefin/app/content/episode/EpisodeScreen.kt | 2 +- .../hu/bbara/purefin/app/content/movie/MovieScreen.kt | 2 +- .../bbara/purefin/app/content/series/SeriesScreen.kt | 2 +- .../hu/bbara/purefin/common/ui/components/MediaHero.kt | 10 +++++++--- 4 files changed, 10 insertions(+), 6 deletions(-) diff --git a/app/src/main/java/hu/bbara/purefin/app/content/episode/EpisodeScreen.kt b/app/src/main/java/hu/bbara/purefin/app/content/episode/EpisodeScreen.kt index e52b68d..c656832 100644 --- a/app/src/main/java/hu/bbara/purefin/app/content/episode/EpisodeScreen.kt +++ b/app/src/main/java/hu/bbara/purefin/app/content/episode/EpisodeScreen.kt @@ -73,7 +73,7 @@ private fun EpisodeScreenInternal( MediaHero( imageUrl = episode.heroImageUrl, backgroundColor = MaterialTheme.colorScheme.background, - height = 250.dp, + heightFraction = 0.30f, modifier = Modifier.fillMaxWidth() ) EpisodeDetails( diff --git a/app/src/main/java/hu/bbara/purefin/app/content/movie/MovieScreen.kt b/app/src/main/java/hu/bbara/purefin/app/content/movie/MovieScreen.kt index 565cdb1..ffc7cff 100644 --- a/app/src/main/java/hu/bbara/purefin/app/content/movie/MovieScreen.kt +++ b/app/src/main/java/hu/bbara/purefin/app/content/movie/MovieScreen.kt @@ -92,7 +92,7 @@ private fun MovieScreenInternal( MediaHero( imageUrl = movie.heroImageUrl, backgroundColor = MaterialTheme.colorScheme.background, - height = 250.dp, + heightFraction = 0.30f, modifier = Modifier.fillMaxWidth() ) MovieDetails( diff --git a/app/src/main/java/hu/bbara/purefin/app/content/series/SeriesScreen.kt b/app/src/main/java/hu/bbara/purefin/app/content/series/SeriesScreen.kt index aa0a34d..99c88c1 100644 --- a/app/src/main/java/hu/bbara/purefin/app/content/series/SeriesScreen.kt +++ b/app/src/main/java/hu/bbara/purefin/app/content/series/SeriesScreen.kt @@ -91,7 +91,7 @@ private fun SeriesScreenInternal( ) { MediaHero( imageUrl = series.heroImageUrl, - height = 250.dp, + heightFraction = 0.30f, backgroundColor = MaterialTheme.colorScheme.background, modifier = Modifier.fillMaxWidth() ) diff --git a/app/src/main/java/hu/bbara/purefin/common/ui/components/MediaHero.kt b/app/src/main/java/hu/bbara/purefin/common/ui/components/MediaHero.kt index 621170c..8134404 100644 --- a/app/src/main/java/hu/bbara/purefin/common/ui/components/MediaHero.kt +++ b/app/src/main/java/hu/bbara/purefin/common/ui/components/MediaHero.kt @@ -9,18 +9,22 @@ import androidx.compose.ui.Modifier import androidx.compose.ui.graphics.Brush import androidx.compose.ui.graphics.Color import androidx.compose.ui.layout.ContentScale -import androidx.compose.ui.unit.Dp +import androidx.compose.ui.platform.LocalConfiguration +import androidx.compose.ui.unit.dp @Composable fun MediaHero( imageUrl: String, backgroundColor: Color, - height: Dp, + heightFraction: Float = 0.4f, modifier: Modifier = Modifier, ) { + val screenHeight = LocalConfiguration.current.screenHeightDp.dp + val heroHeight = screenHeight * heightFraction + Box( modifier = modifier - .height(height) + .height(heroHeight) .background(backgroundColor) ) { PurefinAsyncImage(