From 3f56c81c036401136bc7ebebe6750566125f4b1e Mon Sep 17 00:00:00 2001 From: Jobobby04 Date: Tue, 11 May 2021 12:38:50 -0400 Subject: [PATCH] Cleanup some tag stuff --- .../ui/manga/info/MangaInfoItemAdapter.kt | 25 +++++++++++++++++-- app/src/main/java/exh/util/SourceTagsUtil.kt | 10 ++++---- app/src/main/java/exh/util/ViewExtensions.kt | 6 ++--- 3 files changed, 31 insertions(+), 10 deletions(-) diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/manga/info/MangaInfoItemAdapter.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/manga/info/MangaInfoItemAdapter.kt index 9e28b818e..a714cf421 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/manga/info/MangaInfoItemAdapter.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/manga/info/MangaInfoItemAdapter.kt @@ -135,14 +135,35 @@ class MangaInfoItemAdapter( var namespaceTags: List = emptyList() if (source.isEhBasedSource() && metaTags != null && metaTags.all { it.key != null }) { namespaceTags = metaTags - .mapValues { values -> values.value.map { makeSearchChip(it.name, controller::performSearch, controller::performGlobalSearch, source.id, itemView.context, it.namespace, it.type) } } + .mapValues { values -> + values.value.map { + itemView.context.makeSearchChip( + it.name, + controller::performSearch, + controller::performGlobalSearch, + source.id, + it.namespace, + it.type + ) + } + } .map { NamespaceTagsItem(it.key!!, it.value) } } else { val genre = manga.getRaisedTags() if (!genre.isNullOrEmpty()) { namespaceTags = genre .groupBy { it.namespace } - .mapValues { values -> values.value.map { makeSearchChip(it.name, controller::performSearch, controller::performGlobalSearch, source.id, itemView.context, it.namespace) } } + .mapValues { values -> + values.value.map { + itemView.context.makeSearchChip( + it.name, + controller::performSearch, + controller::performGlobalSearch, + source.id, + it.namespace + ) + } + } .map { NamespaceTagsItem(it.key, it.value) } } } diff --git a/app/src/main/java/exh/util/SourceTagsUtil.kt b/app/src/main/java/exh/util/SourceTagsUtil.kt index f71afe800..db245e5a0 100644 --- a/app/src/main/java/exh/util/SourceTagsUtil.kt +++ b/app/src/main/java/exh/util/SourceTagsUtil.kt @@ -14,11 +14,11 @@ import java.util.Locale object SourceTagsUtil { fun getWrappedTag(sourceId: Long, namespace: String? = null, tag: String? = null, fullTag: String? = null): String? { return if (sourceId == EXH_SOURCE_ID || sourceId == EH_SOURCE_ID || sourceId in nHentaiSourceIds || sourceId in hitomiSourceIds) { - val parsed = if (fullTag != null) { - parseTag(fullTag) - } else if (namespace != null && tag != null) { - RaisedTag(namespace, tag, TAG_TYPE_DEFAULT) - } else null + val parsed = when { + fullTag != null -> parseTag(fullTag) + namespace != null && tag != null -> RaisedTag(namespace, tag, TAG_TYPE_DEFAULT) + else -> null + } if (parsed?.namespace != null) { when (sourceId) { in hitomiSourceIds -> wrapTagHitomi(parsed.namespace, parsed.name.substringBefore('|').trim()) diff --git a/app/src/main/java/exh/util/ViewExtensions.kt b/app/src/main/java/exh/util/ViewExtensions.kt index 42a74b659..507231960 100644 --- a/app/src/main/java/exh/util/ViewExtensions.kt +++ b/app/src/main/java/exh/util/ViewExtensions.kt @@ -19,13 +19,13 @@ fun ChipGroup.setChipsExtended(items: List?, onClick: (item: String) -> removeAllViews() items?.forEach { item -> - val chip = makeSearchChip(item, onClick, onLongClick, sourceId, context) + val chip = context.makeSearchChip(item, onClick, onLongClick, sourceId) addView(chip) } } -fun makeSearchChip(item: String, onClick: (item: String) -> Unit = {}, onLongClick: (item: String) -> Unit = {}, sourceId: Long, context: Context, namespace: String? = null, type: Int? = null): Chip { - return Chip(context).apply { +fun Context.makeSearchChip(item: String, onClick: (item: String) -> Unit = {}, onLongClick: (item: String) -> Unit = {}, sourceId: Long, namespace: String? = null, type: Int? = null): Chip { + return Chip(this).apply { text = item val search = if (namespace != null) { SourceTagsUtil.getWrappedTag(sourceId, namespace = namespace, tag = item)