Minor fixes
(cherry picked from commit b8b468cea7f1d117f54331780d75584bff9cf644)
This commit is contained in:
parent
ad9736a2ba
commit
e0340be73c
7 changed files with 18 additions and 23 deletions
|
|
@ -125,7 +125,6 @@ Additional features for some extensions, features include custom description, op
|
||||||
* Mangadex
|
* Mangadex
|
||||||
* NHentai
|
* NHentai
|
||||||
* Puruin
|
* Puruin
|
||||||
* Tsumino
|
|
||||||
* LANraragi
|
* LANraragi
|
||||||
|
|
||||||
</details>
|
</details>
|
||||||
|
|
|
||||||
|
|
@ -42,7 +42,7 @@ import eu.kanade.presentation.util.animateItemFastScroll
|
||||||
import eu.kanade.tachiyomi.ui.browse.migration.sources.MigrateSourceScreenModel
|
import eu.kanade.tachiyomi.ui.browse.migration.sources.MigrateSourceScreenModel
|
||||||
import eu.kanade.tachiyomi.util.system.copyToClipboard
|
import eu.kanade.tachiyomi.util.system.copyToClipboard
|
||||||
import exh.source.ExhPreferences
|
import exh.source.ExhPreferences
|
||||||
import exh.source.hentaiSourceIds
|
import exh.source.eHentaiSourceIds
|
||||||
import kotlinx.collections.immutable.ImmutableList
|
import kotlinx.collections.immutable.ImmutableList
|
||||||
import tachiyomi.domain.source.model.Source
|
import tachiyomi.domain.source.model.Source
|
||||||
import tachiyomi.i18n.MR
|
import tachiyomi.i18n.MR
|
||||||
|
|
@ -195,7 +195,7 @@ private fun MigrateSourceList(
|
||||||
!filterObsoleteSource ||
|
!filterObsoleteSource ||
|
||||||
(
|
(
|
||||||
it.first.installedExtension?.isObsolete != false &&
|
it.first.installedExtension?.isObsolete != false &&
|
||||||
(!isHentaiEnabled || it.first.id !in hentaiSourceIds)
|
(!isHentaiEnabled || it.first.id !in eHentaiSourceIds)
|
||||||
)
|
)
|
||||||
},
|
},
|
||||||
// KMK <--
|
// KMK <--
|
||||||
|
|
|
||||||
|
|
@ -697,7 +697,7 @@ private fun MangaScreenSmallImpl(
|
||||||
// SY -->
|
// SY -->
|
||||||
doSearch = onSearch,
|
doSearch = onSearch,
|
||||||
searchMetadataChips = remember(state.meta, state.source.id, state.manga.genre) {
|
searchMetadataChips = remember(state.meta, state.source.id, state.manga.genre) {
|
||||||
SearchMetadataChips(state.meta, state.source, state.manga.genre)
|
SearchMetadataChips(state.meta, state.source.id, state.manga.genre)
|
||||||
},
|
},
|
||||||
// SY <--
|
// SY <--
|
||||||
)
|
)
|
||||||
|
|
@ -1133,7 +1133,7 @@ private fun MangaScreenLargeImpl(
|
||||||
// SY -->
|
// SY -->
|
||||||
doSearch = onSearch,
|
doSearch = onSearch,
|
||||||
searchMetadataChips = remember(state.meta, state.source.id, state.manga.genre) {
|
searchMetadataChips = remember(state.meta, state.source.id, state.manga.genre) {
|
||||||
SearchMetadataChips(state.meta, state.source, state.manga.genre)
|
SearchMetadataChips(state.meta, state.source.id, state.manga.genre)
|
||||||
},
|
},
|
||||||
// SY <--
|
// SY <--
|
||||||
)
|
)
|
||||||
|
|
|
||||||
|
|
@ -18,7 +18,6 @@ import androidx.compose.runtime.CompositionLocalProvider
|
||||||
import androidx.compose.runtime.Immutable
|
import androidx.compose.runtime.Immutable
|
||||||
import androidx.compose.runtime.remember
|
import androidx.compose.runtime.remember
|
||||||
import androidx.compose.ui.Modifier
|
import androidx.compose.ui.Modifier
|
||||||
import androidx.compose.ui.platform.LocalContext
|
|
||||||
import androidx.compose.ui.text.style.TextOverflow
|
import androidx.compose.ui.text.style.TextOverflow
|
||||||
import androidx.compose.ui.tooling.preview.PreviewLightDark
|
import androidx.compose.ui.tooling.preview.PreviewLightDark
|
||||||
import androidx.compose.ui.unit.dp
|
import androidx.compose.ui.unit.dp
|
||||||
|
|
@ -26,13 +25,11 @@ import eu.kanade.presentation.components.ChipBorder
|
||||||
import eu.kanade.presentation.components.SuggestionChip
|
import eu.kanade.presentation.components.SuggestionChip
|
||||||
import eu.kanade.presentation.components.SuggestionChipDefaults
|
import eu.kanade.presentation.components.SuggestionChipDefaults
|
||||||
import eu.kanade.presentation.theme.TachiyomiPreviewTheme
|
import eu.kanade.presentation.theme.TachiyomiPreviewTheme
|
||||||
import eu.kanade.tachiyomi.source.Source
|
|
||||||
import eu.kanade.tachiyomi.source.online.all.EHentai
|
|
||||||
import exh.metadata.metadata.EHentaiSearchMetadata
|
import exh.metadata.metadata.EHentaiSearchMetadata
|
||||||
import exh.metadata.metadata.RaisedSearchMetadata
|
import exh.metadata.metadata.RaisedSearchMetadata
|
||||||
import exh.metadata.metadata.base.RaisedTag
|
import exh.metadata.metadata.base.RaisedTag
|
||||||
import exh.source.EXH_SOURCE_ID
|
import exh.source.EXH_SOURCE_ID
|
||||||
import exh.source.isEhBasedSource
|
import exh.source.eHentaiSourceIds
|
||||||
import exh.util.SourceTagsUtil
|
import exh.util.SourceTagsUtil
|
||||||
import androidx.compose.material3.SuggestionChipDefaults as SuggestionChipDefaultsM3
|
import androidx.compose.material3.SuggestionChipDefaults as SuggestionChipDefaultsM3
|
||||||
|
|
||||||
|
|
@ -50,7 +47,7 @@ value class SearchMetadataChips(
|
||||||
val tags: Map<String, List<DisplayTag>>,
|
val tags: Map<String, List<DisplayTag>>,
|
||||||
) {
|
) {
|
||||||
companion object {
|
companion object {
|
||||||
operator fun invoke(meta: RaisedSearchMetadata?, source: Source, tags: List<String>?): SearchMetadataChips? {
|
operator fun invoke(meta: RaisedSearchMetadata?, sourceId: Long, tags: List<String>?): SearchMetadataChips? {
|
||||||
return if (meta != null) {
|
return if (meta != null) {
|
||||||
SearchMetadataChips(
|
SearchMetadataChips(
|
||||||
meta.tags
|
meta.tags
|
||||||
|
|
@ -60,11 +57,11 @@ value class SearchMetadataChips(
|
||||||
namespace = it.namespace,
|
namespace = it.namespace,
|
||||||
text = it.name,
|
text = it.name,
|
||||||
search = if (!it.namespace.isNullOrEmpty()) {
|
search = if (!it.namespace.isNullOrEmpty()) {
|
||||||
SourceTagsUtil.getWrappedTag(source.id, namespace = it.namespace, tag = it.name)
|
SourceTagsUtil.getWrappedTag(sourceId, namespace = it.namespace, tag = it.name)
|
||||||
} else {
|
} else {
|
||||||
SourceTagsUtil.getWrappedTag(source.id, fullTag = it.name)
|
SourceTagsUtil.getWrappedTag(sourceId, fullTag = it.name)
|
||||||
} ?: it.name,
|
} ?: it.name,
|
||||||
border = if (source.isEhBasedSource()) {
|
border = if (sourceId in eHentaiSourceIds) {
|
||||||
when (it.type) {
|
when (it.type) {
|
||||||
EHentaiSearchMetadata.TAG_TYPE_NORMAL -> 2
|
EHentaiSearchMetadata.TAG_TYPE_NORMAL -> 2
|
||||||
EHentaiSearchMetadata.TAG_TYPE_LIGHT -> 1
|
EHentaiSearchMetadata.TAG_TYPE_LIGHT -> 1
|
||||||
|
|
@ -235,7 +232,6 @@ fun TagsChip(
|
||||||
fun NamespaceTagsPreview() {
|
fun NamespaceTagsPreview() {
|
||||||
TachiyomiPreviewTheme {
|
TachiyomiPreviewTheme {
|
||||||
Surface {
|
Surface {
|
||||||
val context = LocalContext.current
|
|
||||||
NamespaceTags(
|
NamespaceTags(
|
||||||
tags = remember {
|
tags = remember {
|
||||||
EHentaiSearchMetadata().apply {
|
EHentaiSearchMetadata().apply {
|
||||||
|
|
@ -273,7 +269,7 @@ fun NamespaceTagsPreview() {
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
)
|
)
|
||||||
}.let { SearchMetadataChips(it, EHentai(EXH_SOURCE_ID, true, context), emptyList()) }!!
|
}.let { SearchMetadataChips(it, EXH_SOURCE_ID, emptyList()) }!!
|
||||||
},
|
},
|
||||||
onClick = {},
|
onClick = {},
|
||||||
)
|
)
|
||||||
|
|
|
||||||
|
|
@ -9,10 +9,10 @@ import androidx.compose.runtime.Composable
|
||||||
import androidx.compose.ui.tooling.preview.Preview
|
import androidx.compose.ui.tooling.preview.Preview
|
||||||
import androidx.core.graphics.toColorInt
|
import androidx.core.graphics.toColorInt
|
||||||
import exh.metadata.metadata.base.RaisedTag
|
import exh.metadata.metadata.base.RaisedTag
|
||||||
import exh.source.EH_SOURCE_ID
|
|
||||||
import exh.source.EXH_SOURCE_ID
|
|
||||||
import exh.source.PURURIN_SOURCE_ID
|
import exh.source.PURURIN_SOURCE_ID
|
||||||
import exh.source.TSUMINO_SOURCE_ID
|
import exh.source.TSUMINO_SOURCE_ID
|
||||||
|
import exh.source.eHentaiSourceIds
|
||||||
|
import exh.source.lanraragiSourceIds
|
||||||
import exh.source.mangaDexSourceIds
|
import exh.source.mangaDexSourceIds
|
||||||
import exh.source.nHentaiSourceIds
|
import exh.source.nHentaiSourceIds
|
||||||
import tachiyomi.presentation.core.icons.FlagEmoji.Companion.getEmojiLangFlag
|
import tachiyomi.presentation.core.icons.FlagEmoji.Companion.getEmojiLangFlag
|
||||||
|
|
@ -26,12 +26,12 @@ object SourceTagsUtil {
|
||||||
fullTag: String? = null,
|
fullTag: String? = null,
|
||||||
): String? {
|
): String? {
|
||||||
return if (
|
return if (
|
||||||
sourceId == EXH_SOURCE_ID ||
|
sourceId in eHentaiSourceIds ||
|
||||||
sourceId == EH_SOURCE_ID ||
|
|
||||||
sourceId in nHentaiSourceIds ||
|
sourceId in nHentaiSourceIds ||
|
||||||
sourceId in mangaDexSourceIds ||
|
sourceId in mangaDexSourceIds ||
|
||||||
sourceId == PURURIN_SOURCE_ID ||
|
sourceId == PURURIN_SOURCE_ID ||
|
||||||
sourceId == TSUMINO_SOURCE_ID
|
sourceId == TSUMINO_SOURCE_ID ||
|
||||||
|
sourceId in lanraragiSourceIds
|
||||||
) {
|
) {
|
||||||
val parsed = when {
|
val parsed = when {
|
||||||
fullTag != null -> parseTag(fullTag)
|
fullTag != null -> parseTag(fullTag)
|
||||||
|
|
|
||||||
|
|
@ -30,13 +30,13 @@ fun isMetadataSource(source: Long) = source in 6900..6999 ||
|
||||||
metadataDelegatedSourceIds.binarySearch(source) >= 0
|
metadataDelegatedSourceIds.binarySearch(source) >= 0
|
||||||
|
|
||||||
// KMK -->
|
// KMK -->
|
||||||
fun Source.isEhBasedSource() = this is EhBasedSource && id in hentaiSourceIds
|
fun Source.isEhBasedSource() = this is EhBasedSource && id in eHentaiSourceIds
|
||||||
// KMK <--
|
// KMK <--
|
||||||
|
|
||||||
fun Source.isMdBasedSource() = id in mangaDexSourceIds
|
fun Source.isMdBasedSource() = id in mangaDexSourceIds
|
||||||
|
|
||||||
// KMK -->
|
// KMK -->
|
||||||
fun Manga.isEhBasedManga() = source in hentaiSourceIds
|
fun Manga.isEhBasedManga() = source in eHentaiSourceIds
|
||||||
// KMK <--
|
// KMK <--
|
||||||
|
|
||||||
fun Source.getMainSource(): Source = if (this is EnhancedHttpSource) {
|
fun Source.getMainSource(): Source = if (this is EnhancedHttpSource) {
|
||||||
|
|
|
||||||
|
|
@ -71,7 +71,7 @@ val EXHENTAI_EXT_SOURCES = mapOf(
|
||||||
EXH_SOURCE_ID to "all", // E-Hentai (Multi)
|
EXH_SOURCE_ID to "all", // E-Hentai (Multi)
|
||||||
)
|
)
|
||||||
|
|
||||||
val hentaiSourceIds = EHENTAI_EXT_SOURCES.keys + EXHENTAI_EXT_SOURCES.keys
|
val eHentaiSourceIds = EHENTAI_EXT_SOURCES.keys + EXHENTAI_EXT_SOURCES.keys
|
||||||
|
|
||||||
val COMICK_IDS = setOf(
|
val COMICK_IDS = setOf(
|
||||||
982606170401027267, // all
|
982606170401027267, // all
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue