diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryScreen.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryScreen.kt index 74004c5df..1f81ba0f6 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryScreen.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryScreen.kt @@ -179,7 +179,7 @@ object LibraryScreen : Screen { return@Scaffold } - if (state.searchQuery.isNullOrEmpty() && state.library.isEmpty()) { + if (state.searchQuery.isNullOrEmpty() && state.libraryCount == 0) { val handler = LocalUriHandler.current EmptyScreen( textResource = R.string.information_empty_library, @@ -201,7 +201,7 @@ object LibraryScreen : Screen { selection = state.selection, contentPadding = contentPadding, currentPage = { screenModel.activeCategory }, - isLibraryEmpty = state.library.isEmpty(), + isLibraryEmpty = state.libraryCount == 0, showPageTabs = state.showCategoryTabs, onChangeCurrentPage = { screenModel.activeCategory = it }, onMangaClicked = { router.openManga(it) }, diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryScreenModel.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryScreenModel.kt index 3112e8f75..c0b27b5b7 100755 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryScreenModel.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryScreenModel.kt @@ -13,6 +13,7 @@ import cafe.adriel.voyager.core.model.coroutineScope import eu.kanade.core.prefs.CheckboxState import eu.kanade.core.prefs.PreferenceMutableState import eu.kanade.core.prefs.asState +import eu.kanade.core.util.fastDistinctBy import eu.kanade.core.util.fastFilter import eu.kanade.core.util.fastFilterNot import eu.kanade.core.util.fastMapNotNull @@ -1315,7 +1316,7 @@ class LibraryScreenModel( val libraryCount by lazy { library .flatMap { (_, v) -> v } - .distinctBy { it.libraryManga.manga.id } + .fastDistinctBy { it.libraryManga.manga.id } .size }