inorichi 7 years ago
parent
commit
e7e1a9bf50

+ 1 - 1
app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryCategoryAdapter.kt

@@ -34,7 +34,7 @@ class LibraryCategoryAdapter(view: LibraryCategoryView) :
      * @param manga the manga to find.
      */
     fun indexOf(manga: Manga): Int {
-        return mangas.indexOfFirst { it.manga.id == manga.id }
+        return currentItems.indexOfFirst { it.manga.id == manga.id }
     }
 
     fun performFilter() {

+ 7 - 5
app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryController.kt

@@ -73,7 +73,7 @@ class LibraryController(
     /**
      * Currently selected mangas.
      */
-    val selectedMangas = mutableListOf<Manga>()
+    val selectedMangas = mutableSetOf<Manga>()
 
     private var selectedCoverManga: Manga? = null
 
@@ -429,11 +429,13 @@ class LibraryController(
      */
     fun setSelection(manga: Manga, selected: Boolean) {
         if (selected) {
-            selectedMangas.add(manga)
-            selectionRelay.call(LibrarySelectionEvent.Selected(manga))
+            if (selectedMangas.add(manga)) {
+                selectionRelay.call(LibrarySelectionEvent.Selected(manga))
+            }
         } else {
-            selectedMangas.remove(manga)
-            selectionRelay.call(LibrarySelectionEvent.Unselected(manga))
+            if (selectedMangas.remove(manga)) {
+                selectionRelay.call(LibrarySelectionEvent.Unselected(manga))
+            }
         }
     }