pull/1603/head
kunfei 3 years ago
parent 1583f6c46c
commit a74da4f968
  1. 72
      app/src/main/java/io/legado/app/ui/book/source/manage/BookSourceActivity.kt

@ -229,46 +229,46 @@ class BookSourceActivity : VMBaseActivity<ActivityBookSourceBinding, BookSourceV
else -> { else -> {
appDb.bookSourceDao.flowSearch("%$searchKey%") appDb.bookSourceDao.flowSearch("%$searchKey%")
} }
} }.collect { data ->
}.onFailure { val sourceList =
AppLog.put("更新书源出错", it) if (sortAscending) when (sort) {
}.getOrNull()?.collect { data -> Sort.Weight -> data.sortedBy { it.weight }
val sourceList = Sort.Name -> data.sortedWith { o1, o2 ->
if (sortAscending) when (sort) { o1.bookSourceName.cnCompare(o2.bookSourceName)
Sort.Weight -> data.sortedBy { it.weight }
Sort.Name -> data.sortedWith { o1, o2 ->
o1.bookSourceName.cnCompare(o2.bookSourceName)
}
Sort.Url -> data.sortedBy { it.bookSourceUrl }
Sort.Update -> data.sortedByDescending { it.lastUpdateTime }
Sort.Respond -> data.sortedBy { it.respondTime }
Sort.Enable -> data.sortedWith { o1, o2 ->
var sort = -o1.enabled.compareTo(o2.enabled)
if (sort == 0) {
sort = o1.bookSourceName.cnCompare(o2.bookSourceName)
} }
sort Sort.Url -> data.sortedBy { it.bookSourceUrl }
} Sort.Update -> data.sortedByDescending { it.lastUpdateTime }
else -> data Sort.Respond -> data.sortedBy { it.respondTime }
} Sort.Enable -> data.sortedWith { o1, o2 ->
else when (sort) { var sort = -o1.enabled.compareTo(o2.enabled)
Sort.Weight -> data.sortedByDescending { it.weight } if (sort == 0) {
Sort.Name -> data.sortedWith { o1, o2 -> sort = o1.bookSourceName.cnCompare(o2.bookSourceName)
o2.bookSourceName.cnCompare(o1.bookSourceName) }
sort
}
else -> data
} }
Sort.Url -> data.sortedByDescending { it.bookSourceUrl } else when (sort) {
Sort.Update -> data.sortedBy { it.lastUpdateTime } Sort.Weight -> data.sortedByDescending { it.weight }
Sort.Respond -> data.sortedByDescending { it.respondTime } Sort.Name -> data.sortedWith { o1, o2 ->
Sort.Enable -> data.sortedWith { o1, o2 -> o2.bookSourceName.cnCompare(o1.bookSourceName)
var sort = o1.enabled.compareTo(o2.enabled) }
if (sort == 0) { Sort.Url -> data.sortedByDescending { it.bookSourceUrl }
sort = o1.bookSourceName.cnCompare(o2.bookSourceName) Sort.Update -> data.sortedBy { it.lastUpdateTime }
Sort.Respond -> data.sortedByDescending { it.respondTime }
Sort.Enable -> data.sortedWith { o1, o2 ->
var sort = o1.enabled.compareTo(o2.enabled)
if (sort == 0) {
sort = o1.bookSourceName.cnCompare(o2.bookSourceName)
}
sort
} }
sort else -> data.reversed()
} }
else -> data.reversed() adapter.setItems(sourceList, adapter.diffItemCallback)
} }
adapter.setItems(sourceList, adapter.diffItemCallback) }.onFailure {
AppLog.put("更新书源出错", it)
} }
} }
} }

Loading…
Cancel
Save