Normalize some locale names

This commit is contained in:
arkon
2024-01-06 18:14:45 -05:00
parent 89678ebb17
commit 36f307e3bb
3 changed files with 16 additions and 7 deletions

View File

@@ -21,7 +21,7 @@ object LocaleHelper {
} else if (b == "all") {
1
} else {
getDisplayName(a).compareTo(getDisplayName(b))
getLocalizedDisplayName(a).compareTo(getLocalizedDisplayName(b))
}
}
@@ -34,16 +34,26 @@ object LocaleHelper {
SourcesScreenModel.PINNED_KEY -> context.stringResource(MR.strings.pinned_sources)
"other" -> context.stringResource(MR.strings.other_source)
"all" -> context.stringResource(MR.strings.multi_lang)
else -> getDisplayName(lang)
else -> getLocalizedDisplayName(lang)
}
}
fun getDisplayName(lang: String): String {
val normalizedLang = when (lang) {
"zh-CN" -> "zh-Hans"
"zh-TW" -> "zh-Hant"
else -> lang
}
return Locale.forLanguageTag(normalizedLang).displayName
}
/**
* Returns display name of a string language code.
*
* @param lang empty for system language
*/
fun getDisplayName(lang: String?): String {
fun getLocalizedDisplayName(lang: String?): String {
if (lang == null) {
return ""
}