drop the artist header scrim, shadow the title, space the grid

This commit is contained in:
austinried
2026-10-04 00:29:52 +00:00
parent 228fe08783
commit a365491e42
@@ -1,6 +1,5 @@
package com.subtracks.ui.library package com.subtracks.ui.library
import androidx.compose.foundation.background
import androidx.compose.foundation.clickable import androidx.compose.foundation.clickable
import androidx.compose.foundation.layout.Arrangement import androidx.compose.foundation.layout.Arrangement
import androidx.compose.foundation.layout.Box import androidx.compose.foundation.layout.Box
@@ -30,8 +29,9 @@ import androidx.compose.runtime.getValue
import androidx.compose.ui.Alignment import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier import androidx.compose.ui.Modifier
import androidx.compose.ui.draw.clip import androidx.compose.ui.draw.clip
import androidx.compose.ui.graphics.Brush import androidx.compose.ui.geometry.Offset
import androidx.compose.ui.graphics.Color import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.Shadow
import androidx.compose.ui.text.style.TextOverflow import androidx.compose.ui.text.style.TextOverflow
import androidx.compose.ui.unit.dp import androidx.compose.ui.unit.dp
import androidx.lifecycle.compose.collectAsStateWithLifecycle import androidx.lifecycle.compose.collectAsStateWithLifecycle
@@ -43,7 +43,6 @@ import org.koin.compose.viewmodel.koinViewModel
import org.koin.core.parameter.parametersOf import org.koin.core.parameter.parametersOf
private val ART_HEIGHT = 420.dp private val ART_HEIGHT = 420.dp
private val SCRIM_HEIGHT = 128.dp
@Composable @Composable
fun ArtistDetailRoute( fun ArtistDetailRoute(
@@ -85,20 +84,11 @@ fun ArtistDetailScreen(
modifier = Modifier.fillMaxSize(), modifier = Modifier.fillMaxSize(),
) { ) {
item(span = { GridItemSpan(maxLineSpan) }) { item(span = { GridItemSpan(maxLineSpan) }) {
Box(Modifier.fillMaxWidth().height(ART_HEIGHT)) { Box(Modifier.fillMaxWidth().padding(bottom = 12.dp)) {
CoverArt( CoverArt(
ref = art, ref = art,
name = artist?.name.orEmpty(), name = artist?.name.orEmpty(),
modifier = Modifier.fillMaxSize(), modifier = Modifier.fillMaxWidth().height(ART_HEIGHT),
)
Box(
modifier =
Modifier
.fillMaxWidth()
.height(SCRIM_HEIGHT)
.background(
Brush.verticalGradient(listOf(Color.Black.copy(alpha = 0.6f), Color.Transparent)),
),
) )
} }
} }
@@ -137,7 +127,15 @@ fun ArtistDetailScreen(
title = { title = {
Text( Text(
text = artist?.name.orEmpty(), text = artist?.name.orEmpty(),
style = MaterialTheme.typography.headlineLarge, style =
MaterialTheme.typography.headlineLarge.copy(
shadow =
Shadow(
color = Color.Black.copy(alpha = 0.8f),
offset = Offset(0f, 2f),
blurRadius = 10f,
),
),
maxLines = 1, maxLines = 1,
overflow = TextOverflow.Ellipsis, overflow = TextOverflow.Ellipsis,
) )