From d764cc7c4eba967a137099201f221f20fa973437 Mon Sep 17 00:00:00 2001 From: Alexander Capehart Date: Mon, 14 Nov 2022 20:33:00 -0700 Subject: [PATCH] detail: add playing indicator to genre artists Add playing indicators to artists within the genre detail view. --- .../org/oxycblt/auxio/detail/DetailViewModel.kt | 3 +-- .../oxycblt/auxio/detail/GenreDetailFragment.kt | 15 ++++++++++----- 2 files changed, 11 insertions(+), 7 deletions(-) diff --git a/app/src/main/java/org/oxycblt/auxio/detail/DetailViewModel.kt b/app/src/main/java/org/oxycblt/auxio/detail/DetailViewModel.kt index ac3787331..b61ba508b 100644 --- a/app/src/main/java/org/oxycblt/auxio/detail/DetailViewModel.kt +++ b/app/src/main/java/org/oxycblt/auxio/detail/DetailViewModel.kt @@ -98,7 +98,6 @@ class DetailViewModel(application: Application) : var artistSort: Sort get() = settings.detailArtistSort set(value) { - logD(value) settings.detailArtistSort = value currentArtist.value?.let(::refreshArtistData) } @@ -227,7 +226,7 @@ class DetailViewModel(application: Application) : for (entry in byDisc.entries) { val disc = entry.key val discSongs = entry.value - data.add(DiscHeader(disc)) // Ensure ID uniqueness + data.add(DiscHeader(disc)) data.addAll(discSongs) } } else { diff --git a/app/src/main/java/org/oxycblt/auxio/detail/GenreDetailFragment.kt b/app/src/main/java/org/oxycblt/auxio/detail/GenreDetailFragment.kt index 0f1ecfbed..9c6af117e 100644 --- a/app/src/main/java/org/oxycblt/auxio/detail/GenreDetailFragment.kt +++ b/app/src/main/java/org/oxycblt/auxio/detail/GenreDetailFragment.kt @@ -203,11 +203,16 @@ class GenreDetailFragment : } private fun updatePlayback(song: Song?, parent: MusicParent?, isPlaying: Boolean) { - if (parent is Genre && parent == unlikelyToBeNull(detailModel.currentGenre.value)) { - detailAdapter.updateIndicator(song, isPlaying) - } else { - // Ignore song playback not from the genre - detailAdapter.updateIndicator(null, isPlaying) + var item: Item? = null + + if (parent is Artist) { + item = parent } + + if (parent is Genre && parent.uid == unlikelyToBeNull(detailModel.currentGenre.value).uid) { + item = song + } + + detailAdapter.updateIndicator(item, isPlaying) } }