pull/32/head
kunfei 5 years ago
parent 383f5d1000
commit 03b7c3b6e7
  1. 1
      app/src/main/java/io/legado/app/ui/changesource/ChangeSourceDialog.kt
  2. 12
      app/src/main/java/io/legado/app/ui/changesource/ChangeSourceViewModel.kt

@ -62,6 +62,7 @@ class ChangeSourceDialog : DialogFragment(),
initRecyclerView()
initSearchView()
viewModel.initData()
viewModel.search()
}
override fun onStart() {

@ -10,6 +10,7 @@ import io.legado.app.data.entities.SearchBook
import io.legado.app.model.WebBook
import kotlinx.coroutines.Dispatchers.IO
import kotlinx.coroutines.Dispatchers.Main
import kotlinx.coroutines.delay
import kotlinx.coroutines.withContext
import org.jetbrains.anko.debug
@ -18,6 +19,7 @@ class ChangeSourceViewModel(application: Application) : BaseViewModel(applicatio
var curBookUrl = ""
var name: String = ""
var author: String = ""
var screenKey: String = ""
private val searchBooks = linkedSetOf<SearchBook>()
fun initData() {
@ -25,7 +27,6 @@ class ChangeSourceViewModel(application: Application) : BaseViewModel(applicatio
App.db.searchBookDao().getByNameAuthorEnable(name, author).let {
searchBooks.addAll(it)
upAdapter()
search()
}
}
}
@ -50,6 +51,7 @@ class ChangeSourceViewModel(application: Application) : BaseViewModel(applicatio
execute {
val bookSourceList = App.db.bookSourceDao().allEnabled
for (item in bookSourceList) {
delay(100)
//task取消时自动取消 by (scope = this@execute)
WebBook(item).searchBook(name, scope = this@execute)
.timeout(30000L)
@ -93,9 +95,9 @@ class ChangeSourceViewModel(application: Application) : BaseViewModel(applicatio
if (chapters.isNotEmpty()) {
book.latestChapterTitle = chapters.last().title
val searchBook = book.toSearchBook()
App.db.searchBookDao().insert(searchBook)
searchBooks.add(searchBook)
upAdapter()
App.db.searchBookDao().insert(searchBook)
}
}
}.onError {
@ -105,9 +107,13 @@ class ChangeSourceViewModel(application: Application) : BaseViewModel(applicatio
}
}
/**
* 筛选
*/
fun screen(key: String?) {
screenKey = key ?: ""
if (key.isNullOrEmpty()) {
initData()
} else {
}

Loading…
Cancel
Save