Cleanup some code
This commit is contained in:
parent
c501c9ecc3
commit
4f864152ea
@ -0,0 +1,3 @@
|
|||||||
|
package eu.kanade.tachiyomi.source.online
|
||||||
|
|
||||||
|
interface NamespaceSource
|
@ -26,6 +26,7 @@ import eu.kanade.tachiyomi.source.model.SChapter
|
|||||||
import eu.kanade.tachiyomi.source.model.SManga
|
import eu.kanade.tachiyomi.source.model.SManga
|
||||||
import eu.kanade.tachiyomi.source.online.HttpSource
|
import eu.kanade.tachiyomi.source.online.HttpSource
|
||||||
import eu.kanade.tachiyomi.source.online.MetadataSource
|
import eu.kanade.tachiyomi.source.online.MetadataSource
|
||||||
|
import eu.kanade.tachiyomi.source.online.NamespaceSource
|
||||||
import eu.kanade.tachiyomi.source.online.UrlImportableSource
|
import eu.kanade.tachiyomi.source.online.UrlImportableSource
|
||||||
import eu.kanade.tachiyomi.ui.manga.MangaController
|
import eu.kanade.tachiyomi.ui.manga.MangaController
|
||||||
import eu.kanade.tachiyomi.util.asJsoup
|
import eu.kanade.tachiyomi.util.asJsoup
|
||||||
@ -79,7 +80,10 @@ class EHentai(
|
|||||||
override val id: Long,
|
override val id: Long,
|
||||||
val exh: Boolean,
|
val exh: Boolean,
|
||||||
val context: Context
|
val context: Context
|
||||||
) : HttpSource(), MetadataSource<EHentaiSearchMetadata, Document>, UrlImportableSource {
|
) : HttpSource(),
|
||||||
|
MetadataSource<EHentaiSearchMetadata, Document>,
|
||||||
|
UrlImportableSource,
|
||||||
|
NamespaceSource {
|
||||||
override val metaClass = EHentaiSearchMetadata::class
|
override val metaClass = EHentaiSearchMetadata::class
|
||||||
|
|
||||||
private val domain: String
|
private val domain: String
|
||||||
|
@ -9,6 +9,7 @@ import eu.kanade.tachiyomi.source.model.MangasPage
|
|||||||
import eu.kanade.tachiyomi.source.model.SManga
|
import eu.kanade.tachiyomi.source.model.SManga
|
||||||
import eu.kanade.tachiyomi.source.online.HttpSource
|
import eu.kanade.tachiyomi.source.online.HttpSource
|
||||||
import eu.kanade.tachiyomi.source.online.MetadataSource
|
import eu.kanade.tachiyomi.source.online.MetadataSource
|
||||||
|
import eu.kanade.tachiyomi.source.online.NamespaceSource
|
||||||
import eu.kanade.tachiyomi.source.online.UrlImportableSource
|
import eu.kanade.tachiyomi.source.online.UrlImportableSource
|
||||||
import eu.kanade.tachiyomi.ui.manga.MangaController
|
import eu.kanade.tachiyomi.ui.manga.MangaController
|
||||||
import eu.kanade.tachiyomi.util.asJsoup
|
import eu.kanade.tachiyomi.util.asJsoup
|
||||||
@ -26,7 +27,8 @@ import java.util.Locale
|
|||||||
class Hitomi(delegate: HttpSource, val context: Context) :
|
class Hitomi(delegate: HttpSource, val context: Context) :
|
||||||
DelegatedHttpSource(delegate),
|
DelegatedHttpSource(delegate),
|
||||||
MetadataSource<HitomiSearchMetadata, Document>,
|
MetadataSource<HitomiSearchMetadata, Document>,
|
||||||
UrlImportableSource {
|
UrlImportableSource,
|
||||||
|
NamespaceSource {
|
||||||
override val metaClass = HitomiSearchMetadata::class
|
override val metaClass = HitomiSearchMetadata::class
|
||||||
override val lang = if (id == otherId) "all" else delegate.lang
|
override val lang = if (id == otherId) "all" else delegate.lang
|
||||||
|
|
||||||
|
@ -14,6 +14,7 @@ import eu.kanade.tachiyomi.source.model.MangasPage
|
|||||||
import eu.kanade.tachiyomi.source.model.SManga
|
import eu.kanade.tachiyomi.source.model.SManga
|
||||||
import eu.kanade.tachiyomi.source.online.HttpSource
|
import eu.kanade.tachiyomi.source.online.HttpSource
|
||||||
import eu.kanade.tachiyomi.source.online.MetadataSource
|
import eu.kanade.tachiyomi.source.online.MetadataSource
|
||||||
|
import eu.kanade.tachiyomi.source.online.NamespaceSource
|
||||||
import eu.kanade.tachiyomi.source.online.UrlImportableSource
|
import eu.kanade.tachiyomi.source.online.UrlImportableSource
|
||||||
import eu.kanade.tachiyomi.ui.manga.MangaController
|
import eu.kanade.tachiyomi.ui.manga.MangaController
|
||||||
import exh.metadata.metadata.NHentaiSearchMetadata
|
import exh.metadata.metadata.NHentaiSearchMetadata
|
||||||
@ -28,7 +29,8 @@ import rx.Observable
|
|||||||
class NHentai(delegate: HttpSource, val context: Context) :
|
class NHentai(delegate: HttpSource, val context: Context) :
|
||||||
DelegatedHttpSource(delegate),
|
DelegatedHttpSource(delegate),
|
||||||
MetadataSource<NHentaiSearchMetadata, Response>,
|
MetadataSource<NHentaiSearchMetadata, Response>,
|
||||||
UrlImportableSource {
|
UrlImportableSource,
|
||||||
|
NamespaceSource {
|
||||||
override val metaClass = NHentaiSearchMetadata::class
|
override val metaClass = NHentaiSearchMetadata::class
|
||||||
override val lang = if (id == otherId) "all" else delegate.lang
|
override val lang = if (id == otherId) "all" else delegate.lang
|
||||||
|
|
||||||
|
@ -8,6 +8,7 @@ import eu.kanade.tachiyomi.source.model.MangasPage
|
|||||||
import eu.kanade.tachiyomi.source.model.SManga
|
import eu.kanade.tachiyomi.source.model.SManga
|
||||||
import eu.kanade.tachiyomi.source.online.HttpSource
|
import eu.kanade.tachiyomi.source.online.HttpSource
|
||||||
import eu.kanade.tachiyomi.source.online.MetadataSource
|
import eu.kanade.tachiyomi.source.online.MetadataSource
|
||||||
|
import eu.kanade.tachiyomi.source.online.NamespaceSource
|
||||||
import eu.kanade.tachiyomi.source.online.UrlImportableSource
|
import eu.kanade.tachiyomi.source.online.UrlImportableSource
|
||||||
import eu.kanade.tachiyomi.ui.manga.MangaController
|
import eu.kanade.tachiyomi.ui.manga.MangaController
|
||||||
import eu.kanade.tachiyomi.util.asJsoup
|
import eu.kanade.tachiyomi.util.asJsoup
|
||||||
@ -23,7 +24,8 @@ import rx.Observable
|
|||||||
class EightMuses(delegate: HttpSource, val context: Context) :
|
class EightMuses(delegate: HttpSource, val context: Context) :
|
||||||
DelegatedHttpSource(delegate),
|
DelegatedHttpSource(delegate),
|
||||||
MetadataSource<EightMusesSearchMetadata, Document>,
|
MetadataSource<EightMusesSearchMetadata, Document>,
|
||||||
UrlImportableSource {
|
UrlImportableSource,
|
||||||
|
NamespaceSource {
|
||||||
override val metaClass = EightMusesSearchMetadata::class
|
override val metaClass = EightMusesSearchMetadata::class
|
||||||
override val lang = "en"
|
override val lang = "en"
|
||||||
|
|
||||||
|
@ -8,6 +8,7 @@ import eu.kanade.tachiyomi.source.model.MangasPage
|
|||||||
import eu.kanade.tachiyomi.source.model.SManga
|
import eu.kanade.tachiyomi.source.model.SManga
|
||||||
import eu.kanade.tachiyomi.source.online.HttpSource
|
import eu.kanade.tachiyomi.source.online.HttpSource
|
||||||
import eu.kanade.tachiyomi.source.online.MetadataSource
|
import eu.kanade.tachiyomi.source.online.MetadataSource
|
||||||
|
import eu.kanade.tachiyomi.source.online.NamespaceSource
|
||||||
import eu.kanade.tachiyomi.source.online.UrlImportableSource
|
import eu.kanade.tachiyomi.source.online.UrlImportableSource
|
||||||
import eu.kanade.tachiyomi.ui.manga.MangaController
|
import eu.kanade.tachiyomi.ui.manga.MangaController
|
||||||
import eu.kanade.tachiyomi.util.asJsoup
|
import eu.kanade.tachiyomi.util.asJsoup
|
||||||
@ -23,7 +24,8 @@ import rx.Observable
|
|||||||
class HBrowse(delegate: HttpSource, val context: Context) :
|
class HBrowse(delegate: HttpSource, val context: Context) :
|
||||||
DelegatedHttpSource(delegate),
|
DelegatedHttpSource(delegate),
|
||||||
MetadataSource<HBrowseSearchMetadata, Document>,
|
MetadataSource<HBrowseSearchMetadata, Document>,
|
||||||
UrlImportableSource {
|
UrlImportableSource,
|
||||||
|
NamespaceSource {
|
||||||
override val metaClass = HBrowseSearchMetadata::class
|
override val metaClass = HBrowseSearchMetadata::class
|
||||||
override val lang = "en"
|
override val lang = "en"
|
||||||
|
|
||||||
|
@ -8,6 +8,7 @@ import eu.kanade.tachiyomi.source.model.MangasPage
|
|||||||
import eu.kanade.tachiyomi.source.model.SManga
|
import eu.kanade.tachiyomi.source.model.SManga
|
||||||
import eu.kanade.tachiyomi.source.online.HttpSource
|
import eu.kanade.tachiyomi.source.online.HttpSource
|
||||||
import eu.kanade.tachiyomi.source.online.MetadataSource
|
import eu.kanade.tachiyomi.source.online.MetadataSource
|
||||||
|
import eu.kanade.tachiyomi.source.online.NamespaceSource
|
||||||
import eu.kanade.tachiyomi.source.online.UrlImportableSource
|
import eu.kanade.tachiyomi.source.online.UrlImportableSource
|
||||||
import eu.kanade.tachiyomi.ui.manga.MangaController
|
import eu.kanade.tachiyomi.ui.manga.MangaController
|
||||||
import eu.kanade.tachiyomi.util.asJsoup
|
import eu.kanade.tachiyomi.util.asJsoup
|
||||||
@ -25,7 +26,8 @@ import rx.Observable
|
|||||||
class Pururin(delegate: HttpSource, val context: Context) :
|
class Pururin(delegate: HttpSource, val context: Context) :
|
||||||
DelegatedHttpSource(delegate),
|
DelegatedHttpSource(delegate),
|
||||||
MetadataSource<PururinSearchMetadata, Document>,
|
MetadataSource<PururinSearchMetadata, Document>,
|
||||||
UrlImportableSource {
|
UrlImportableSource,
|
||||||
|
NamespaceSource {
|
||||||
/**
|
/**
|
||||||
* An ISO 639-1 compliant language code (two letters in lower case).
|
* An ISO 639-1 compliant language code (two letters in lower case).
|
||||||
*/
|
*/
|
||||||
|
@ -8,6 +8,7 @@ import eu.kanade.tachiyomi.source.model.MangasPage
|
|||||||
import eu.kanade.tachiyomi.source.model.SManga
|
import eu.kanade.tachiyomi.source.model.SManga
|
||||||
import eu.kanade.tachiyomi.source.online.HttpSource
|
import eu.kanade.tachiyomi.source.online.HttpSource
|
||||||
import eu.kanade.tachiyomi.source.online.MetadataSource
|
import eu.kanade.tachiyomi.source.online.MetadataSource
|
||||||
|
import eu.kanade.tachiyomi.source.online.NamespaceSource
|
||||||
import eu.kanade.tachiyomi.source.online.UrlImportableSource
|
import eu.kanade.tachiyomi.source.online.UrlImportableSource
|
||||||
import eu.kanade.tachiyomi.ui.manga.MangaController
|
import eu.kanade.tachiyomi.ui.manga.MangaController
|
||||||
import eu.kanade.tachiyomi.util.asJsoup
|
import eu.kanade.tachiyomi.util.asJsoup
|
||||||
@ -28,7 +29,8 @@ import java.util.Locale
|
|||||||
class Tsumino(delegate: HttpSource, val context: Context) :
|
class Tsumino(delegate: HttpSource, val context: Context) :
|
||||||
DelegatedHttpSource(delegate),
|
DelegatedHttpSource(delegate),
|
||||||
MetadataSource<TsuminoSearchMetadata, Document>,
|
MetadataSource<TsuminoSearchMetadata, Document>,
|
||||||
UrlImportableSource {
|
UrlImportableSource,
|
||||||
|
NamespaceSource {
|
||||||
override val metaClass = TsuminoSearchMetadata::class
|
override val metaClass = TsuminoSearchMetadata::class
|
||||||
override val lang = "en"
|
override val lang = "en"
|
||||||
|
|
||||||
|
@ -18,9 +18,10 @@ import eu.kanade.tachiyomi.data.database.models.Track
|
|||||||
import eu.kanade.tachiyomi.data.preference.PreferenceValues.DisplayMode
|
import eu.kanade.tachiyomi.data.preference.PreferenceValues.DisplayMode
|
||||||
import eu.kanade.tachiyomi.data.track.TrackManager
|
import eu.kanade.tachiyomi.data.track.TrackManager
|
||||||
import eu.kanade.tachiyomi.source.SourceManager
|
import eu.kanade.tachiyomi.source.SourceManager
|
||||||
|
import eu.kanade.tachiyomi.source.online.NamespaceSource
|
||||||
import eu.kanade.tachiyomi.widget.AutofitRecyclerView
|
import eu.kanade.tachiyomi.widget.AutofitRecyclerView
|
||||||
import exh.isNamespaceSource
|
|
||||||
import exh.metadata.metadata.base.RaisedTag
|
import exh.metadata.metadata.base.RaisedTag
|
||||||
|
import exh.source.EnhancedHttpSource.Companion.getMainSource
|
||||||
import exh.util.SourceTagsUtil.Companion.TAG_TYPE_EXCLUDE
|
import exh.util.SourceTagsUtil.Companion.TAG_TYPE_EXCLUDE
|
||||||
import exh.util.SourceTagsUtil.Companion.getRaisedTags
|
import exh.util.SourceTagsUtil.Companion.getRaisedTags
|
||||||
import exh.util.SourceTagsUtil.Companion.parseTag
|
import exh.util.SourceTagsUtil.Companion.parseTag
|
||||||
@ -134,7 +135,7 @@ class LibraryItem(val manga: LibraryManga, private val libraryDisplayMode: Prefe
|
|||||||
|
|
||||||
private fun ehContainsGenre(constraint: String): Boolean {
|
private fun ehContainsGenre(constraint: String): Boolean {
|
||||||
val genres = manga.getGenres()
|
val genres = manga.getGenres()
|
||||||
val raisedTags = if (source?.isNamespaceSource() == true) {
|
val raisedTags = if (source?.getMainSource() is NamespaceSource) {
|
||||||
manga.getRaisedTags(genres)
|
manga.getRaisedTags(genres)
|
||||||
} else null
|
} else null
|
||||||
return if (constraint.contains(" ") || constraint.contains("\"")) {
|
return if (constraint.contains(" ") || constraint.contains("\"")) {
|
||||||
|
@ -14,12 +14,13 @@ import eu.kanade.tachiyomi.R
|
|||||||
import eu.kanade.tachiyomi.data.database.models.Manga
|
import eu.kanade.tachiyomi.data.database.models.Manga
|
||||||
import eu.kanade.tachiyomi.databinding.MangaInfoItemBinding
|
import eu.kanade.tachiyomi.databinding.MangaInfoItemBinding
|
||||||
import eu.kanade.tachiyomi.source.Source
|
import eu.kanade.tachiyomi.source.Source
|
||||||
|
import eu.kanade.tachiyomi.source.online.NamespaceSource
|
||||||
import eu.kanade.tachiyomi.ui.manga.MangaController
|
import eu.kanade.tachiyomi.ui.manga.MangaController
|
||||||
import eu.kanade.tachiyomi.util.system.copyToClipboard
|
import eu.kanade.tachiyomi.util.system.copyToClipboard
|
||||||
import exh.isEhBasedSource
|
import exh.isEhBasedSource
|
||||||
import exh.isNamespaceSource
|
|
||||||
import exh.metadata.metadata.base.RaisedSearchMetadata
|
import exh.metadata.metadata.base.RaisedSearchMetadata
|
||||||
import exh.metadata.metadata.base.RaisedSearchMetadata.Companion.TAG_TYPE_VIRTUAL
|
import exh.metadata.metadata.base.RaisedSearchMetadata.Companion.TAG_TYPE_VIRTUAL
|
||||||
|
import exh.source.EnhancedHttpSource.Companion.getMainSource
|
||||||
import exh.util.SourceTagsUtil.Companion.getRaisedTags
|
import exh.util.SourceTagsUtil.Companion.getRaisedTags
|
||||||
import exh.util.makeSearchChip
|
import exh.util.makeSearchChip
|
||||||
import exh.util.setChipsExtended
|
import exh.util.setChipsExtended
|
||||||
@ -135,7 +136,7 @@ class MangaInfoItemAdapter(
|
|||||||
// Update genres list
|
// Update genres list
|
||||||
if (!manga.genre.isNullOrBlank()) {
|
if (!manga.genre.isNullOrBlank()) {
|
||||||
// SY -->
|
// SY -->
|
||||||
if (source != null && source.isNamespaceSource()) {
|
if (source != null && source.getMainSource() is NamespaceSource) {
|
||||||
val metaTags = meta?.tags?.filterNot { it.type == TAG_TYPE_VIRTUAL }?.groupBy { it.namespace }
|
val metaTags = meta?.tags?.filterNot { it.type == TAG_TYPE_VIRTUAL }?.groupBy { it.namespace }
|
||||||
var namespaceTags: List<NamespaceTagsItem> = emptyList()
|
var namespaceTags: List<NamespaceTagsItem> = emptyList()
|
||||||
if (source.isEhBasedSource() && metaTags != null && metaTags.all { it.key != null }) {
|
if (source.isEhBasedSource() && metaTags != null && metaTags.all { it.key != null }) {
|
||||||
@ -201,7 +202,7 @@ class MangaInfoItemAdapter(
|
|||||||
|
|
||||||
binding.mangaGenresTagsCompact.isVisible = isCurrentlyExpanded
|
binding.mangaGenresTagsCompact.isVisible = isCurrentlyExpanded
|
||||||
// SY -->
|
// SY -->
|
||||||
if (!source.isNamespaceSource()) {
|
if (source.getMainSource() !is NamespaceSource) {
|
||||||
binding.mangaGenresTagsFullChips.isVisible = !isCurrentlyExpanded
|
binding.mangaGenresTagsFullChips.isVisible = !isCurrentlyExpanded
|
||||||
} else {
|
} else {
|
||||||
binding.genreGroups.isVisible = !isCurrentlyExpanded
|
binding.genreGroups.isVisible = !isCurrentlyExpanded
|
||||||
|
@ -86,5 +86,3 @@ val LIBRARY_UPDATE_EXCLUDED_SOURCES by lazy {
|
|||||||
}
|
}
|
||||||
|
|
||||||
fun Source.isEhBasedSource() = id == EH_SOURCE_ID || id == EXH_SOURCE_ID
|
fun Source.isEhBasedSource() = id == EH_SOURCE_ID || id == EXH_SOURCE_ID
|
||||||
|
|
||||||
fun Source.isNamespaceSource() = id == EH_SOURCE_ID || id == EXH_SOURCE_ID || id in nHentaiSourceIds || id in hitomiSourceIds || id == PURURIN_SOURCE_ID || id == TSUMINO_SOURCE_ID || id == EIGHTMUSES_SOURCE_ID || id == HBROWSE_SOURCE_ID
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user