From 58559d0844084b8fa0ee49919b628e6416cb1755 Mon Sep 17 00:00:00 2001 From: Horis <8674809+821938089@users.noreply.github.com> Date: Thu, 5 Sep 2024 12:20:36 +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 --- .../io/legado/app/ui/book/info/BookInfoViewModel.kt | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/app/src/main/java/io/legado/app/ui/book/info/BookInfoViewModel.kt b/app/src/main/java/io/legado/app/ui/book/info/BookInfoViewModel.kt index 80c2e0795..148f3a4ae 100644 --- a/app/src/main/java/io/legado/app/ui/book/info/BookInfoViewModel.kt +++ b/app/src/main/java/io/legado/app/ui/book/info/BookInfoViewModel.kt @@ -29,6 +29,7 @@ import io.legado.app.help.book.removeType import io.legado.app.help.book.simulatedTotalChapterNum import io.legado.app.help.coroutine.Coroutine import io.legado.app.lib.webdav.ObjectNotFoundException +import io.legado.app.model.AudioPlay import io.legado.app.model.BookCover import io.legado.app.model.ReadBook import io.legado.app.model.analyzeRule.AnalyzeUrl @@ -404,12 +405,15 @@ class BookInfoViewModel(application: Application) : BaseViewModel(application) { book.order = appDb.bookDao.minOrder - 1 } appDb.bookDao.getBook(book.name, book.author)?.let { + book.durChapterIndex = it.durChapterIndex book.durChapterPos = it.durChapterPos book.durChapterTitle = it.durChapterTitle } book.save() - if (ReadBook.book?.name == book.name && ReadBook.book?.author == book.author) { + if (ReadBook.book?.isSameNameAuthor(book) == true) { ReadBook.book = book + } else if (AudioPlay.book?.isSameNameAuthor(book) == true) { + AudioPlay.book = book } }.onSuccess { success?.invoke() @@ -434,9 +438,15 @@ class BookInfoViewModel(application: Application) : BaseViewModel(application) { book.order = appDb.bookDao.minOrder - 1 } appDb.bookDao.getBook(book.name, book.author)?.let { + book.durChapterIndex = it.durChapterIndex book.durChapterPos = it.durChapterPos book.durChapterTitle = it.durChapterTitle } + if (ReadBook.book?.isSameNameAuthor(book) == true) { + ReadBook.book = book + } else if (AudioPlay.book?.isSameNameAuthor(book) == true) { + AudioPlay.book = book + } book.save() } chapterListData.value?.let {