From c3ccb8519e902f13770acab4aa5f70f8a351735f Mon Sep 17 00:00:00 2001 From: Alexander Capehart Date: Wed, 1 Jan 2025 16:10:34 -0700 Subject: [PATCH] musikr: add empty library check --- app/src/main/java/org/oxycblt/auxio/home/HomeGenerator.kt | 2 +- musikr/src/main/java/org/oxycblt/musikr/Library.kt | 2 ++ musikr/src/main/java/org/oxycblt/musikr/model/LibraryImpl.kt | 2 ++ 3 files changed, 5 insertions(+), 1 deletion(-) diff --git a/app/src/main/java/org/oxycblt/auxio/home/HomeGenerator.kt b/app/src/main/java/org/oxycblt/auxio/home/HomeGenerator.kt index e09d593c8..619968c0a 100644 --- a/app/src/main/java/org/oxycblt/auxio/home/HomeGenerator.kt +++ b/app/src/main/java/org/oxycblt/auxio/home/HomeGenerator.kt @@ -149,7 +149,7 @@ private class HomeGeneratorImpl( } override fun empty() = - musicRepository.library == null + musicRepository.library?.empty() ?: true override fun songs() = musicRepository.library?.let { listSettings.songSort.songs(it.songs) } ?: emptyList() diff --git a/musikr/src/main/java/org/oxycblt/musikr/Library.kt b/musikr/src/main/java/org/oxycblt/musikr/Library.kt index c5d73312f..59af89894 100644 --- a/musikr/src/main/java/org/oxycblt/musikr/Library.kt +++ b/musikr/src/main/java/org/oxycblt/musikr/Library.kt @@ -27,6 +27,8 @@ interface Library { val genres: Collection val playlists: Collection + fun empty(): Boolean + fun findSong(uid: Music.UID): Song? fun findSongByPath(path: Path): Song? diff --git a/musikr/src/main/java/org/oxycblt/musikr/model/LibraryImpl.kt b/musikr/src/main/java/org/oxycblt/musikr/model/LibraryImpl.kt index 1740105b0..badcada45 100644 --- a/musikr/src/main/java/org/oxycblt/musikr/model/LibraryImpl.kt +++ b/musikr/src/main/java/org/oxycblt/musikr/model/LibraryImpl.kt @@ -42,6 +42,8 @@ internal data class LibraryImpl( private val genreUidMap = genres.associateBy { it.uid } private val playlistUidMap = playlists.associateBy { it.uid } + override fun empty() = songs.isEmpty() + override fun findSong(uid: Music.UID) = songUidMap[uid] override fun findSongByPath(path: Path) = songs.find { it.path == path }