From 9fc6ea65a5a9ca247769ec651e48451bb0b5f31a Mon Sep 17 00:00:00 2001 From: Cuong-Tran Date: Thu, 29 Aug 2024 14:24:29 +0700 Subject: [PATCH] use UN flag for language All --- .../interactor/GetExtensionLanguages.kt | 146 +++++++++++++++++- app/src/main/res/drawable/ic_flag_all.xml | 43 ------ app/src/main/res/drawable/ic_flag_un.xml | 23 +++ .../presentation/core/icons/FlagEmoji.kt | 2 +- 4 files changed, 169 insertions(+), 45 deletions(-) delete mode 100644 app/src/main/res/drawable/ic_flag_all.xml create mode 100644 app/src/main/res/drawable/ic_flag_un.xml diff --git a/app/src/main/java/eu/kanade/domain/extension/interactor/GetExtensionLanguages.kt b/app/src/main/java/eu/kanade/domain/extension/interactor/GetExtensionLanguages.kt index 6c2cc79c7..b43eaabf8 100644 --- a/app/src/main/java/eu/kanade/domain/extension/interactor/GetExtensionLanguages.kt +++ b/app/src/main/java/eu/kanade/domain/extension/interactor/GetExtensionLanguages.kt @@ -1,5 +1,15 @@ package eu.kanade.domain.extension.interactor +import androidx.compose.foundation.layout.FlowRow +import androidx.compose.foundation.layout.height +import androidx.compose.foundation.layout.width +import androidx.compose.material3.Icon +import androidx.compose.runtime.Composable +import androidx.compose.ui.Modifier +import androidx.compose.ui.graphics.Color +import androidx.compose.ui.res.painterResource +import androidx.compose.ui.tooling.preview.Preview +import androidx.compose.ui.unit.dp import eu.kanade.domain.source.service.SourcePreferences import eu.kanade.tachiyomi.R import eu.kanade.tachiyomi.extension.ExtensionManager @@ -35,7 +45,7 @@ class GetExtensionLanguages( companion object { fun getLanguageIconID(lang: String): Int? { return when (lang) { - // "all" -> R.drawable.ic_flag_all + "all" -> R.drawable.ic_flag_un // "other" -> R.drawable.globe "af" -> R.drawable.za // Afrikaans -> South Africa, ZA "am" -> R.drawable.et // Amharic -> Ethiopia, ET @@ -155,3 +165,137 @@ class GetExtensionLanguages( } // KMK <-- } + +@Preview +@Composable +private fun LanguageIconsPreview() { + val languages = listOf( + "all", + "other", + "af", + "am", + "ar", + "az", + "be", + "bg", + "bn", + "br", + "bs", + "ca", + "ceb", + "cn", + "co", + "cs", + "da", + "de", + "el", + "en", + "eo", + "es-419", + "es", + "et", + "eu", + "fa", + "fi", + "fil", + "fo", + "fr", + "ga", + "gn", + "gu", + "ha", + "he", + "hi", + "hr", + "ht", + "hu", + "hy", + "id", + "ig", + "is", + "it", + "ja", + "jv", + "ka", + "kk", + "km", + "kn", + "ko", + "kr", + "ku", + "ky", + "la", + "lb", + "lmo", + "lo", + "lt", + "lv", + "mg", + "mi", + "mk", + "ml", + "mn", + "mo", + "mr", + "ms", + "mt", + "my", + "ne", + "nl", + "no", + "ny", + "pl", + "ps", + "pt-BR", + "pt-PT", + "pt", + "rm", + "ro", + "ru", + "sd", + "sh", + "si", + "sk", + "sl", + "sm", + "sn", + "so", + "sq", + "sr", + "st", + "sv", + "sw", + "ta", + "te", + "tg", + "th", + "ti", + "tk", + "tl", + "to", + "tr", + "uk", + "ur", + "uz", + "vec", + "vi", + "yo", + "zh-Hans", + "zh-Hant", + "zh", + "zu", + ) + FlowRow { + languages.forEach { language -> + val iconResId = GetExtensionLanguages.getLanguageIconID(language) ?: R.drawable.globe + Icon( + painter = painterResource(id = iconResId), + tint = Color.Unspecified, + contentDescription = language, + modifier = Modifier + .width(21.dp) + .height(15.dp), + ) + } + } +} diff --git a/app/src/main/res/drawable/ic_flag_all.xml b/app/src/main/res/drawable/ic_flag_all.xml deleted file mode 100644 index 94e796e39..000000000 --- a/app/src/main/res/drawable/ic_flag_all.xml +++ /dev/null @@ -1,43 +0,0 @@ - - - - - - - - - - - - - - diff --git a/app/src/main/res/drawable/ic_flag_un.xml b/app/src/main/res/drawable/ic_flag_un.xml new file mode 100644 index 000000000..1368a9067 --- /dev/null +++ b/app/src/main/res/drawable/ic_flag_un.xml @@ -0,0 +1,23 @@ + + + + + + + + + + + + + + + + + + + + + + + diff --git a/presentation-core/src/main/java/tachiyomi/presentation/core/icons/FlagEmoji.kt b/presentation-core/src/main/java/tachiyomi/presentation/core/icons/FlagEmoji.kt index fbe664bc1..1c3ce46b1 100644 --- a/presentation-core/src/main/java/tachiyomi/presentation/core/icons/FlagEmoji.kt +++ b/presentation-core/src/main/java/tachiyomi/presentation/core/icons/FlagEmoji.kt @@ -37,7 +37,7 @@ class FlagEmoji { private fun lang2Country(lang: String): String? { return when (lang) { - // "all" -> R.drawable.ic_flag_all + "all" -> "un" // "other" -> R.drawable.globe "af" -> "za" // Afrikaans -> South Africa, ZA "am" -> "et" // Amharic -> Ethiopia, ET