From acc7199551dce0037fc8980511fd511db3e4deb0 Mon Sep 17 00:00:00 2001 From: gedoor Date: Tue, 14 Sep 2021 12:24:39 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/src/main/java/io/legado/app/ui/main/MainViewModel.kt | 6 +++++- .../app/ui/main/bookshelf/style1/books/BooksFragment.kt | 2 +- .../app/ui/main/bookshelf/style2/BookshelfFragment2.kt | 2 +- 3 files changed, 7 insertions(+), 3 deletions(-) diff --git a/app/src/main/java/io/legado/app/ui/main/MainViewModel.kt b/app/src/main/java/io/legado/app/ui/main/MainViewModel.kt index 5b6d695c4..16d7bd35d 100644 --- a/app/src/main/java/io/legado/app/ui/main/MainViewModel.kt +++ b/app/src/main/java/io/legado/app/ui/main/MainViewModel.kt @@ -26,8 +26,8 @@ class MainViewModel(application: Application) : BaseViewModel(application) { private var threadCount = AppConfig.threadCount private var upTocPool = Executors.newFixedThreadPool(min(threadCount, AppConst.MAX_THREAD)).asCoroutineDispatcher() - val onUpTocBooks = CopyOnWriteArraySet() private val waitUpTocBooks = arrayListOf() + private val onUpTocBooks = CopyOnWriteArraySet() private var upTocJob: Job? = null override fun onCleared() { @@ -42,6 +42,10 @@ class MainViewModel(application: Application) : BaseViewModel(application) { .newFixedThreadPool(min(threadCount, AppConst.MAX_THREAD)).asCoroutineDispatcher() } + fun isUpdate(bookUrl: String): Boolean { + return onUpTocBooks.contains(bookUrl) + } + fun upAllBookToc() { execute { addToWaitUp(appDb.bookDao.hasUpdateBooks) diff --git a/app/src/main/java/io/legado/app/ui/main/bookshelf/style1/books/BooksFragment.kt b/app/src/main/java/io/legado/app/ui/main/bookshelf/style1/books/BooksFragment.kt index 6bef0a120..47f3fa92e 100644 --- a/app/src/main/java/io/legado/app/ui/main/bookshelf/style1/books/BooksFragment.kt +++ b/app/src/main/java/io/legado/app/ui/main/bookshelf/style1/books/BooksFragment.kt @@ -163,7 +163,7 @@ class BooksFragment : BaseFragment(R.layout.fragment_books), } override fun isUpdate(bookUrl: String): Boolean { - return bookUrl in activityViewModel.onUpTocBooks + return activityViewModel.isUpdate(bookUrl) } @SuppressLint("NotifyDataSetChanged") diff --git a/app/src/main/java/io/legado/app/ui/main/bookshelf/style2/BookshelfFragment2.kt b/app/src/main/java/io/legado/app/ui/main/bookshelf/style2/BookshelfFragment2.kt index 4647e5ec3..298b144b0 100644 --- a/app/src/main/java/io/legado/app/ui/main/bookshelf/style2/BookshelfFragment2.kt +++ b/app/src/main/java/io/legado/app/ui/main/bookshelf/style2/BookshelfFragment2.kt @@ -200,7 +200,7 @@ class BookshelfFragment2 : BaseBookshelfFragment(R.layout.fragment_bookshelf1), } override fun isUpdate(bookUrl: String): Boolean { - return bookUrl in activityViewModel.onUpTocBooks + return activityViewModel.isUpdate(bookUrl) } override fun getItemCount(): Int {