优化
This commit is contained in:
@@ -138,7 +138,7 @@ class MainViewModel(application: Application) : BaseViewModel(application) {
|
||||
}
|
||||
waitUpTocBooks.remove(bookUrl)
|
||||
upTocAdd(bookUrl)
|
||||
execute(context = upTocPool, executeContext = IO) {
|
||||
execute(context = upTocPool, executeContext = upTocPool) {
|
||||
kotlin.runCatching {
|
||||
val oldBook = book.copy()
|
||||
WebBook.runPreUpdateJs(source, book)
|
||||
@@ -170,10 +170,10 @@ class MainViewModel(application: Application) : BaseViewModel(application) {
|
||||
appDb.bookDao.update(book)
|
||||
}
|
||||
}
|
||||
}.onCancel(upTocPool) {
|
||||
}.onCancel {
|
||||
upTocCancel(bookUrl)
|
||||
upTocCancel(book.bookUrl)
|
||||
}.onFinally(upTocPool) {
|
||||
}.onFinally {
|
||||
upTocFinally(bookUrl)
|
||||
upTocFinally(book.bookUrl)
|
||||
postUpBooksLiveData()
|
||||
|
||||
@@ -71,6 +71,7 @@ class BooksFragment() : BaseFragment(R.layout.fragment_books),
|
||||
var bookSort = 0
|
||||
private set
|
||||
private var upLastUpdateTimeJob: Job? = null
|
||||
private var defaultScrollBarSize = 0
|
||||
|
||||
override fun onFragmentCreated(view: View, savedInstanceState: Bundle?) {
|
||||
this.savedInstanceState = savedInstanceState
|
||||
@@ -86,7 +87,8 @@ class BooksFragment() : BaseFragment(R.layout.fragment_books),
|
||||
|
||||
private fun initRecyclerView() {
|
||||
binding.rvBookshelf.setEdgeEffectColor(primaryColor)
|
||||
binding.rvBookshelf.setFastScrollEnabled(AppConfig.showBookshelfFastScroller)
|
||||
defaultScrollBarSize = binding.rvBookshelf.scrollBarSize
|
||||
upFastScrollerBar()
|
||||
binding.refreshLayout.setColorSchemeColors(accentColor)
|
||||
binding.refreshLayout.setOnRefreshListener {
|
||||
binding.refreshLayout.isRefreshing = false
|
||||
@@ -118,6 +120,16 @@ class BooksFragment() : BaseFragment(R.layout.fragment_books),
|
||||
startLastUpdateTimeJob()
|
||||
}
|
||||
|
||||
private fun upFastScrollerBar() {
|
||||
val showBookshelfFastScroller = AppConfig.showBookshelfFastScroller
|
||||
binding.rvBookshelf.setFastScrollEnabled(showBookshelfFastScroller)
|
||||
if (showBookshelfFastScroller) {
|
||||
binding.rvBookshelf.scrollBarSize = 0
|
||||
} else {
|
||||
binding.rvBookshelf.scrollBarSize = defaultScrollBarSize
|
||||
}
|
||||
}
|
||||
|
||||
fun upBookSort(sort: Int) {
|
||||
binding.root.post {
|
||||
arguments?.putInt("bookSort", sort)
|
||||
@@ -276,7 +288,7 @@ class BooksFragment() : BaseFragment(R.layout.fragment_books),
|
||||
observeEvent<String>(EventBus.BOOKSHELF_REFRESH) {
|
||||
booksAdapter.notifyDataSetChanged()
|
||||
startLastUpdateTimeJob()
|
||||
binding.rvBookshelf.setFastScrollEnabled(AppConfig.showBookshelfFastScroller)
|
||||
upFastScrollerBar()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user