diff --git a/app/src/main/java/io/legado/app/data/dao/BookDao.kt b/app/src/main/java/io/legado/app/data/dao/BookDao.kt index 7af033094..377b25033 100644 --- a/app/src/main/java/io/legado/app/data/dao/BookDao.kt +++ b/app/src/main/java/io/legado/app/data/dao/BookDao.kt @@ -648,6 +648,9 @@ interface BookDao { @get:Query("SELECT * FROM books where type & ${BookType.text} > 0 ORDER BY durChapterTime DESC limit 1") val lastReadBook: Book? + @get:Query("SELECT * FROM books ORDER BY durChapterTime DESC limit 1") + val mostRecentlyReadBook: Book? + @get:Query("SELECT bookUrl FROM books") val allBookUrls: List diff --git a/app/src/main/java/io/legado/app/ui/book/manga/ReadMangaViewModel.kt b/app/src/main/java/io/legado/app/ui/book/manga/ReadMangaViewModel.kt index 05bd4fa0a..40da3dc2e 100644 --- a/app/src/main/java/io/legado/app/ui/book/manga/ReadMangaViewModel.kt +++ b/app/src/main/java/io/legado/app/ui/book/manga/ReadMangaViewModel.kt @@ -65,7 +65,7 @@ class ReadMangaViewModel( ReadManga.chapterChanged = intent.getBooleanExtra("chapterChanged", false) val bookUrl = intent.getStringExtra("bookUrl") val book = when { - bookUrl.isNullOrEmpty() -> appDb.bookDao.lastReadBook + bookUrl.isNullOrEmpty() -> appDb.bookDao.mostRecentlyReadBook else -> appDb.bookDao.getBook(bookUrl) } ?: ReadManga.book when { diff --git a/app/src/main/java/io/legado/app/ui/book/read/ReadBookViewModel.kt b/app/src/main/java/io/legado/app/ui/book/read/ReadBookViewModel.kt index 470278f74..010203e2b 100644 --- a/app/src/main/java/io/legado/app/ui/book/read/ReadBookViewModel.kt +++ b/app/src/main/java/io/legado/app/ui/book/read/ReadBookViewModel.kt @@ -1668,7 +1668,7 @@ class ReadBookViewModel( fun initReadBookConfig(intent: Intent) { val bookUrl = intent.getStringExtra("bookUrl") val book = when { - bookUrl.isNullOrEmpty() -> appDb.bookDao.lastReadBook + bookUrl.isNullOrEmpty() -> appDb.bookDao.mostRecentlyReadBook else -> appDb.bookDao.getBook(bookUrl) } ?: return ReadBook.upReadBookConfig(book) @@ -1680,7 +1680,7 @@ class ReadBookViewModel( ReadBook.chapterChanged = intent.getBooleanExtra("chapterChanged", false) val bookUrl = intent.getStringExtra("bookUrl") val book = when { - bookUrl.isNullOrEmpty() -> appDb.bookDao.lastReadBook + bookUrl.isNullOrEmpty() -> appDb.bookDao.mostRecentlyReadBook else -> appDb.bookDao.getBook(bookUrl) } ?: ReadBook.book when {