music: apply descriptions everywhere

This commit is contained in:
Alexander Capehart 2024-08-28 14:11:19 -06:00
parent cce33e1414
commit fda4548515
No known key found for this signature in database
GPG key ID: 37DBE3621FE9AD47

View file

@ -35,6 +35,7 @@ import org.oxycblt.auxio.music.MusicParent
import org.oxycblt.auxio.music.Playlist import org.oxycblt.auxio.music.Playlist
import org.oxycblt.auxio.music.Song import org.oxycblt.auxio.music.Song
import org.oxycblt.auxio.music.resolveNames import org.oxycblt.auxio.music.resolveNames
import org.oxycblt.auxio.playback.formatDurationDs
import org.oxycblt.auxio.util.getPlural import org.oxycblt.auxio.util.getPlural
sealed interface MediaSessionUID { sealed interface MediaSessionUID {
@ -141,11 +142,13 @@ fun Album.toMediaItem(
MediaSessionUID.ChildItem(parent.uid, uid) MediaSessionUID.ChildItem(parent.uid, uid)
} }
val extras = Bundle().apply { sugar.forEach { this.it(context) } } val extras = Bundle().apply { sugar.forEach { this.it(context) } }
val counts = context.getPlural(R.plurals.fmt_song_count, songs.size)
val description = val description =
MediaDescriptionCompat.Builder() MediaDescriptionCompat.Builder()
.setMediaId(mediaSessionUID.toString()) .setMediaId(mediaSessionUID.toString())
.setTitle(name.resolve(context)) .setTitle(name.resolve(context))
.setSubtitle(artists.resolveNames(context)) .setSubtitle(artists.resolveNames(context))
.setDescription(counts)
.setIconUri(cover.single.mediaStoreCoverUri) .setIconUri(cover.single.mediaStoreCoverUri)
.setExtras(extras) .setExtras(extras)
.build() .build()
@ -173,6 +176,7 @@ fun Artist.toMediaItem(context: Context, vararg sugar: Sugar): MediaItem {
.setMediaId(mediaSessionUID.toString()) .setMediaId(mediaSessionUID.toString())
.setTitle(name.resolve(context)) .setTitle(name.resolve(context))
.setSubtitle(counts) .setSubtitle(counts)
.setDescription(genres.resolveNames(context))
.setIconUri(cover.single.mediaStoreCoverUri) .setIconUri(cover.single.mediaStoreCoverUri)
.setExtras(extras) .setExtras(extras)
.build() .build()
@ -213,6 +217,7 @@ fun Playlist.toMediaItem(context: Context, vararg sugar: Sugar): MediaItem {
.setMediaId(mediaSessionUID.toString()) .setMediaId(mediaSessionUID.toString())
.setTitle(name.resolve(context)) .setTitle(name.resolve(context))
.setSubtitle(counts) .setSubtitle(counts)
.setDescription(durationMs.formatDurationDs(true))
.setIconUri(cover?.single?.mediaStoreCoverUri) .setIconUri(cover?.single?.mediaStoreCoverUri)
.setExtras(extras) .setExtras(extras)
.build() .build()