mirror of
https://github.com/mihonapp/mihon.git
synced 2025-06-27 19:47:51 +02:00
Fix EH version/chapter sorting shenanigans
This commit is contained in:
@ -198,6 +198,4 @@ object PreferenceKeys {
|
|||||||
const val eh_aggressivePageLoading = "eh_aggressive_page_loading"
|
const val eh_aggressivePageLoading = "eh_aggressive_page_loading"
|
||||||
|
|
||||||
const val eh_hl_useHighQualityThumbs = "eh_hl_hq_thumbs"
|
const val eh_hl_useHighQualityThumbs = "eh_hl_hq_thumbs"
|
||||||
|
|
||||||
const val eh_forceSortEhVersionsAsc = "eh_force_sort_eh_versions_asc"
|
|
||||||
}
|
}
|
||||||
|
@ -271,6 +271,4 @@ class PreferencesHelper(val context: Context) {
|
|||||||
fun eh_aggressivePageLoading() = rxPrefs.getBoolean(Keys.eh_aggressivePageLoading, false)
|
fun eh_aggressivePageLoading() = rxPrefs.getBoolean(Keys.eh_aggressivePageLoading, false)
|
||||||
|
|
||||||
fun eh_hl_useHighQualityThumbs() = rxPrefs.getBoolean(Keys.eh_hl_useHighQualityThumbs, false)
|
fun eh_hl_useHighQualityThumbs() = rxPrefs.getBoolean(Keys.eh_hl_useHighQualityThumbs, false)
|
||||||
|
|
||||||
fun eh_forceSortEhVersionsAsc() = rxPrefs.getBoolean(Keys.eh_forceSortEhVersionsAsc, true)
|
|
||||||
}
|
}
|
||||||
|
@ -185,7 +185,7 @@ class EHentai(override val id: Long,
|
|||||||
}!!.nextElementSibling().text()).time
|
}!!.nextElementSibling().text()).time
|
||||||
}
|
}
|
||||||
// Build and append the rest of the galleries
|
// Build and append the rest of the galleries
|
||||||
listOf(self) + newDisplay.mapIndexed { index, newGallery ->
|
newDisplay.mapIndexed { index, newGallery ->
|
||||||
val link = newGallery.attr("href")
|
val link = newGallery.attr("href")
|
||||||
val name = newGallery.text()
|
val name = newGallery.text()
|
||||||
val posted = (newGallery.nextSibling() as TextNode).text().removePrefix(", added ")
|
val posted = (newGallery.nextSibling() as TextNode).text().removePrefix(", added ")
|
||||||
@ -195,7 +195,7 @@ class EHentai(override val id: Long,
|
|||||||
this.chapter_number = index + 2f
|
this.chapter_number = index + 2f
|
||||||
this.date_upload = EX_DATE_FORMAT.parse(posted).time
|
this.date_upload = EX_DATE_FORMAT.parse(posted).time
|
||||||
}
|
}
|
||||||
}
|
}.reversed() + self
|
||||||
}.toObservable()
|
}.toObservable()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -146,8 +146,6 @@ class ChaptersController : NucleusController<ChaptersPresenter>(),
|
|||||||
val menuFilterUnread = menu.findItem(R.id.action_filter_unread)
|
val menuFilterUnread = menu.findItem(R.id.action_filter_unread)
|
||||||
val menuFilterDownloaded = menu.findItem(R.id.action_filter_downloaded)
|
val menuFilterDownloaded = menu.findItem(R.id.action_filter_downloaded)
|
||||||
val menuFilterBookmarked = menu.findItem(R.id.action_filter_bookmarked)
|
val menuFilterBookmarked = menu.findItem(R.id.action_filter_bookmarked)
|
||||||
val menuSort = menu.findItem(R.id.action_sort)
|
|
||||||
val menuSortingMode = menu.findItem(R.id.action_sorting_mode)
|
|
||||||
|
|
||||||
// Set correct checkbox values.
|
// Set correct checkbox values.
|
||||||
menuFilterRead.isChecked = presenter.onlyRead()
|
menuFilterRead.isChecked = presenter.onlyRead()
|
||||||
@ -155,10 +153,6 @@ class ChaptersController : NucleusController<ChaptersPresenter>(),
|
|||||||
menuFilterDownloaded.isChecked = presenter.onlyDownloaded()
|
menuFilterDownloaded.isChecked = presenter.onlyDownloaded()
|
||||||
menuFilterBookmarked.isChecked = presenter.onlyBookmarked()
|
menuFilterBookmarked.isChecked = presenter.onlyBookmarked()
|
||||||
|
|
||||||
val showSortOptions = !presenter.isSortingForced()
|
|
||||||
menuSort.isVisible = showSortOptions
|
|
||||||
menuSortingMode.isVisible = showSortOptions
|
|
||||||
|
|
||||||
if (presenter.onlyRead())
|
if (presenter.onlyRead())
|
||||||
//Disable unread filter option if read filter is enabled.
|
//Disable unread filter option if read filter is enabled.
|
||||||
menuFilterUnread.isEnabled = false
|
menuFilterUnread.isEnabled = false
|
||||||
@ -419,8 +413,7 @@ 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()
|
val chapters = if (presenter.sortDescending()) adapter.items.reversed() else adapter.items
|
||||||
|| 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))
|
||||||
|
@ -447,10 +447,6 @@ 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 !isSortingForced() && manga.sortDescending()
|
return manga.sortDescending()
|
||||||
}
|
}
|
||||||
|
|
||||||
fun isSortingForced() = source.isEhBasedSource()
|
|
||||||
&& preferences.eh_forceSortEhVersionsAsc().getOrDefault()
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -157,12 +157,6 @@ class SettingsEhController : SettingsController() {
|
|||||||
onChange { preferences.imageQuality().reconfigure() }
|
onChange { preferences.imageQuality().reconfigure() }
|
||||||
}.dependency = PreferenceKeys.eh_enableExHentai
|
}.dependency = PreferenceKeys.eh_enableExHentai
|
||||||
|
|
||||||
switchPreference {
|
|
||||||
title = "Force ascending sort on gallery versions"
|
|
||||||
key = PreferenceKeys.eh_forceSortEhVersionsAsc
|
|
||||||
defaultValue = true
|
|
||||||
}
|
|
||||||
|
|
||||||
preferenceCategory {
|
preferenceCategory {
|
||||||
title = "Favorites sync"
|
title = "Favorites sync"
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user