Fix infinite loading when user library is empty (#7602)

- If no manga in library add default category this to remove loading state
This commit is contained in:
Andreas 2022-07-24 18:43:33 +02:00 committed by GitHub
parent aeffb5eeb8
commit 164de67a56
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -412,14 +412,14 @@ class LibraryPresenter(
*/ */
private fun getLibraryObservable(): Observable<Library> { private fun getLibraryObservable(): Observable<Library> {
return combine(getCategoriesFlow(), getLibraryMangasFlow()) { dbCategories, libraryManga -> return combine(getCategoriesFlow(), getLibraryMangasFlow()) { dbCategories, libraryManga ->
val categories = if (libraryManga.containsKey(0)) { val categories = if (libraryManga.containsKey(0) || libraryManga.isEmpty()) {
arrayListOf(Category.default(context)) + dbCategories arrayListOf(Category.default(context)) + dbCategories
} else { } else {
dbCategories dbCategories
} }
libraryManga.forEach { (categoryId, libraryManga) -> libraryManga.forEach { (categoryId, libraryManga) ->
val category = categories.first { category -> category.id == categoryId.toLong() } val category = categories.first { category -> category.id == categoryId }
libraryManga.forEach { libraryItem -> libraryManga.forEach { libraryItem ->
libraryItem.displayMode = category.displayMode libraryItem.displayMode = category.displayMode
} }