mirror of
https://github.com/vector-im/element-android.git
synced 2024-11-16 02:05:06 +08:00
Locales: improve algo
This commit is contained in:
parent
4961bb0e08
commit
19d655ec41
@ -42,8 +42,7 @@ object VectorLocale {
|
|||||||
/**
|
/**
|
||||||
* The supported application languages
|
* The supported application languages
|
||||||
*/
|
*/
|
||||||
var supportedLocales = ArrayList<Locale>()
|
val supportedLocales = mutableListOf<Locale>()
|
||||||
private set
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Provides the current application locale
|
* Provides the current application locale
|
||||||
@ -195,9 +194,7 @@ object VectorLocale {
|
|||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
supportedLocales.clear()
|
val list = knownLocalesSet.map { (language, country, script) ->
|
||||||
|
|
||||||
knownLocalesSet.mapTo(supportedLocales) { (language, country, script) ->
|
|
||||||
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
|
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
|
||||||
Locale.Builder()
|
Locale.Builder()
|
||||||
.setLanguage(language)
|
.setLanguage(language)
|
||||||
@ -208,9 +205,11 @@ object VectorLocale {
|
|||||||
Locale(language, country)
|
Locale(language, country)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
// sort by human display names
|
||||||
|
.sortedBy { localeToLocalisedString(it).toLowerCase(it) }
|
||||||
|
|
||||||
// sort by human display names
|
supportedLocales.clear()
|
||||||
supportedLocales.sortWith(Comparator { lhs, rhs -> localeToLocalisedString(lhs).compareTo(localeToLocalisedString(rhs)) })
|
supportedLocales.addAll(list)
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -61,7 +61,6 @@ class LocalePickerController @Inject constructor(
|
|||||||
}
|
}
|
||||||
list
|
list
|
||||||
.filter { it != data.currentLocale }
|
.filter { it != data.currentLocale }
|
||||||
.sortedBy { VectorLocale.localeToLocalisedString(it).toLowerCase(it) }
|
|
||||||
.forEach {
|
.forEach {
|
||||||
localeItem {
|
localeItem {
|
||||||
id(it.toString())
|
id(it.toString())
|
||||||
|
Loading…
Reference in New Issue
Block a user