Nullable source name for manga type

This commit is contained in:
Jobobby04 2021-04-14 18:16:42 -04:00
parent 142bdd14b7
commit 5af0e7e847
3 changed files with 7 additions and 7 deletions

View File

@ -885,7 +885,7 @@ class ReaderActivity : BaseRxActivity<ReaderActivityBinding, ReaderPresenter>()
binding.viewerContainer.addView(newViewer.getView()) binding.viewerContainer.addView(newViewer.getView())
// SY --> // SY -->
val defaultReaderType = manga.defaultReaderType(manga.mangaType(sourceName = sourceManager.getOrStub(manga.source).name)) val defaultReaderType = manga.defaultReaderType(manga.mangaType(sourceName = sourceManager.get(manga.source)?.name))
if (preferences.useAutoWebtoon().get() && manga.viewer == 0 && defaultReaderType != null && defaultReaderType == ReadingModeType.WEBTOON.prefValue) { if (preferences.useAutoWebtoon().get() && manga.viewer == 0 && defaultReaderType != null && defaultReaderType == ReadingModeType.WEBTOON.prefValue) {
readingModeToast?.cancel() readingModeToast?.cancel()
readingModeToast = this.toast(resources.getString(R.string.eh_auto_webtoon_snack)) { readingModeToast = this.toast(resources.getString(R.string.eh_auto_webtoon_snack)) {

View File

@ -598,7 +598,7 @@ class ReaderPresenter(
val manga = manga ?: return preferences.defaultViewer() val manga = manga ?: return preferences.defaultViewer()
// SY --> // SY -->
return if (resolveDefault && manga.viewer == 0 && preferences.useAutoWebtoon().get()) { return if (resolveDefault && manga.viewer == 0 && preferences.useAutoWebtoon().get()) {
manga.defaultReaderType(manga.mangaType(sourceName = sourceManager.getOrStub(manga.source).name)) ?: if (manga.viewer == 0) preferences.defaultViewer() else manga.viewer manga.defaultReaderType(manga.mangaType(sourceName = sourceManager.get(manga.source)?.name)) ?: if (manga.viewer == 0) preferences.defaultViewer() else manga.viewer
} else if (resolveDefault && manga.viewer == 0) { } else if (resolveDefault && manga.viewer == 0) {
preferences.defaultViewer() preferences.defaultViewer()
} else { } else {

View File

@ -24,22 +24,22 @@ fun Manga.mangaType(context: Context): String {
/** /**
* The type of comic the manga is (ie. manga, manhwa, manhua) * The type of comic the manga is (ie. manga, manhwa, manhua)
*/ */
fun Manga.mangaType(sourceName: String = Injekt.get<SourceManager>().getOrStub(source).name): MangaType { fun Manga.mangaType(sourceName: String? = Injekt.get<SourceManager>().get(source)?.name): MangaType {
val currentTags = getGenres().orEmpty() val currentTags = getGenres().orEmpty()
return when { return when {
currentTags.any { tag -> isMangaTag(tag) } -> { currentTags.any { tag -> isMangaTag(tag) } -> {
MangaType.TYPE_MANGA MangaType.TYPE_MANGA
} }
currentTags.any { tag -> isWebtoonTag(tag) } || isWebtoonSource(sourceName) -> { currentTags.any { tag -> isWebtoonTag(tag) } || sourceName?.let { isWebtoonSource(it) } == true -> {
MangaType.TYPE_WEBTOON MangaType.TYPE_WEBTOON
} }
currentTags.any { tag -> isComicTag(tag) } || isComicSource(sourceName) -> { currentTags.any { tag -> isComicTag(tag) } || sourceName?.let { isComicSource(it) } == true -> {
MangaType.TYPE_COMIC MangaType.TYPE_COMIC
} }
currentTags.any { tag -> isManhuaTag(tag) } || isManhuaSource(sourceName) -> { currentTags.any { tag -> isManhuaTag(tag) } || sourceName?.let { isManhuaSource(it) } == true -> {
MangaType.TYPE_MANHUA MangaType.TYPE_MANHUA
} }
currentTags.any { tag -> isManhwaTag(tag) } || isManhwaSource(sourceName) -> { currentTags.any { tag -> isManhwaTag(tag) } || sourceName?.let { isManhwaSource(it) } == true -> {
MangaType.TYPE_MANHWA MangaType.TYPE_MANHWA
} }
else -> { else -> {