mirror of
https://github.com/permissionlesstech/bitchat-android.git
synced 2026-08-29 07:16:08 +00:00
refine language picker for iOS parity
This commit is contained in:
parent
8f2585d8eb
commit
525ba27e3b
@ -20,6 +20,7 @@ import androidx.compose.foundation.background
|
||||
import androidx.compose.foundation.clickable
|
||||
import androidx.compose.foundation.layout.Arrangement
|
||||
import androidx.compose.foundation.layout.Box
|
||||
import androidx.compose.foundation.layout.BoxWithConstraints
|
||||
import androidx.compose.foundation.layout.Column
|
||||
import androidx.compose.foundation.layout.PaddingValues
|
||||
import androidx.compose.foundation.layout.Row
|
||||
@ -35,12 +36,13 @@ import androidx.compose.foundation.lazy.rememberLazyListState
|
||||
import androidx.compose.foundation.shape.CircleShape
|
||||
import androidx.compose.foundation.shape.RoundedCornerShape
|
||||
import androidx.compose.material.icons.filled.ChevronRight
|
||||
import androidx.compose.material.icons.filled.Check
|
||||
import androidx.compose.material.icons.filled.CloudDownload
|
||||
import androidx.compose.material.icons.filled.Delete
|
||||
import androidx.compose.material.icons.filled.Language
|
||||
import androidx.compose.material.icons.filled.Lock
|
||||
import androidx.compose.material.icons.filled.Public
|
||||
import androidx.compose.material.icons.filled.Share
|
||||
import androidx.compose.material.icons.filled.UnfoldMore
|
||||
import androidx.compose.material.icons.filled.Warning
|
||||
import androidx.compose.material.icons.filled.Wifi
|
||||
import androidx.compose.material.icons.outlined.Info
|
||||
@ -122,71 +124,6 @@ private fun ThemeChip(
|
||||
}
|
||||
}
|
||||
|
||||
@Composable
|
||||
private fun LanguagePickerDialog(
|
||||
languages: List<AppLanguage>,
|
||||
selectedLanguageTag: String,
|
||||
onLanguageSelected: (String) -> Unit,
|
||||
onDismiss: () -> Unit,
|
||||
) {
|
||||
AlertDialog(
|
||||
onDismissRequest = onDismiss,
|
||||
title = { Text(stringResource(R.string.about_select_language)) },
|
||||
text = {
|
||||
LazyColumn(modifier = Modifier.fillMaxWidth()) {
|
||||
item(key = "system") {
|
||||
LanguageOptionRow(
|
||||
label = stringResource(R.string.about_system_default),
|
||||
selected = selectedLanguageTag.isEmpty(),
|
||||
onClick = { onLanguageSelected("") },
|
||||
)
|
||||
}
|
||||
items(
|
||||
count = languages.size,
|
||||
key = { index -> languages[index].languageTag },
|
||||
) { index ->
|
||||
val language = languages[index]
|
||||
LanguageOptionRow(
|
||||
label = language.endonym,
|
||||
selected = selectedLanguageTag == language.languageTag,
|
||||
onClick = { onLanguageSelected(language.languageTag) },
|
||||
)
|
||||
}
|
||||
}
|
||||
},
|
||||
confirmButton = {
|
||||
TextButton(onClick = onDismiss) {
|
||||
Text(stringResource(android.R.string.cancel))
|
||||
}
|
||||
},
|
||||
)
|
||||
}
|
||||
|
||||
@Composable
|
||||
private fun LanguageOptionRow(
|
||||
label: String,
|
||||
selected: Boolean,
|
||||
onClick: () -> Unit,
|
||||
) {
|
||||
Row(
|
||||
modifier = Modifier
|
||||
.fillMaxWidth()
|
||||
.clickable(onClick = onClick)
|
||||
.padding(vertical = 8.dp),
|
||||
verticalAlignment = Alignment.CenterVertically,
|
||||
) {
|
||||
RadioButton(
|
||||
selected = selected,
|
||||
onClick = null,
|
||||
)
|
||||
Spacer(modifier = Modifier.width(12.dp))
|
||||
Text(
|
||||
text = label,
|
||||
style = MaterialTheme.typography.bodyLarge,
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
@Composable
|
||||
private fun LanguageSettingsRow(
|
||||
selectedLanguageName: String,
|
||||
@ -196,40 +133,59 @@ private fun LanguageSettingsRow(
|
||||
modifier = Modifier
|
||||
.fillMaxWidth()
|
||||
.clickable(onClick = onClick)
|
||||
.padding(horizontal = 16.dp, vertical = 13.dp),
|
||||
.padding(horizontal = 16.dp, vertical = 15.dp),
|
||||
verticalAlignment = Alignment.CenterVertically,
|
||||
) {
|
||||
Icon(
|
||||
imageVector = Icons.Filled.Language,
|
||||
contentDescription = null,
|
||||
tint = MaterialTheme.colorScheme.primary,
|
||||
modifier = Modifier.size(22.dp),
|
||||
)
|
||||
Spacer(modifier = Modifier.width(16.dp))
|
||||
Text(
|
||||
text = stringResource(R.string.about_language),
|
||||
style = MaterialTheme.typography.bodyMedium,
|
||||
fontWeight = FontWeight.Medium,
|
||||
text = stringResource(R.string.about_app_language),
|
||||
style = MaterialTheme.typography.labelLarge,
|
||||
fontWeight = FontWeight.SemiBold,
|
||||
modifier = Modifier.weight(1f),
|
||||
)
|
||||
Text(
|
||||
text = selectedLanguageName,
|
||||
style = MaterialTheme.typography.bodyMedium,
|
||||
color = MaterialTheme.colorScheme.onSurfaceVariant,
|
||||
color = MaterialTheme.colorScheme.primary,
|
||||
maxLines = 1,
|
||||
overflow = TextOverflow.Ellipsis,
|
||||
modifier = Modifier.weight(1f, fill = false),
|
||||
)
|
||||
Spacer(modifier = Modifier.width(8.dp))
|
||||
Icon(
|
||||
imageVector = Icons.Filled.ChevronRight,
|
||||
imageVector = Icons.Filled.UnfoldMore,
|
||||
contentDescription = null,
|
||||
tint = MaterialTheme.colorScheme.onSurfaceVariant,
|
||||
modifier = Modifier.size(20.dp),
|
||||
modifier = Modifier.size(18.dp),
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
@Composable
|
||||
private fun LanguageMenuItem(
|
||||
label: String,
|
||||
selected: Boolean,
|
||||
onClick: () -> Unit,
|
||||
) {
|
||||
DropdownMenuItem(
|
||||
text = {
|
||||
Text(
|
||||
text = label,
|
||||
style = MaterialTheme.typography.bodyMedium,
|
||||
)
|
||||
},
|
||||
onClick = onClick,
|
||||
trailingIcon = {
|
||||
if (selected) {
|
||||
Icon(
|
||||
imageVector = Icons.Filled.Check,
|
||||
contentDescription = null,
|
||||
tint = MaterialTheme.colorScheme.primary,
|
||||
)
|
||||
}
|
||||
},
|
||||
)
|
||||
}
|
||||
|
||||
/**
|
||||
* Unified settings toggle row with icon, title, subtitle, and switch
|
||||
* Apple-like design with proper spacing
|
||||
@ -377,21 +333,6 @@ fun AboutSheet(
|
||||
}
|
||||
var showLanguagePicker by remember { mutableStateOf(false) }
|
||||
|
||||
if (showLanguagePicker) {
|
||||
LanguagePickerDialog(
|
||||
languages = supportedLanguages,
|
||||
selectedLanguageTag = selectedLanguageTag,
|
||||
onLanguageSelected = { languageTag ->
|
||||
showLanguagePicker = false
|
||||
if (languageTag != selectedLanguageTag) {
|
||||
selectedLanguageTag = languageTag
|
||||
LanguagePreferenceManager.setLanguage(languageTag)
|
||||
}
|
||||
},
|
||||
onDismiss = { showLanguagePicker = false },
|
||||
)
|
||||
}
|
||||
|
||||
if (isPresented) {
|
||||
BitchatBottomSheet(
|
||||
modifier = modifier,
|
||||
@ -482,17 +423,52 @@ fun AboutSheet(
|
||||
|
||||
Column {
|
||||
AboutSectionLabel(text = stringResource(R.string.about_language))
|
||||
Surface(
|
||||
BoxWithConstraints(
|
||||
modifier = Modifier
|
||||
.fillMaxWidth()
|
||||
.padding(horizontal = AboutHorizontalPadding),
|
||||
color = colorScheme.surface,
|
||||
shape = AboutCardShape,
|
||||
) {
|
||||
LanguageSettingsRow(
|
||||
selectedLanguageName = selectedLanguageName,
|
||||
onClick = { showLanguagePicker = true },
|
||||
)
|
||||
Surface(
|
||||
modifier = Modifier.fillMaxWidth(),
|
||||
color = colorScheme.surface,
|
||||
shape = AboutCardShape,
|
||||
) {
|
||||
LanguageSettingsRow(
|
||||
selectedLanguageName = selectedLanguageName,
|
||||
onClick = { showLanguagePicker = true },
|
||||
)
|
||||
}
|
||||
DropdownMenu(
|
||||
expanded = showLanguagePicker,
|
||||
onDismissRequest = { showLanguagePicker = false },
|
||||
modifier = Modifier.width(maxWidth),
|
||||
) {
|
||||
LanguageMenuItem(
|
||||
label = stringResource(R.string.about_system_default),
|
||||
selected = selectedLanguageTag.isEmpty(),
|
||||
onClick = {
|
||||
showLanguagePicker = false
|
||||
if (selectedLanguageTag.isNotEmpty()) {
|
||||
selectedLanguageTag = ""
|
||||
LanguagePreferenceManager.setLanguage("")
|
||||
}
|
||||
},
|
||||
)
|
||||
HorizontalDivider()
|
||||
supportedLanguages.forEach { language ->
|
||||
LanguageMenuItem(
|
||||
label = language.endonym,
|
||||
selected = selectedLanguageTag == language.languageTag,
|
||||
onClick = {
|
||||
showLanguagePicker = false
|
||||
if (language.languageTag != selectedLanguageTag) {
|
||||
selectedLanguageTag = language.languageTag
|
||||
LanguagePreferenceManager.setLanguage(language.languageTag)
|
||||
}
|
||||
},
|
||||
)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -390,6 +390,7 @@
|
||||
<string name="nearby_notes_one">تُركت ملاحظة واحدة هنا — انقر للقراءة</string>
|
||||
<string name="nearby_notes_many">تُركت %d ملاحظات هنا — انقر للقراءة</string>
|
||||
<string name="about_language">اللغة</string>
|
||||
<string name="about_app_language">لغة التطبيق</string>
|
||||
<string name="about_system_default">إعداد النظام الافتراضي</string>
|
||||
<string name="about_select_language">اختر اللغة</string>
|
||||
</resources>
|
||||
|
||||
@ -377,6 +377,7 @@
|
||||
<string name="nearby_notes_one">এখানে 1টি নোট রাখা আছে — পড়তে ট্যাপ করুন</string>
|
||||
<string name="nearby_notes_many">এখানে %dটি নোট রাখা আছে — পড়তে ট্যাপ করুন</string>
|
||||
<string name="about_language">ভাষা</string>
|
||||
<string name="about_app_language">অ্যাপের ভাষা</string>
|
||||
<string name="about_system_default">সিস্টেম ডিফল্ট</string>
|
||||
<string name="about_select_language">ভাষা নির্বাচন করুন</string>
|
||||
</resources>
|
||||
|
||||
@ -391,6 +391,7 @@
|
||||
<string name="nearby_notes_one">1 notiz hier hinterlassen — tippen zum lesen</string>
|
||||
<string name="nearby_notes_many">%d notizen hier hinterlassen — tippen zum lesen</string>
|
||||
<string name="about_language">Sprache</string>
|
||||
<string name="about_app_language">App-Sprache</string>
|
||||
<string name="about_system_default">Systemstandard</string>
|
||||
<string name="about_select_language">Sprache auswählen</string>
|
||||
</resources>
|
||||
|
||||
@ -390,6 +390,7 @@
|
||||
<string name="nearby_notes_one">1 nota dejada aquí — toca para leer</string>
|
||||
<string name="nearby_notes_many">%d notas dejadas aquí — toca para leer</string>
|
||||
<string name="about_language">Idioma</string>
|
||||
<string name="about_app_language">Idioma de la app</string>
|
||||
<string name="about_system_default">Predeterminado del sistema</string>
|
||||
<string name="about_select_language">Seleccionar idioma</string>
|
||||
</resources>
|
||||
|
||||
@ -377,6 +377,7 @@
|
||||
<string name="nearby_notes_one">۱ یادداشت اینجا باقی مانده — برای خواندن ضربه بزنید</string>
|
||||
<string name="nearby_notes_many">%d یادداشت اینجا باقی مانده — برای خواندن ضربه بزنید</string>
|
||||
<string name="about_language">زبان</string>
|
||||
<string name="about_app_language">زبان برنامه</string>
|
||||
<string name="about_system_default">پیشفرض سیستم</string>
|
||||
<string name="about_select_language">انتخاب زبان</string>
|
||||
</resources>
|
||||
|
||||
@ -394,6 +394,7 @@
|
||||
<string name="nearby_notes_one">1 note ang naiwan dito — i-tap para basahin</string>
|
||||
<string name="nearby_notes_many">%d note ang naiwan dito — i-tap para basahin</string>
|
||||
<string name="about_language">Wika</string>
|
||||
<string name="about_app_language">Wika ng app</string>
|
||||
<string name="about_system_default">Default ng system</string>
|
||||
<string name="about_select_language">Pumili ng wika</string>
|
||||
</resources>
|
||||
|
||||
@ -408,6 +408,7 @@
|
||||
<string name="nearby_notes_one">1 note laissée ici — appuyez pour lire</string>
|
||||
<string name="nearby_notes_many">%d notes laissées ici — appuyez pour lire</string>
|
||||
<string name="about_language">Langue</string>
|
||||
<string name="about_app_language">Langue de l’appli</string>
|
||||
<string name="about_system_default">Langue du système</string>
|
||||
<string name="about_select_language">Choisir la langue</string>
|
||||
</resources>
|
||||
|
||||
@ -58,6 +58,7 @@
|
||||
<string name="nearby_notes_one">פתק אחד הושאר כאן — הקש לקריאה</string>
|
||||
<string name="nearby_notes_many">%d פתקים הושארו כאן — הקש לקריאה</string>
|
||||
<string name="about_language">שפה</string>
|
||||
<string name="about_app_language">שפת האפליקציה</string>
|
||||
<string name="about_system_default">ברירת המחדל של המערכת</string>
|
||||
<string name="about_select_language">בחירת שפה</string>
|
||||
</resources>
|
||||
|
||||
@ -390,6 +390,7 @@
|
||||
<string name="nearby_notes_one">यहाँ 1 नोट छोड़ा गया है — पढ़ने के लिए टैप करें</string>
|
||||
<string name="nearby_notes_many">यहाँ %d नोट छोड़े गए हैं — पढ़ने के लिए टैप करें</string>
|
||||
<string name="about_language">भाषा</string>
|
||||
<string name="about_app_language">ऐप की भाषा</string>
|
||||
<string name="about_system_default">सिस्टम डिफ़ॉल्ट</string>
|
||||
<string name="about_select_language">भाषा चुनें</string>
|
||||
</resources>
|
||||
|
||||
@ -390,6 +390,7 @@
|
||||
<string name="nearby_notes_one">1 catatan ditinggalkan di sini — ketuk untuk membaca</string>
|
||||
<string name="nearby_notes_many">%d catatan ditinggalkan di sini — ketuk untuk membaca</string>
|
||||
<string name="about_language">Bahasa</string>
|
||||
<string name="about_app_language">Bahasa aplikasi</string>
|
||||
<string name="about_system_default">Default sistem</string>
|
||||
<string name="about_select_language">Pilih bahasa</string>
|
||||
</resources>
|
||||
|
||||
@ -423,6 +423,7 @@
|
||||
<string name="nearby_notes_one">1 nota lasciata qui — tocca per leggere</string>
|
||||
<string name="nearby_notes_many">%d note lasciate qui — tocca per leggere</string>
|
||||
<string name="about_language">Lingua</string>
|
||||
<string name="about_app_language">Lingua dell’app</string>
|
||||
<string name="about_system_default">Predefinita di sistema</string>
|
||||
<string name="about_select_language">Seleziona lingua</string>
|
||||
</resources>
|
||||
|
||||
@ -390,6 +390,7 @@
|
||||
<string name="nearby_notes_one">ここに1件のメモがあります — タップして読む</string>
|
||||
<string name="nearby_notes_many">ここに%d件のメモがあります — タップして読む</string>
|
||||
<string name="about_language">言語</string>
|
||||
<string name="about_app_language">アプリの言語</string>
|
||||
<string name="about_system_default">システムのデフォルト</string>
|
||||
<string name="about_select_language">言語を選択</string>
|
||||
</resources>
|
||||
|
||||
@ -377,6 +377,7 @@
|
||||
<string name="nearby_notes_one">აქ 1 ჩანაწერია დატოვებული — წასაკითხად შეეხეთ</string>
|
||||
<string name="nearby_notes_many">აქ %d ჩანაწერია დატოვებული — წასაკითხად შეეხეთ</string>
|
||||
<string name="about_language">ენა</string>
|
||||
<string name="about_app_language">აპის ენა</string>
|
||||
<string name="about_system_default">სისტემის ნაგულისხმევი</string>
|
||||
<string name="about_select_language">ენის არჩევა</string>
|
||||
</resources>
|
||||
|
||||
@ -390,6 +390,7 @@
|
||||
<string name="nearby_notes_one">여기 남겨진 쪽지 1개 — 탭하여 읽기</string>
|
||||
<string name="nearby_notes_many">여기 남겨진 쪽지 %d개 — 탭하여 읽기</string>
|
||||
<string name="about_language">언어</string>
|
||||
<string name="about_app_language">앱 언어</string>
|
||||
<string name="about_system_default">시스템 기본값</string>
|
||||
<string name="about_select_language">언어 선택</string>
|
||||
</resources>
|
||||
|
||||
@ -403,6 +403,7 @@
|
||||
<string name="nearby_notes_one">naoty 1 no navela teto — tsindrio raha hamaky</string>
|
||||
<string name="nearby_notes_many">naoty %d no navela teto — tsindrio raha hamaky</string>
|
||||
<string name="about_language">Fiteny</string>
|
||||
<string name="about_app_language">Fitenin’ny app</string>
|
||||
<string name="about_system_default">Fitenin’ny rafitra</string>
|
||||
<string name="about_select_language">Safidio ny fiteny</string>
|
||||
</resources>
|
||||
|
||||
@ -45,6 +45,7 @@
|
||||
<string name="nearby_notes_one">1 nota ditinggalkan di sini — ketik untuk baca</string>
|
||||
<string name="nearby_notes_many">%d nota ditinggalkan di sini — ketik untuk baca</string>
|
||||
<string name="about_language">Bahasa</string>
|
||||
<string name="about_app_language">Bahasa aplikasi</string>
|
||||
<string name="about_system_default">Lalai sistem</string>
|
||||
<string name="about_select_language">Pilih bahasa</string>
|
||||
</resources>
|
||||
|
||||
@ -394,6 +394,7 @@
|
||||
<string name="nearby_notes_one">यहाँ 1 नोट छोडिएको छ — पढ्न ट्याप गर्नुहोस्</string>
|
||||
<string name="nearby_notes_many">यहाँ %d नोटहरू छोडिएका छन् — पढ्न ट्याप गर्नुहोस्</string>
|
||||
<string name="about_language">भाषा</string>
|
||||
<string name="about_app_language">एपको भाषा</string>
|
||||
<string name="about_system_default">प्रणालीको पूर्वनिर्धारित</string>
|
||||
<string name="about_select_language">भाषा छान्नुहोस्</string>
|
||||
</resources>
|
||||
|
||||
@ -421,6 +421,7 @@
|
||||
<string name="nearby_notes_one">1 notitie hier achtergelaten — tik om te lezen</string>
|
||||
<string name="nearby_notes_many">%d notities hier achtergelaten — tik om te lezen</string>
|
||||
<string name="about_language">Taal</string>
|
||||
<string name="about_app_language">App-taal</string>
|
||||
<string name="about_system_default">Systeemstandaard</string>
|
||||
<string name="about_select_language">Taal selecteren</string>
|
||||
</resources>
|
||||
|
||||
@ -377,6 +377,7 @@
|
||||
<string name="nearby_notes_one">ایتھے 1 نوٹ چھڈیا گیا — پڑھݨ لئی ٹیپ کرو</string>
|
||||
<string name="nearby_notes_many">ایتھے %d نوٹس چھڈے گئے — پڑھݨ لئی ٹیپ کرو</string>
|
||||
<string name="about_language">بولی</string>
|
||||
<string name="about_app_language">ایپ دی بولی</string>
|
||||
<string name="about_system_default">سسٹم دی ڈیفالٹ</string>
|
||||
<string name="about_select_language">بولی چݨو</string>
|
||||
</resources>
|
||||
|
||||
@ -58,6 +58,7 @@
|
||||
<string name="nearby_notes_one">1 notatka zostawiona tutaj — stuknij, aby przeczytać</string>
|
||||
<string name="nearby_notes_many">%d notatek zostawionych tutaj — stuknij, aby przeczytać</string>
|
||||
<string name="about_language">Język</string>
|
||||
<string name="about_app_language">Język aplikacji</string>
|
||||
<string name="about_system_default">Domyślny systemu</string>
|
||||
<string name="about_select_language">Wybierz język</string>
|
||||
</resources>
|
||||
|
||||
@ -389,6 +389,7 @@
|
||||
<string name="nearby_notes_one">1 nota deixada aqui — toque para ler</string>
|
||||
<string name="nearby_notes_many">%d notas deixadas aqui — toque para ler</string>
|
||||
<string name="about_language">Idioma</string>
|
||||
<string name="about_app_language">Idioma do app</string>
|
||||
<string name="about_system_default">Padrão do sistema</string>
|
||||
<string name="about_select_language">Selecionar idioma</string>
|
||||
</resources>
|
||||
|
||||
@ -390,6 +390,7 @@
|
||||
<string name="nearby_notes_one">1 nota deixada aqui — toque para ler</string>
|
||||
<string name="nearby_notes_many">%d notas deixadas aqui — toque para ler</string>
|
||||
<string name="about_language">Idioma</string>
|
||||
<string name="about_app_language">Idioma da aplicação</string>
|
||||
<string name="about_system_default">Predefinição do sistema</string>
|
||||
<string name="about_select_language">Selecionar idioma</string>
|
||||
</resources>
|
||||
|
||||
@ -384,6 +384,7 @@
|
||||
<string name="nearby_notes_one">здесь оставлена 1 заметка — нажмите, чтобы прочитать</string>
|
||||
<string name="nearby_notes_many">здесь оставлено заметок: %d — нажмите, чтобы прочитать</string>
|
||||
<string name="about_language">Язык</string>
|
||||
<string name="about_app_language">Язык приложения</string>
|
||||
<string name="about_system_default">Системный язык</string>
|
||||
<string name="about_select_language">Выбрать язык</string>
|
||||
</resources>
|
||||
|
||||
@ -382,6 +382,7 @@
|
||||
<string name="nearby_notes_one">1 anteckning lämnad här — tryck för att läsa</string>
|
||||
<string name="nearby_notes_many">%d anteckningar lämnade här — tryck för att läsa</string>
|
||||
<string name="about_language">Språk</string>
|
||||
<string name="about_app_language">Appspråk</string>
|
||||
<string name="about_system_default">Systemstandard</string>
|
||||
<string name="about_select_language">Välj språk</string>
|
||||
</resources>
|
||||
|
||||
@ -45,6 +45,7 @@
|
||||
<string name="nearby_notes_one">இங்கே 1 குறிப்பு விடப்பட்டுள்ளது — படிக்க தட்டவும்</string>
|
||||
<string name="nearby_notes_many">இங்கே %d குறிப்புகள் விடப்பட்டுள்ளன — படிக்க தட்டவும்</string>
|
||||
<string name="about_language">மொழி</string>
|
||||
<string name="about_app_language">பயன்பாட்டு மொழி</string>
|
||||
<string name="about_system_default">கணினி இயல்புநிலை</string>
|
||||
<string name="about_select_language">மொழியைத் தேர்ந்தெடுக்கவும்</string>
|
||||
</resources>
|
||||
|
||||
@ -377,6 +377,7 @@
|
||||
<string name="nearby_notes_one">มี 1 โน้ตทิ้งไว้ที่นี่ — แตะเพื่ออ่าน</string>
|
||||
<string name="nearby_notes_many">มี %d โน้ตทิ้งไว้ที่นี่ — แตะเพื่ออ่าน</string>
|
||||
<string name="about_language">ภาษา</string>
|
||||
<string name="about_app_language">ภาษาของแอป</string>
|
||||
<string name="about_system_default">ค่าเริ่มต้นของระบบ</string>
|
||||
<string name="about_select_language">เลือกภาษา</string>
|
||||
</resources>
|
||||
|
||||
@ -382,6 +382,7 @@
|
||||
<string name="nearby_notes_one">buraya 1 not bırakıldı — okumak için dokun</string>
|
||||
<string name="nearby_notes_many">buraya %d not bırakıldı — okumak için dokun</string>
|
||||
<string name="about_language">Dil</string>
|
||||
<string name="about_app_language">Uygulama dili</string>
|
||||
<string name="about_system_default">Sistem varsayılanı</string>
|
||||
<string name="about_select_language">Dil seçin</string>
|
||||
</resources>
|
||||
|
||||
@ -45,6 +45,7 @@
|
||||
<string name="nearby_notes_one">тут залишено 1 нотатку — торкніться, щоб прочитати</string>
|
||||
<string name="nearby_notes_many">тут залишено %d нотаток — торкніться, щоб прочитати</string>
|
||||
<string name="about_language">Мова</string>
|
||||
<string name="about_app_language">Мова застосунку</string>
|
||||
<string name="about_system_default">Системна мова</string>
|
||||
<string name="about_select_language">Вибрати мову</string>
|
||||
</resources>
|
||||
|
||||
@ -390,6 +390,7 @@
|
||||
<string name="nearby_notes_one">یہاں 1 نوٹ چھوڑا گیا ہے — پڑھنے کے لیے تھپتھپائیں</string>
|
||||
<string name="nearby_notes_many">یہاں %d نوٹ چھوڑے گئے ہیں — پڑھنے کے لیے تھپتھپائیں</string>
|
||||
<string name="about_language">زبان</string>
|
||||
<string name="about_app_language">ایپ کی زبان</string>
|
||||
<string name="about_system_default">سسٹم ڈیفالٹ</string>
|
||||
<string name="about_select_language">زبان منتخب کریں</string>
|
||||
</resources>
|
||||
|
||||
@ -377,6 +377,7 @@
|
||||
<string name="nearby_notes_one">có 1 ghi chú để lại ở đây — chạm để đọc</string>
|
||||
<string name="nearby_notes_many">có %d ghi chú để lại ở đây — chạm để đọc</string>
|
||||
<string name="about_language">Ngôn ngữ</string>
|
||||
<string name="about_app_language">Ngôn ngữ ứng dụng</string>
|
||||
<string name="about_system_default">Mặc định hệ thống</string>
|
||||
<string name="about_select_language">Chọn ngôn ngữ</string>
|
||||
</resources>
|
||||
|
||||
@ -57,6 +57,7 @@
|
||||
<string name="nearby_notes_one">这里留有 1 条留言 — 点按阅读</string>
|
||||
<string name="nearby_notes_many">这里留有 %d 条留言 — 点按阅读</string>
|
||||
<string name="about_language">语言</string>
|
||||
<string name="about_app_language">应用语言</string>
|
||||
<string name="about_system_default">跟随系统</string>
|
||||
<string name="about_select_language">选择语言</string>
|
||||
</resources>
|
||||
|
||||
@ -57,6 +57,7 @@
|
||||
<string name="nearby_notes_one">這裡留有 1 則留言 — 點按閱讀</string>
|
||||
<string name="nearby_notes_many">這裡留有 %d 則留言 — 點按閱讀</string>
|
||||
<string name="about_language">語言</string>
|
||||
<string name="about_app_language">應用程式語言</string>
|
||||
<string name="about_system_default">跟隨系統</string>
|
||||
<string name="about_select_language">選擇語言</string>
|
||||
</resources>
|
||||
|
||||
@ -407,6 +407,7 @@
|
||||
<string name="nearby_notes_one">这里留有 1 条留言 — 点按阅读</string>
|
||||
<string name="nearby_notes_many">这里留有 %d 条留言 — 点按阅读</string>
|
||||
<string name="about_language">语言</string>
|
||||
<string name="about_app_language">应用语言</string>
|
||||
<string name="about_system_default">跟随系统</string>
|
||||
<string name="about_select_language">选择语言</string>
|
||||
</resources>
|
||||
|
||||
@ -568,6 +568,7 @@
|
||||
|
||||
<string name="bluetooth_recommended">Bluetooth Recommended</string>
|
||||
<string name="about_language">Language</string>
|
||||
<string name="about_app_language">App language</string>
|
||||
<string name="about_system_default">System default</string>
|
||||
<string name="about_select_language">Select language</string>
|
||||
</resources>
|
||||
|
||||
@ -34,6 +34,7 @@ class LanguageCatalogContractTest {
|
||||
fun `language picker strings exist in every locale pack`() {
|
||||
val requiredKeys = setOf(
|
||||
"about_language",
|
||||
"about_app_language",
|
||||
"about_system_default",
|
||||
"about_select_language",
|
||||
)
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user