Mark previous as unread now works when 'force ascending sort on gallery versions' is enabled

This commit is contained in:
NerdNumber9 2019-04-22 09:24:57 -04:00
parent 256a4a2e7f
commit 9a6bb69df8
2 changed files with 8 additions and 5 deletions

View File

@ -157,8 +157,7 @@ class ChaptersController : NucleusController<ChaptersPresenter>(),
menuFilterDownloaded.isChecked = presenter.onlyDownloaded() menuFilterDownloaded.isChecked = presenter.onlyDownloaded()
menuFilterBookmarked.isChecked = presenter.onlyBookmarked() menuFilterBookmarked.isChecked = presenter.onlyBookmarked()
val showSortOptions = !(presenter.preferences.eh_forceSortEhVersionsAsc().getOrDefault() val showSortOptions = !presenter.isSortingForced()
&& presenter.source.isEhBasedSource())
menuSort.isVisible = showSortOptions menuSort.isVisible = showSortOptions
menuSortingMode.isVisible = showSortOptions menuSortingMode.isVisible = showSortOptions
@ -419,7 +418,8 @@ class ChaptersController : NucleusController<ChaptersPresenter>(),
private fun markPreviousAsRead(chapter: ChapterItem) { private fun markPreviousAsRead(chapter: ChapterItem) {
val adapter = adapter ?: return val adapter = adapter ?: return
val chapters = if (presenter.sortDescending()) adapter.items.reversed() else adapter.items val chapters = if (presenter.sortDescending()
|| presenter.isSortingForced()) adapter.items.reversed() else adapter.items
val chapterPos = chapters.indexOf(chapter) val chapterPos = chapters.indexOf(chapter)
if (chapterPos != -1) { if (chapterPos != -1) {
markAsRead(chapters.take(chapterPos)) markAsRead(chapters.take(chapterPos))

View File

@ -18,6 +18,7 @@ import eu.kanade.tachiyomi.util.syncChaptersWithSource
import exh.EH_SOURCE_ID import exh.EH_SOURCE_ID
import exh.EXH_SOURCE_ID import exh.EXH_SOURCE_ID
import exh.eh.EHentaiUpdateHelper import exh.eh.EHentaiUpdateHelper
import exh.isEhBasedSource
import rx.Observable import rx.Observable
import rx.Subscription import rx.Subscription
import rx.android.schedulers.AndroidSchedulers import rx.android.schedulers.AndroidSchedulers
@ -446,8 +447,10 @@ class ChaptersPresenter(
* Whether the sorting method is descending or ascending. * Whether the sorting method is descending or ascending.
*/ */
fun sortDescending(): Boolean { fun sortDescending(): Boolean {
return !((source.id == EH_SOURCE_ID || source.id == EXH_SOURCE_ID) return !isSortingForced() && manga.sortDescending()
&& preferences.eh_forceSortEhVersionsAsc().getOrDefault()) && manga.sortDescending()
} }
fun isSortingForced() = source.isEhBasedSource()
&& preferences.eh_forceSortEhVersionsAsc().getOrDefault()
} }