From 389864669178f208c9ba30b6b80fd5060639634f Mon Sep 17 00:00:00 2001 From: Alexander Capehart Date: Mon, 14 Oct 2024 18:35:20 -0600 Subject: [PATCH] detail: fix missing edit header in playlists --- .../java/org/oxycblt/auxio/detail/DetailViewModel.kt | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 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 285a21d6f..4bc306a33 100644 --- a/app/src/main/java/org/oxycblt/auxio/detail/DetailViewModel.kt +++ b/app/src/main/java/org/oxycblt/auxio/detail/DetailViewModel.kt @@ -34,6 +34,7 @@ import org.oxycblt.auxio.detail.list.EditHeader import org.oxycblt.auxio.detail.list.SortHeader import org.oxycblt.auxio.list.BasicHeader import org.oxycblt.auxio.list.Divider +import org.oxycblt.auxio.list.Header import org.oxycblt.auxio.list.Item import org.oxycblt.auxio.list.ListSettings import org.oxycblt.auxio.list.adapter.UpdateInstructions @@ -522,12 +523,13 @@ constructor( } } - private fun refreshDetail( + private inline fun refreshDetail( detail: Detail?, parent: MutableStateFlow, list: MutableStateFlow>, instructions: MutableEvent, - replace: Int? + replace: Int?, + songHeader: (Int) -> Header = { SortHeader(it) } ) { if (detail == null) { parent.value = null @@ -540,7 +542,7 @@ constructor( when (section) { is DetailSection.PlainSection<*> -> { val header = - if (section is DetailSection.Songs) SortHeader(section.stringRes) + if (section is DetailSection.Songs) songHeader(section.stringRes) else BasicHeader(section.stringRes) newList.add(Divider(header)) newList.add(header) @@ -575,7 +577,9 @@ constructor( if (edited == null) { val playlist = detailGenerator.playlist(uid) refreshDetail( - playlist, _currentPlaylist, _playlistSongList, _playlistSongInstructions, null) + playlist, _currentPlaylist, _playlistSongList, _playlistSongInstructions, null) { + EditHeader(it) + } return } val list = mutableListOf()