mirror of
https://github.com/null2264/yokai.git
synced 2025-06-21 10:44:42 +00:00
Fix Manhwa filter not including webtoons
Also some optimizations to setting up series type filters Co-Authored-By: h-hyuuga <83582211+h-hyuuga@users.noreply.github.com>
This commit is contained in:
parent
6468263d9f
commit
515846dcde
2 changed files with 13 additions and 8 deletions
|
@ -362,7 +362,7 @@ class LibraryPresenter(
|
|||
|
||||
if (filterMangaType > 0) {
|
||||
if (if (filterMangaType == Manga.TYPE_MANHWA) {
|
||||
(filterMangaType != item.manga.seriesType(sourceManager = sourceManager) && filterMangaType != Manga.TYPE_WEBTOON)
|
||||
item.manga.seriesType(sourceManager = sourceManager) !in arrayOf(filterMangaType, Manga.TYPE_WEBTOON)
|
||||
} else {
|
||||
filterMangaType != item.manga.seriesType(sourceManager = sourceManager)
|
||||
}
|
||||
|
|
|
@ -307,19 +307,24 @@ class FilterBottomSheet @JvmOverloads constructor(context: Context, attrs: Attri
|
|||
withIOContext {
|
||||
val libraryManga = controller?.presenter?.allLibraryItems ?: return@withIOContext
|
||||
checked = true
|
||||
val types = mutableListOf<Int>()
|
||||
if (libraryManga.any { it.manga.seriesType(sourceManager = sourceManager) == Manga.TYPE_MANHWA }) types.add(R.string.manhwa)
|
||||
if (libraryManga.any { it.manga.seriesType(sourceManager = sourceManager) == Manga.TYPE_MANHUA }) types.add(R.string.manhua)
|
||||
if (libraryManga.any { it.manga.seriesType(sourceManager = sourceManager) == Manga.TYPE_COMIC }) types.add(R.string.comic)
|
||||
var types = mutableSetOf<Int>()
|
||||
libraryManga.forEach {
|
||||
when (it.manga.seriesType(sourceManager = sourceManager)) {
|
||||
Manga.TYPE_MANHWA, Manga.TYPE_WEBTOON -> types.add(R.string.manhwa)
|
||||
Manga.TYPE_MANHUA -> types.add(R.string.manhua)
|
||||
Manga.TYPE_COMIC -> types.add(R.string.comic)
|
||||
}
|
||||
if (types.size == 3) return@forEach
|
||||
}
|
||||
val sortedTypes = arrayOf(R.string.manhwa, R.string.manhua, R.string.comic)
|
||||
types = types.sortedBy { sortedTypes.indexOf(it) }.toMutableSet()
|
||||
if (types.isNotEmpty()) {
|
||||
launchUI {
|
||||
val mangaType = inflate(R.layout.filter_tag_group) as FilterTagGroup
|
||||
mangaType.setup(
|
||||
this@FilterBottomSheet,
|
||||
R.string.manga,
|
||||
types.first(),
|
||||
types.getOrNull(1),
|
||||
types.getOrNull(2),
|
||||
*types.toTypedArray(),
|
||||
)
|
||||
this@FilterBottomSheet.mangaType = mangaType
|
||||
reorderFilters()
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue