Просмотр исходного кода

fix: 单章换源增加清除旧记录和持久化搜索结果

HapeLee 4 месяцев назад
Родитель
Сommit
593ce2f82e

+ 4 - 0
app/src/main/java/io/legado/app/ui/book/changesource/ChangeChapterSourceViewModel.kt

@@ -268,6 +268,9 @@ class ChangeChapterSourceViewModel(
     private fun startSearch() {
         val book = oldBook ?: return
         stopSearch()
+        if (searchResults.isNotEmpty()) {
+            io.legado.app.data.appDb.searchBookDao.delete(*searchResults.toTypedArray())
+        }
         searchResults.clear()
         bookMap.clear()
         val scope = SearchScope(ChangeSourceConfig.searchScope)
@@ -304,6 +307,7 @@ class ChangeChapterSourceViewModel(
                     is ChangeSourceSearchEvent.Result -> {
                         searchResults.add(event.searchBook)
                         bookMap[event.searchBook.primaryStr()] = event.searchBook
+                        io.legado.app.data.appDb.searchBookDao.insert(event.searchBook)
                         filterResults()
                     }