mirror of
https://github.com/mihonapp/mihon.git
synced 2025-02-19 13:39:02 +01:00
Sort library by download count
This commit is contained in:
parent
e17f70f722
commit
efd4308474
@ -177,6 +177,7 @@ private fun ColumnScope.SortPage(
|
|||||||
MR.strings.action_sort_latest_chapter to LibrarySort.Type.LatestChapter,
|
MR.strings.action_sort_latest_chapter to LibrarySort.Type.LatestChapter,
|
||||||
MR.strings.action_sort_chapter_fetch_date to LibrarySort.Type.ChapterFetchDate,
|
MR.strings.action_sort_chapter_fetch_date to LibrarySort.Type.ChapterFetchDate,
|
||||||
MR.strings.action_sort_date_added to LibrarySort.Type.DateAdded,
|
MR.strings.action_sort_date_added to LibrarySort.Type.DateAdded,
|
||||||
|
MR.strings.action_sort_download_count to LibrarySort.Type.DownloadCount,
|
||||||
).plus(trackerSortOption).map { (titleRes, mode) ->
|
).plus(trackerSortOption).map { (titleRes, mode) ->
|
||||||
SortItem(
|
SortItem(
|
||||||
label = stringResource(titleRes),
|
label = stringResource(titleRes),
|
||||||
|
@ -312,6 +312,9 @@ class LibraryScreenModel(
|
|||||||
val item2Score = trackerScores[i2.libraryManga.id] ?: defaultTrackerScoreSortValue
|
val item2Score = trackerScores[i2.libraryManga.id] ?: defaultTrackerScoreSortValue
|
||||||
item1Score.compareTo(item2Score)
|
item1Score.compareTo(item2Score)
|
||||||
}
|
}
|
||||||
|
LibrarySort.Type.DownloadCount -> {
|
||||||
|
i1.downloadCount.compareTo(i2.downloadCount)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -31,6 +31,7 @@ data class LibrarySort(
|
|||||||
data object ChapterFetchDate : Type(0b00011000)
|
data object ChapterFetchDate : Type(0b00011000)
|
||||||
data object DateAdded : Type(0b00011100)
|
data object DateAdded : Type(0b00011100)
|
||||||
data object TrackerMean : Type(0b000100000)
|
data object TrackerMean : Type(0b000100000)
|
||||||
|
data object DownloadCount : Type(0b000100100)
|
||||||
|
|
||||||
companion object {
|
companion object {
|
||||||
fun valueOf(flag: Long): Type {
|
fun valueOf(flag: Long): Type {
|
||||||
@ -77,6 +78,7 @@ data class LibrarySort(
|
|||||||
Type.ChapterFetchDate,
|
Type.ChapterFetchDate,
|
||||||
Type.DateAdded,
|
Type.DateAdded,
|
||||||
Type.TrackerMean,
|
Type.TrackerMean,
|
||||||
|
Type.DownloadCount,
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
val directions by lazy { setOf(Direction.Ascending, Direction.Descending) }
|
val directions by lazy { setOf(Direction.Ascending, Direction.Descending) }
|
||||||
@ -104,6 +106,7 @@ data class LibrarySort(
|
|||||||
"CHAPTER_FETCH_DATE" -> Type.ChapterFetchDate
|
"CHAPTER_FETCH_DATE" -> Type.ChapterFetchDate
|
||||||
"DATE_ADDED" -> Type.DateAdded
|
"DATE_ADDED" -> Type.DateAdded
|
||||||
"TRACKER_MEAN" -> Type.TrackerMean
|
"TRACKER_MEAN" -> Type.TrackerMean
|
||||||
|
"DOWNLOAD_COUNT" -> Type.DownloadCount
|
||||||
else -> Type.Alphabetical
|
else -> Type.Alphabetical
|
||||||
}
|
}
|
||||||
val ascending = if (values[1] == "ASCENDING") Direction.Ascending else Direction.Descending
|
val ascending = if (values[1] == "ASCENDING") Direction.Ascending else Direction.Descending
|
||||||
@ -125,6 +128,7 @@ data class LibrarySort(
|
|||||||
Type.ChapterFetchDate -> "CHAPTER_FETCH_DATE"
|
Type.ChapterFetchDate -> "CHAPTER_FETCH_DATE"
|
||||||
Type.DateAdded -> "DATE_ADDED"
|
Type.DateAdded -> "DATE_ADDED"
|
||||||
Type.TrackerMean -> "TRACKER_MEAN"
|
Type.TrackerMean -> "TRACKER_MEAN"
|
||||||
|
Type.DownloadCount -> "DOWNLOAD_COUNT"
|
||||||
}
|
}
|
||||||
val direction = if (direction == Direction.Ascending) "ASCENDING" else "DESCENDING"
|
val direction = if (direction == Direction.Ascending) "ASCENDING" else "DESCENDING"
|
||||||
return "$type,$direction"
|
return "$type,$direction"
|
||||||
|
@ -69,6 +69,7 @@
|
|||||||
<string name="action_sort_chapter_fetch_date">Chapter fetch date</string>
|
<string name="action_sort_chapter_fetch_date">Chapter fetch date</string>
|
||||||
<string name="action_sort_date_added">Date added</string>
|
<string name="action_sort_date_added">Date added</string>
|
||||||
<string name="action_sort_tracker_score">Tracker score</string>
|
<string name="action_sort_tracker_score">Tracker score</string>
|
||||||
|
<string name="action_sort_download_count">Download count</string>
|
||||||
<string name="action_search">Search</string>
|
<string name="action_search">Search</string>
|
||||||
<string name="action_search_hint">Search…</string>
|
<string name="action_search_hint">Search…</string>
|
||||||
<string name="action_search_settings">Search settings</string>
|
<string name="action_search_settings">Search settings</string>
|
||||||
|
Loading…
x
Reference in New Issue
Block a user