소스 검색

Fix default category name being shown with empty library

arkon 2 년 전
부모
커밋
3a8b5e1b5e
1개의 변경된 파일9개의 추가작업 그리고 4개의 파일을 삭제
  1. 9 4
      app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryScreenModel.kt

+ 9 - 4
app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryScreenModel.kt

@@ -747,10 +747,11 @@ class LibraryScreenModel(
         val selectionMode = selection.isNotEmpty()
 
         val categories = library.keys.toList()
+        private val onlyDefaultCategory = categories.size == 1 && categories[0].isSystemCategory
 
         val libraryCount by lazy {
-            library
-                .flatMap { (_, v) -> v }
+            library.values
+                .flatten()
                 .fastDistinctBy { it.libraryManga.manga.id }
                 .size
         }
@@ -764,7 +765,7 @@ class LibraryScreenModel(
         }
 
         fun getMangaCountForCategory(category: Category): Int? {
-            return library[category]?.size?.takeIf { showMangaCount }
+            return if (showMangaCount) library[category]?.size else null
         }
 
         fun getToolbarTitle(
@@ -777,7 +778,11 @@ class LibraryScreenModel(
                 if (it.isSystemCategory) defaultCategoryTitle else it.name
             }
 
-            val title = if (showCategoryTabs && categories.size <= 1) categoryName else defaultTitle
+            val title = when {
+                showCategoryTabs && categories.size != 1 -> defaultTitle
+                libraryCount > 0 && !onlyDefaultCategory -> categoryName
+                else -> defaultTitle
+            }
             val count = when {
                 !showMangaCount -> null
                 !showCategoryTabs -> getMangaCountForCategory(category)