Show empty library message properly
Fixes #8632 The `library` map still contains the default category even when "empty". (cherry picked from commit ac1bed38f93e6b8e51b6f8cc2dae97c7ccb5f9b6)
This commit is contained in:
parent
a0e2f12635
commit
e7c2970561
@ -179,7 +179,7 @@ object LibraryScreen : Screen {
|
|||||||
return@Scaffold
|
return@Scaffold
|
||||||
}
|
}
|
||||||
|
|
||||||
if (state.searchQuery.isNullOrEmpty() && state.library.isEmpty()) {
|
if (state.searchQuery.isNullOrEmpty() && state.libraryCount == 0) {
|
||||||
val handler = LocalUriHandler.current
|
val handler = LocalUriHandler.current
|
||||||
EmptyScreen(
|
EmptyScreen(
|
||||||
textResource = R.string.information_empty_library,
|
textResource = R.string.information_empty_library,
|
||||||
@ -201,7 +201,7 @@ object LibraryScreen : Screen {
|
|||||||
selection = state.selection,
|
selection = state.selection,
|
||||||
contentPadding = contentPadding,
|
contentPadding = contentPadding,
|
||||||
currentPage = { screenModel.activeCategory },
|
currentPage = { screenModel.activeCategory },
|
||||||
isLibraryEmpty = state.library.isEmpty(),
|
isLibraryEmpty = state.libraryCount == 0,
|
||||||
showPageTabs = state.showCategoryTabs,
|
showPageTabs = state.showCategoryTabs,
|
||||||
onChangeCurrentPage = { screenModel.activeCategory = it },
|
onChangeCurrentPage = { screenModel.activeCategory = it },
|
||||||
onMangaClicked = { router.openManga(it) },
|
onMangaClicked = { router.openManga(it) },
|
||||||
|
@ -13,6 +13,7 @@ import cafe.adriel.voyager.core.model.coroutineScope
|
|||||||
import eu.kanade.core.prefs.CheckboxState
|
import eu.kanade.core.prefs.CheckboxState
|
||||||
import eu.kanade.core.prefs.PreferenceMutableState
|
import eu.kanade.core.prefs.PreferenceMutableState
|
||||||
import eu.kanade.core.prefs.asState
|
import eu.kanade.core.prefs.asState
|
||||||
|
import eu.kanade.core.util.fastDistinctBy
|
||||||
import eu.kanade.core.util.fastFilter
|
import eu.kanade.core.util.fastFilter
|
||||||
import eu.kanade.core.util.fastFilterNot
|
import eu.kanade.core.util.fastFilterNot
|
||||||
import eu.kanade.core.util.fastMapNotNull
|
import eu.kanade.core.util.fastMapNotNull
|
||||||
@ -1315,7 +1316,7 @@ class LibraryScreenModel(
|
|||||||
val libraryCount by lazy {
|
val libraryCount by lazy {
|
||||||
library
|
library
|
||||||
.flatMap { (_, v) -> v }
|
.flatMap { (_, v) -> v }
|
||||||
.distinctBy { it.libraryManga.manga.id }
|
.fastDistinctBy { it.libraryManga.manga.id }
|
||||||
.size
|
.size
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user