浏览代码

Allow searching for multiple extensions at once (closes #5922)

arkon 3 年之前
父节点
当前提交
ea34ba53b9
共有 1 个文件被更改,包括 7 次插入4 次删除
  1. 7 4
      app/src/main/java/eu/kanade/tachiyomi/ui/browse/extension/ExtensionController.kt

+ 7 - 4
app/src/main/java/eu/kanade/tachiyomi/ui/browse/extension/ExtensionController.kt

@@ -144,7 +144,7 @@ open class ExtensionController :
             .filter { router.backstack.lastOrNull()?.controller == this }
             .onEach {
                 query = it.toString()
-                drawExtensions()
+                updateExtensionsList()
             }
             .launchIn(viewScope)
     }
@@ -179,7 +179,7 @@ open class ExtensionController :
     fun setExtensions(extensions: List<ExtensionItem>) {
         binding.swipeRefresh.isRefreshing = false
         this.extensions = extensions
-        drawExtensions()
+        updateExtensionsList()
 
         // Update badge on parent controller tab
         val ctrl = parentController as BrowseController
@@ -187,11 +187,14 @@ open class ExtensionController :
         ctrl.extensionListUpdateRelay.call(true)
     }
 
-    private fun drawExtensions() {
+    private fun updateExtensionsList() {
         if (query.isNotBlank()) {
+            val extensionNames = query.split(",")
             adapter?.updateDataSet(
                 extensions.filter {
-                    it.extension.name.contains(query, ignoreCase = true)
+                    extensionNames.any { queriedName ->
+                        it.extension.name.contains(queriedName, ignoreCase = true)
+                    }
                 }
             )
         } else {