[Android] Persist and restore the album/song screen tab
Nicolas Pomepuy
git at videolan.org
Mon Jan 27 14:52:57 UTC 2025
vlc-android | branch: master | Nicolas Pomepuy <nicolas at videolabs.io> | Mon Jan 27 14:52:37 2025 +0100| [a77d6ea5c2ba1e802e103db0b726138affc692d1] | committer: Nicolas Pomepuy
Persist and restore the album/song screen tab
Fixes #3133
> https://code.videolan.org/videolan/vlc-android/commit/a77d6ea5c2ba1e802e103db0b726138affc692d1
---
.../resources/src/main/java/org/videolan/resources/Constants.kt | 1 +
.../src/org/videolan/vlc/gui/audio/AudioAlbumsSongsFragment.kt | 5 +++++
2 files changed, 6 insertions(+)
diff --git a/application/resources/src/main/java/org/videolan/resources/Constants.kt b/application/resources/src/main/java/org/videolan/resources/Constants.kt
index 479d72d8dd..75b32e289a 100644
--- a/application/resources/src/main/java/org/videolan/resources/Constants.kt
+++ b/application/resources/src/main/java/org/videolan/resources/Constants.kt
@@ -124,6 +124,7 @@ const val KEY_MRL = "mrl"
// AUDIO category
const val KEY_AUDIO_CURRENT_TAB = "key_audio_current_tab"
+const val KEY_AUDIO_ALBUM_SONG_CURRENT_TAB = "key_audio_album_song_current_tab"
// Playback settings category
const val KEY_AUDIO_LAST_PLAYLIST = "audio_list"
diff --git a/application/vlc-android/src/org/videolan/vlc/gui/audio/AudioAlbumsSongsFragment.kt b/application/vlc-android/src/org/videolan/vlc/gui/audio/AudioAlbumsSongsFragment.kt
index 302e91160b..c74e045e3e 100644
--- a/application/vlc-android/src/org/videolan/vlc/gui/audio/AudioAlbumsSongsFragment.kt
+++ b/application/vlc-android/src/org/videolan/vlc/gui/audio/AudioAlbumsSongsFragment.kt
@@ -41,6 +41,8 @@ import org.videolan.medialibrary.interfaces.Medialibrary
import org.videolan.medialibrary.interfaces.media.Album
import org.videolan.medialibrary.interfaces.media.MediaWrapper
import org.videolan.medialibrary.media.MediaLibraryItem
+import org.videolan.resources.KEY_AUDIO_ALBUM_SONG_CURRENT_TAB
+import org.videolan.resources.KEY_AUDIO_CURRENT_TAB
import org.videolan.resources.util.parcelable
import org.videolan.tools.*
import org.videolan.vlc.R
@@ -170,6 +172,8 @@ class AudioAlbumsSongsFragment : BaseAudioBrowser<AlbumSongsViewModel>(), SwipeR
viewModel.tracksProvider.liveHeaders.observe(viewLifecycleOwner) {
lists[1].invalidateItemDecorations()
}
+
+ currentTab = Settings.getInstance(requireActivity()).getInt(KEY_AUDIO_ALBUM_SONG_CURRENT_TAB, 0)
}
override fun sortBy(sort: Int) {
@@ -310,6 +314,7 @@ class AudioAlbumsSongsFragment : BaseAudioBrowser<AlbumSongsViewModel>(), SwipeR
override fun onTabSelected(tab: TabLayout.Tab) {
super.onTabSelected(tab)
+ Settings.getInstance(requireActivity()).putSingle(KEY_AUDIO_ALBUM_SONG_CURRENT_TAB, tab.position)
fastScroller.setRecyclerView(lists[tab.position], viewModel.providers[tab.position])
activity?.invalidateOptionsMenu()
}
More information about the Android
mailing list