diff --git a/CHANGELOG.md b/CHANGELOG.md index b3a0c519de..bc8b4d0f91 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -11,6 +11,9 @@ The format is simplified version of [Keep a Changelog](https://keepachangelog.co ## [Unreleased] +### Fixes +- Fix chapters cannot be opened from `Recents > Grouped` and `Recents > All` + ## [1.9.0] ### Additions diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/recents/RecentsPresenter.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/recents/RecentsPresenter.kt index 644535f45a..c07d9213dd 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/recents/RecentsPresenter.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/recents/RecentsPresenter.kt @@ -179,7 +179,7 @@ class RecentsPresenter( RecentsViewType.GroupedAll, RecentsViewType.UngroupedAll -> { getRecents.awaitAll( showRead, - true, + false, isEndless, !updatePageCount && !isOnFirstPage, query, @@ -466,12 +466,14 @@ class RecentsPresenter( } private suspend fun getNextChapter(manga: Manga): Chapter? { - val chapters = getChapter.awaitAll(manga) + val mangaId = manga.id ?: return null + val chapters = getChapter.awaitAll(mangaId, true) return ChapterSort(manga, chapterFilter, preferences).getNextUnreadChapter(chapters, false) } private suspend fun getFirstUpdatedChapter(manga: Manga, chapter: Chapter): Chapter? { - val chapters = getChapter.awaitAll(manga) + val mangaId = manga.id ?: return null + val chapters = getChapter.awaitAll(mangaId, true) return chapters .sortedWith(ChapterSort(manga, chapterFilter, preferences).sortComparator(true)).find { !it.read && abs(it.date_fetch - chapter.date_fetch) <= TimeUnit.HOURS.toMillis(12) diff --git a/data/src/commonMain/sqldelight/tachiyomi/data/history.sq b/data/src/commonMain/sqldelight/tachiyomi/data/history.sq index 4a5c245a4c..95ebbe6c57 100644 --- a/data/src/commonMain/sqldelight/tachiyomi/data/history.sq +++ b/data/src/commonMain/sqldelight/tachiyomi/data/history.sq @@ -110,7 +110,6 @@ ORDER BY max_last_read.history_last_read DESC LIMIT :limit OFFSET :offset; getRecentsAll: -SELECT R1.* FROM ( SELECT M.*, C.*, @@ -157,11 +156,9 @@ WHERE lower(title) LIKE '%' || :search || '%' AND ( :apply_filter = 0 OR S.name IS NULL ) -) AS R1 UNION -- Newly added chapter -SELECT R2.* FROM ( SELECT M.*, C.*, @@ -194,11 +191,9 @@ AND lower(title) LIKE '%' || :search || '%' AND ( :apply_filter = 0 OR S.name IS NULL ) -) AS R2 UNION -- Newly added manga -SELECT R3.* FROM ( SELECT M.*, C.*, @@ -225,6 +220,6 @@ JOIN ( ) AS C WHERE favorite = 1 AND lower(title) LIKE '%' || :search || '%' -) AS R3 + ORDER BY history_last_read DESC LIMIT :limit OFFSET :offset;