put the download indicator on the artist line, tight to its left

The glyph and the progress ring sat in the title row after the star, spaced 8dp;
they now lead the subtitle row, 4dp from the artist name, which is where the
artist line has room for them. `theDownloadedIndicatorSitsOnTheArtistLineToItsLeft`
measures the unmerged bounds and fails if the indicator moves back up to the
title line or to the artist's right.
This commit is contained in:
austinried
2026-10-04 00:30:01 +00:00
parent 9cdbc92975
commit b9e16d8377
2 changed files with 27 additions and 7 deletions
@@ -89,16 +89,21 @@ fun SongRow(
modifier = Modifier.weight(1f, fill = false),
)
StarredBadge(song.starred != null)
DownloadBadge(download)
}
},
supportingContent = {
Text(
text = song.artist.orEmpty().ifEmpty { "\u00A0" },
color = if (isPlaying) MaterialTheme.colorScheme.primary else MaterialTheme.colorScheme.onSurfaceVariant,
maxLines = 1,
overflow = TextOverflow.Ellipsis,
)
Row(
verticalAlignment = Alignment.CenterVertically,
horizontalArrangement = Arrangement.spacedBy(4.dp),
) {
DownloadBadge(download)
Text(
text = song.artist.orEmpty().ifEmpty { "\u00A0" },
color = if (isPlaying) MaterialTheme.colorScheme.primary else MaterialTheme.colorScheme.onSurfaceVariant,
maxLines = 1,
overflow = TextOverflow.Ellipsis,
)
}
},
colors = ListItemDefaults.colors(containerColor = Color.Transparent),
)