pull/2492/head
Horis 2 years ago
parent d93c8f1d21
commit c0528dc0b5
  1. 6
      app/src/main/java/io/legado/app/ui/rss/article/RssArticlesFragment.kt
  2. 8
      app/src/main/java/io/legado/app/ui/rss/article/RssArticlesViewModel.kt

@ -125,11 +125,9 @@ class RssArticlesFragment() : VMBaseFragment<RssArticlesViewModel>(R.layout.frag
viewModel.loadErrorLiveData.observe(viewLifecycleOwner) {
loadMoreView.error(it)
}
viewModel.loadFinallyLiveData.observe(viewLifecycleOwner) {
viewModel.loadFinallyLiveData.observe(viewLifecycleOwner) { hasMore ->
binding.refreshLayout.isRefreshing = false
if (it) {
loadMoreView.stopLoad()
} else {
if (!hasMore) {
loadMoreView.noMore()
}
}

@ -35,6 +35,7 @@ class RssArticlesViewModel(application: Application) : BaseViewModel(application
fun loadContent(rssSource: RssSource) {
isLoading = true
page = 1
order = System.currentTimeMillis()
Rss.getArticles(viewModelScope, sortName, sortUrl, rssSource, page)
.onSuccess(Dispatchers.IO) {
nextPageUrl = it.second
@ -45,12 +46,9 @@ class RssArticlesViewModel(application: Application) : BaseViewModel(application
appDb.rssArticleDao.insert(*list.toTypedArray())
if (!rssSource.ruleNextPage.isNullOrEmpty()) {
appDb.rssArticleDao.clearOld(rssSource.sourceUrl, sortName, order)
loadFinallyLiveData.postValue(true)
} else {
withContext(Dispatchers.Main) {
loadFinallyLiveData.postValue(false)
}
}
val hasMore = list.isNotEmpty() && !rssSource.ruleNextPage.isNullOrEmpty()
loadFinallyLiveData.postValue(hasMore)
isLoading = false
}
}.onError {

Loading…
Cancel
Save