pull/2468/head 3.22.102020
kunfei 2 years ago
parent 678e6125dd
commit 710adb58ee
  1. 46
      app/src/main/java/io/legado/app/ui/book/search/SearchScope.kt

@ -100,30 +100,32 @@ data class SearchScope(private var scope: String) {
val list = hashSetOf<BookSource>()
if (scope.isEmpty()) {
list.addAll(appDb.bookSourceDao.allEnabled)
} else if (scope.contains("::")) {
scope.substringAfter("::").let {
appDb.bookSourceDao.getBookSource(it)?.let { source ->
list.add(source)
}
}
} else {
val oldScope = scope.splitNotBlank(",")
val newScope = oldScope.filter {
val bookSources = appDb.bookSourceDao.getEnabledByGroup(it)
list.addAll(bookSources)
bookSources.isNotEmpty()
}
if (oldScope.size != newScope.size) {
update(newScope)
stateLiveData.postValue(scope)
}
}
if (list.isEmpty()) {
scope = ""
appDb.bookSourceDao.allEnabled.let {
if (it.isNotEmpty()) {
if (scope.contains("::")) {
scope.substringAfter("::").let {
appDb.bookSourceDao.getBookSource(it)?.let { source ->
list.add(source)
}
}
} else {
val oldScope = scope.splitNotBlank(",")
val newScope = oldScope.filter {
val bookSources = appDb.bookSourceDao.getEnabledByGroup(it)
list.addAll(bookSources)
bookSources.isNotEmpty()
}
if (oldScope.size != newScope.size) {
update(newScope)
stateLiveData.postValue(scope)
list.addAll(it)
}
}
if (list.isEmpty()) {
scope = ""
appDb.bookSourceDao.allEnabled.let {
if (it.isNotEmpty()) {
stateLiveData.postValue(scope)
list.addAll(it)
}
}
}
}

Loading…
Cancel
Save