playback: remove joined uids from parents

Not needed.
This commit is contained in:
Alexander Capehart 2024-04-11 15:08:34 -06:00
parent 3b14c35c2d
commit 33916deb5c
No known key found for this signature in database
GPG key ID: 37DBE3621FE9AD47
2 changed files with 16 additions and 24 deletions

View file

@ -88,13 +88,8 @@ fun Song.toMediaItem(context: Context, parent: MusicParent?): MediaItem {
.build() .build()
} }
fun Album.toMediaItem(context: Context, parent: Artist?): MediaItem { fun Album.toMediaItem(context: Context): MediaItem {
val mediaSessionUID = val mediaSessionUID = MediaSessionUID.Single(uid)
if (parent == null) {
MediaSessionUID.Single(uid)
} else {
MediaSessionUID.Joined(parent.uid, uid)
}
val metadata = val metadata =
MediaMetadata.Builder() MediaMetadata.Builder()
.setTitle(name.resolve(context)) .setTitle(name.resolve(context))
@ -119,13 +114,8 @@ fun Album.toMediaItem(context: Context, parent: Artist?): MediaItem {
.build() .build()
} }
fun Artist.toMediaItem(context: Context, parent: Genre?): MediaItem { fun Artist.toMediaItem(context: Context): MediaItem {
val mediaSessionUID = val mediaSessionUID = MediaSessionUID.Single(uid)
if (parent == null) {
MediaSessionUID.Single(uid)
} else {
MediaSessionUID.Joined(parent.uid, uid)
}
val metadata = val metadata =
MediaMetadata.Builder() MediaMetadata.Builder()
.setTitle(name.resolve(context)) .setTitle(name.resolve(context))

View file

@ -82,8 +82,8 @@ constructor(
?: return null ?: return null
return when (music) { return when (music) {
is Album -> music.toMediaItem(context, null) is Album -> music.toMediaItem(context)
is Artist -> music.toMediaItem(context, null) is Artist -> music.toMediaItem(context)
is Genre -> music.toMediaItem(context) is Genre -> music.toMediaItem(context)
is Playlist -> music.toMediaItem(context) is Playlist -> music.toMediaItem(context)
is Song -> music.toMediaItem(context, null) is Song -> music.toMediaItem(context, null)
@ -120,9 +120,9 @@ constructor(
MediaSessionUID.Category.SONGS -> MediaSessionUID.Category.SONGS ->
deviceLibrary.songs.map { it.toMediaItem(context, null) } deviceLibrary.songs.map { it.toMediaItem(context, null) }
MediaSessionUID.Category.ALBUMS -> MediaSessionUID.Category.ALBUMS ->
deviceLibrary.albums.map { it.toMediaItem(context, null) } deviceLibrary.albums.map { it.toMediaItem(context) }
MediaSessionUID.Category.ARTISTS -> MediaSessionUID.Category.ARTISTS ->
deviceLibrary.artists.map { it.toMediaItem(context, null) } deviceLibrary.artists.map { it.toMediaItem(context) }
MediaSessionUID.Category.GENRES -> MediaSessionUID.Category.GENRES ->
deviceLibrary.genres.map { it.toMediaItem(context) } deviceLibrary.genres.map { it.toMediaItem(context) }
MediaSessionUID.Category.PLAYLISTS -> MediaSessionUID.Category.PLAYLISTS ->
@ -130,12 +130,14 @@ constructor(
} }
} }
is MediaSessionUID.Single -> { is MediaSessionUID.Single -> {
getChildMediaItems(mediaSessionUID.uid) ?: return null getChildMediaItems(mediaSessionUID.uid)
} }
is MediaSessionUID.Joined -> { is MediaSessionUID.Joined -> {
getChildMediaItems(mediaSessionUID.childUid) ?: return null getChildMediaItems(mediaSessionUID.childUid)
}
null -> {
return null
} }
null -> return null
} }
} }
@ -145,7 +147,7 @@ constructor(
item.songs.map { it.toMediaItem(context, item) } item.songs.map { it.toMediaItem(context, item) }
} }
is Artist -> { is Artist -> {
(item.explicitAlbums + item.implicitAlbums).map { it.toMediaItem(context, item) } + (item.explicitAlbums + item.implicitAlbums).map { it.toMediaItem(context) } +
item.songs.map { it.toMediaItem(context, item) } item.songs.map { it.toMediaItem(context, item) }
} }
is Genre -> { is Genre -> {
@ -202,10 +204,10 @@ constructor(
music.addAll(songs.map { it.toMediaItem(context, null) }) music.addAll(songs.map { it.toMediaItem(context, null) })
} }
if (albums != null) { if (albums != null) {
music.addAll(albums.map { it.toMediaItem(context, null) }) music.addAll(albums.map { it.toMediaItem(context) })
} }
if (artists != null) { if (artists != null) {
music.addAll(artists.map { it.toMediaItem(context, null) }) music.addAll(artists.map { it.toMediaItem(context) })
} }
if (genres != null) { if (genres != null) {
music.addAll(genres.map { it.toMediaItem(context) }) music.addAll(genres.map { it.toMediaItem(context) })