From 24e979f630054faa8e18a3a8e5c8bebbe838b955 Mon Sep 17 00:00:00 2001 From: axelherbstreith <75120552+axelherbstreith@users.noreply.github.com> Date: Fri, 8 Jan 2021 14:16:38 +0100 Subject: [PATCH] Transnational country list names not changing when language is changed (EXPOSUREAPP-4416) (#2053) * Changed access of country list names * Removed CachedString from Country items * Linting --- .../src/main/java/de/rki/coronawarnapp/ui/Country.kt | 6 ++++-- .../java/de/rki/coronawarnapp/ui/view/CountryListView.kt | 4 ++-- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/Country.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/Country.kt index 25c5d3f8f..4c07b081e 100644 --- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/Country.kt +++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/Country.kt @@ -1,9 +1,9 @@ package de.rki.coronawarnapp.ui +import android.content.Context import androidx.annotation.DrawableRes import androidx.annotation.StringRes import de.rki.coronawarnapp.R -import de.rki.coronawarnapp.util.ui.CachedString enum class Country( val code: String, @@ -43,5 +43,7 @@ enum class Country( SI("si", R.string.country_name_si, R.drawable.ic_country_si), SK("sk", R.string.country_name_sk, R.drawable.ic_country_sk); - val label = CachedString { it.getString(labelRes) } + fun getLabel(context: Context): String { + return context.getString(labelRes) + } } diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/view/CountryListView.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/view/CountryListView.kt index ed93584dd..8a5a0c171 100644 --- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/view/CountryListView.kt +++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/view/CountryListView.kt @@ -25,10 +25,10 @@ class CountryListView(context: Context, attrs: AttributeSet) : LinearLayout(cont set(value) { field = value.sortedWith { a, b -> // Sort country list alphabetically - Collator.getInstance().compare(a.label.get(context), b.label.get(context)) + Collator.getInstance().compare(a.getLabel(context), b.getLabel(context)) }.also { countries -> adapterCountryFlags.countryList = countries - countryNames.text = countries.joinToString(", ") { it.label.get(context) } + countryNames.text = countries.joinToString(", ") { it.getLabel(context) } } } -- GitLab