Add gendered string variant files
This commit is contained in:
@@ -13,6 +13,7 @@ import androidx.compose.runtime.remember
|
||||
import androidx.compose.ui.platform.LocalContext
|
||||
import androidx.compose.ui.platform.LocalResources
|
||||
import androidx.compose.ui.res.stringResource
|
||||
import androidx.compose.ui.text.capitalize
|
||||
import androidx.core.app.GrammaticalInflectionManagerCompat
|
||||
import androidx.core.net.toUri
|
||||
import androidx.core.os.LocaleListCompat
|
||||
@@ -53,7 +54,11 @@ fun LocaleSettingsScreen() {
|
||||
Preference(
|
||||
icon = R.drawable.flag_24px,
|
||||
title = stringResource(R.string.preference_language),
|
||||
summary = if (language == null) stringResource(R.string.preference_value_system_default) else language.getDisplayName(language),
|
||||
summary = if (language == null) {
|
||||
stringResource(R.string.preference_value_system_default)
|
||||
} else {
|
||||
language.getDisplayName(language).replaceFirstChar { it.uppercase(language) }
|
||||
},
|
||||
enabled = isAtLeastApiLevel(33),
|
||||
onClick = {
|
||||
context.tryStartActivity(
|
||||
@@ -63,26 +68,33 @@ fun LocaleSettingsScreen() {
|
||||
)
|
||||
}
|
||||
)
|
||||
ListPreference(
|
||||
icon = R.drawable.wc_24px,
|
||||
title = "Form of address",
|
||||
value = GrammaticalInflectionManagerCompat.getApplicationGrammaticalGender(context).let {
|
||||
if (it == GrammaticalInflectionManagerCompat.GRAMMATICAL_GENDER_NOT_SPECIFIED) {
|
||||
GrammaticalInflectionManagerCompat.GRAMMATICAL_GENDER_NEUTRAL
|
||||
} else {
|
||||
it
|
||||
}
|
||||
},
|
||||
onValueChanged = {
|
||||
GrammaticalInflectionManagerCompat.setRequestedApplicationGrammaticalGender(context, it)
|
||||
},
|
||||
enabled = isAtLeastApiLevel(34),
|
||||
items = listOf(
|
||||
"Neutral" to GrammaticalInflectionManagerCompat.GRAMMATICAL_GENDER_NEUTRAL,
|
||||
"Feminine" to GrammaticalInflectionManagerCompat.GRAMMATICAL_GENDER_FEMININE,
|
||||
"Masculine" to GrammaticalInflectionManagerCompat.GRAMMATICAL_GENDER_MASCULINE,
|
||||
if (listOf("fr").contains(LocalResources.current.configuration?.locales[0]?.language)) {
|
||||
ListPreference(
|
||||
icon = R.drawable.wc_24px,
|
||||
title = stringResource(R.string.preference_form_of_address),
|
||||
value = GrammaticalInflectionManagerCompat.getApplicationGrammaticalGender(
|
||||
context
|
||||
).let {
|
||||
if (it == GrammaticalInflectionManagerCompat.GRAMMATICAL_GENDER_NOT_SPECIFIED) {
|
||||
GrammaticalInflectionManagerCompat.GRAMMATICAL_GENDER_NEUTRAL
|
||||
} else {
|
||||
it
|
||||
}
|
||||
},
|
||||
onValueChanged = {
|
||||
GrammaticalInflectionManagerCompat.setRequestedApplicationGrammaticalGender(
|
||||
context,
|
||||
it
|
||||
)
|
||||
},
|
||||
enabled = isAtLeastApiLevel(34),
|
||||
items = listOf(
|
||||
stringResource(R.string.preference_form_of_address_neutral) to GrammaticalInflectionManagerCompat.GRAMMATICAL_GENDER_NEUTRAL,
|
||||
stringResource(R.string.preference_form_of_address_fem) to GrammaticalInflectionManagerCompat.GRAMMATICAL_GENDER_FEMININE,
|
||||
stringResource(R.string.preference_form_of_address_masc) to GrammaticalInflectionManagerCompat.GRAMMATICAL_GENDER_MASCULINE,
|
||||
)
|
||||
)
|
||||
)
|
||||
}
|
||||
ListPreference(
|
||||
icon = R.drawable.schedule_24px,
|
||||
title = stringResource(R.string.preference_clock_widget_time_format),
|
||||
|
||||
3
core/i18n/src/main/res/values-be-feminine/strings.xml
Normal file
3
core/i18n/src/main/res/values-be-feminine/strings.xml
Normal file
@@ -0,0 +1,3 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
</resources>
|
||||
3
core/i18n/src/main/res/values-be-masculine/strings.xml
Normal file
3
core/i18n/src/main/res/values-be-masculine/strings.xml
Normal file
@@ -0,0 +1,3 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
</resources>
|
||||
3
core/i18n/src/main/res/values-ca-feminine/strings.xml
Normal file
3
core/i18n/src/main/res/values-ca-feminine/strings.xml
Normal file
@@ -0,0 +1,3 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
</resources>
|
||||
3
core/i18n/src/main/res/values-ca-masculine/strings.xml
Normal file
3
core/i18n/src/main/res/values-ca-masculine/strings.xml
Normal file
@@ -0,0 +1,3 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
</resources>
|
||||
3
core/i18n/src/main/res/values-cs-feminine/strings.xml
Normal file
3
core/i18n/src/main/res/values-cs-feminine/strings.xml
Normal file
@@ -0,0 +1,3 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
</resources>
|
||||
3
core/i18n/src/main/res/values-cs-masculine/strings.xml
Normal file
3
core/i18n/src/main/res/values-cs-masculine/strings.xml
Normal file
@@ -0,0 +1,3 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
</resources>
|
||||
3
core/i18n/src/main/res/values-el-feminine/strings.xml
Normal file
3
core/i18n/src/main/res/values-el-feminine/strings.xml
Normal file
@@ -0,0 +1,3 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
</resources>
|
||||
3
core/i18n/src/main/res/values-el-masculine/strings.xml
Normal file
3
core/i18n/src/main/res/values-el-masculine/strings.xml
Normal file
@@ -0,0 +1,3 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
</resources>
|
||||
3
core/i18n/src/main/res/values-es-feminine/strings.xml
Normal file
3
core/i18n/src/main/res/values-es-feminine/strings.xml
Normal file
@@ -0,0 +1,3 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
</resources>
|
||||
3
core/i18n/src/main/res/values-es-masculine/strings.xml
Normal file
3
core/i18n/src/main/res/values-es-masculine/strings.xml
Normal file
@@ -0,0 +1,3 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
</resources>
|
||||
@@ -1,2 +0,0 @@
|
||||
<resources>
|
||||
</resources>
|
||||
@@ -1,2 +0,0 @@
|
||||
<resources>
|
||||
</resources>
|
||||
3
core/i18n/src/main/res/values-he-feminine/strings.xml
Normal file
3
core/i18n/src/main/res/values-he-feminine/strings.xml
Normal file
@@ -0,0 +1,3 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
</resources>
|
||||
3
core/i18n/src/main/res/values-he-masculine/strings.xml
Normal file
3
core/i18n/src/main/res/values-he-masculine/strings.xml
Normal file
@@ -0,0 +1,3 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
</resources>
|
||||
3
core/i18n/src/main/res/values-hi-feminine/strings.xml
Normal file
3
core/i18n/src/main/res/values-hi-feminine/strings.xml
Normal file
@@ -0,0 +1,3 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
</resources>
|
||||
3
core/i18n/src/main/res/values-hi-masculine/strings.xml
Normal file
3
core/i18n/src/main/res/values-hi-masculine/strings.xml
Normal file
@@ -0,0 +1,3 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
</resources>
|
||||
3
core/i18n/src/main/res/values-it-feminine/strings.xml
Normal file
3
core/i18n/src/main/res/values-it-feminine/strings.xml
Normal file
@@ -0,0 +1,3 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
</resources>
|
||||
3
core/i18n/src/main/res/values-it-masculine/strings.xml
Normal file
3
core/i18n/src/main/res/values-it-masculine/strings.xml
Normal file
@@ -0,0 +1,3 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
</resources>
|
||||
3
core/i18n/src/main/res/values-pl-feminine/strings.xml
Normal file
3
core/i18n/src/main/res/values-pl-feminine/strings.xml
Normal file
@@ -0,0 +1,3 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
</resources>
|
||||
3
core/i18n/src/main/res/values-pl-masculine/strings.xml
Normal file
3
core/i18n/src/main/res/values-pl-masculine/strings.xml
Normal file
@@ -0,0 +1,3 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
</resources>
|
||||
6
core/i18n/src/main/res/values-pt-feminine/strings.xml
Normal file
6
core/i18n/src/main/res/values-pt-feminine/strings.xml
Normal file
@@ -0,0 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<string name="request_permission_message"><b>%1$s</b> pretende aceder aos dados de <b>%2$s</b>.</string>
|
||||
<string name="request_permission_deny_button">Recusar</string>
|
||||
<string name="request_permission_allow_button">Permitir</string>
|
||||
</resources>
|
||||
6
core/i18n/src/main/res/values-pt-masculine/strings.xml
Normal file
6
core/i18n/src/main/res/values-pt-masculine/strings.xml
Normal file
@@ -0,0 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<string name="request_permission_message"><b>%1$s</b> pretende aceder aos dados de <b>%2$s</b>.</string>
|
||||
<string name="request_permission_deny_button">Recusar</string>
|
||||
<string name="request_permission_allow_button">Permitir</string>
|
||||
</resources>
|
||||
@@ -0,0 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<string name="request_permission_message"><b>%1$s</b> pretende aceder aos dados de <b>%2$s</b>.</string>
|
||||
<string name="request_permission_deny_button">Recusar</string>
|
||||
<string name="request_permission_allow_button">Permitir</string>
|
||||
</resources>
|
||||
@@ -0,0 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<string name="request_permission_message"><b>%1$s</b> pretende aceder aos dados de <b>%2$s</b>.</string>
|
||||
<string name="request_permission_deny_button">Recusar</string>
|
||||
<string name="request_permission_allow_button">Permitir</string>
|
||||
</resources>
|
||||
6
core/i18n/src/main/res/values-ro-feminine/strings.xml
Normal file
6
core/i18n/src/main/res/values-ro-feminine/strings.xml
Normal file
@@ -0,0 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<string name="request_permission_message"><b>%1$s</b> pretende aceder aos dados de <b>%2$s</b>.</string>
|
||||
<string name="request_permission_deny_button">Recusar</string>
|
||||
<string name="request_permission_allow_button">Permitir</string>
|
||||
</resources>
|
||||
6
core/i18n/src/main/res/values-ro-masculine/strings.xml
Normal file
6
core/i18n/src/main/res/values-ro-masculine/strings.xml
Normal file
@@ -0,0 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<string name="request_permission_message"><b>%1$s</b> pretende aceder aos dados de <b>%2$s</b>.</string>
|
||||
<string name="request_permission_deny_button">Recusar</string>
|
||||
<string name="request_permission_allow_button">Permitir</string>
|
||||
</resources>
|
||||
6
core/i18n/src/main/res/values-ru-feminine/strings.xml
Normal file
6
core/i18n/src/main/res/values-ru-feminine/strings.xml
Normal file
@@ -0,0 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<string name="request_permission_message"><b>%1$s</b> pretende aceder aos dados de <b>%2$s</b>.</string>
|
||||
<string name="request_permission_deny_button">Recusar</string>
|
||||
<string name="request_permission_allow_button">Permitir</string>
|
||||
</resources>
|
||||
6
core/i18n/src/main/res/values-ru-masculine/strings.xml
Normal file
6
core/i18n/src/main/res/values-ru-masculine/strings.xml
Normal file
@@ -0,0 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<string name="request_permission_message"><b>%1$s</b> pretende aceder aos dados de <b>%2$s</b>.</string>
|
||||
<string name="request_permission_deny_button">Recusar</string>
|
||||
<string name="request_permission_allow_button">Permitir</string>
|
||||
</resources>
|
||||
6
core/i18n/src/main/res/values-uk-feminine/strings.xml
Normal file
6
core/i18n/src/main/res/values-uk-feminine/strings.xml
Normal file
@@ -0,0 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<string name="request_permission_message"><b>%1$s</b> pretende aceder aos dados de <b>%2$s</b>.</string>
|
||||
<string name="request_permission_deny_button">Recusar</string>
|
||||
<string name="request_permission_allow_button">Permitir</string>
|
||||
</resources>
|
||||
6
core/i18n/src/main/res/values-uk-masculine/strings.xml
Normal file
6
core/i18n/src/main/res/values-uk-masculine/strings.xml
Normal file
@@ -0,0 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<string name="request_permission_message"><b>%1$s</b> pretende aceder aos dados de <b>%2$s</b>.</string>
|
||||
<string name="request_permission_deny_button">Recusar</string>
|
||||
<string name="request_permission_allow_button">Permitir</string>
|
||||
</resources>
|
||||
@@ -1059,4 +1059,8 @@
|
||||
<string name="preference_screen_locale_summary">Language, units, time format</string>
|
||||
<string name="preference_language">Language</string>
|
||||
<string name="preference_value_system_default">System default</string>
|
||||
<string name="preference_form_of_address">Form of address</string>
|
||||
<string name="preference_form_of_address_neutral">Neutral</string>
|
||||
<string name="preference_form_of_address_fem">Feminine</string>
|
||||
<string name="preference_form_of_address_masc">Masculine</string>
|
||||
</resources>
|
||||
|
||||
107
crowdin.yml
107
crowdin.yml
@@ -5,45 +5,74 @@ files:
|
||||
type: android
|
||||
languages_mapping:
|
||||
android_code:
|
||||
ar: ar # Arabic
|
||||
az: az # Azerbaijani
|
||||
eu: eu # Basque
|
||||
be: be # Belarusian
|
||||
bn: bn # Bengali
|
||||
ca: ca # Catalan
|
||||
zh-CN: zh-rCN # Chinese Simplified
|
||||
zh-TW: zh-rTW # Chinese Traditional
|
||||
cs: cs # Czech
|
||||
da: da # Danish
|
||||
nl: nl # Dutch, Netherlands
|
||||
eo: eo # Esperanto
|
||||
fi: fi # Finnish
|
||||
fr: fr # French, France
|
||||
fr-fem: fr-feminine # French (feminine)
|
||||
fr-masc: fr-masculine # French (masculine)
|
||||
de: de # German, Germany
|
||||
el: el # Greek
|
||||
he: iw # Hebrew
|
||||
hu: hu # Hungarian
|
||||
id: in # Indonesian
|
||||
it: it # Italian, Italy
|
||||
ja: ja # Japanese
|
||||
ko: ko # Korean
|
||||
lt: lt # Lithuanian
|
||||
ms: ms # Malay
|
||||
nb: nb # Norwegian Bokmal
|
||||
fa: fa # Persian
|
||||
pl: pl # Polish
|
||||
pt-BR: pt # Portuguese, Brazil
|
||||
pt-PT: pt-rPT # Portuguese, Portugal
|
||||
ro: ro # Romanian
|
||||
ru: ru # Russian, Russia
|
||||
es-MX: es # Spanish, Mexico
|
||||
sv-SE: sv # Swedish, Sweden
|
||||
th: th # Thai
|
||||
tr: tr # Turkish, Türkiye
|
||||
uk: uk # Ukrainian
|
||||
vi: vi # Vietnamese
|
||||
ar: ar # Arabic
|
||||
az: az # Azerbaijani
|
||||
eu: eu # Basque
|
||||
be: be # Belarusian
|
||||
be-fem: be-feminine # Belarusian (feminine)
|
||||
be-masc: be-masculine # Belarusian (masculine)
|
||||
bn: bn # Bengali
|
||||
ca: ca # Catalan
|
||||
ca-fem: ca-feminine # Catalan (feminine)
|
||||
ca-masc: ca-masculine # Catalan (masculine)
|
||||
zh-CN: zh-rCN # Chinese Simplified
|
||||
zh-TW: zh-rTW # Chinese Traditional
|
||||
cs: cs # Czech
|
||||
cs-fem: cs-feminine # Czech (feminine)
|
||||
cs-masc: cs-masculine # Czech (masculine)
|
||||
da: da # Danish
|
||||
nl: nl # Dutch, Netherlands
|
||||
eo: eo # Esperanto
|
||||
fi: fi # Finnish
|
||||
fr: fr # French, France
|
||||
fr-fem: fr-feminine # French (feminine)
|
||||
fr-masc: fr-masculine # French (masculine)
|
||||
de: de # German, Germany
|
||||
el: el # Greek
|
||||
el-fem: el-feminine # Greek (feminine)
|
||||
el-masc: el-masculine # Greek (masculine)
|
||||
he: iw # Hebrew
|
||||
he-fem: he-feminine # Hebrew (feminine)
|
||||
he-masc: he-masculine # Hebrew (masculine)
|
||||
hi: hi # Hindi
|
||||
hi-fem: hi-feminine # Hindi (feminine)
|
||||
hi-masc: hi-masculine # Hindi (masculine)
|
||||
hu: hu # Hungarian
|
||||
id: in # Indonesian
|
||||
it: it # Italian, Italy
|
||||
it-fem: it-feminine # Italian (feminine)
|
||||
it-masc: it-masculine # Italian (masculine)
|
||||
ja: ja # Japanese
|
||||
ko: ko # Korean
|
||||
lt: lt # Lithuanian
|
||||
ms: ms # Malay
|
||||
nb: nb # Norwegian Bokmal
|
||||
fa: fa # Persian
|
||||
pl: pl # Polish
|
||||
pl-fem: pl-feminine # Polish (feminine)
|
||||
pl-masc: pl-masculine # Polish (masculine)
|
||||
pt-BR: pt # Portuguese, Brazil
|
||||
pt-BR-fem: pt-feminine # Portuguese, Brazil (feminine)
|
||||
pt-BR-masc: pt-masculine # Portuguese, Brazil (masculine)
|
||||
pt-PT: pt-rPT # Portuguese, Portugal
|
||||
pt-PT-fem: pt-feminine # Portuguese, Portugal (feminine)
|
||||
pt-PT-masc: pt-masculine # Portuguese, Portugal (masculine)
|
||||
ro: ro # Romanian
|
||||
ro-fem: ro-feminine # Romanian (feminine)
|
||||
ro-masc: ro-masculine # Romanian (masculine)
|
||||
ru: ru # Russian, Russia
|
||||
ru-fem: ru-feminine # Russian (feminine)
|
||||
ru-masc: ru-masculine # Russian (masculine)
|
||||
es-MX: es # Spanish, Mexico
|
||||
es-MX-fem: es-feminine # Spanish, Mexico (feminine)
|
||||
es-MX-masc: es-masculine # Spanish, Mexico (masculine)
|
||||
sv-SE: sv # Swedish, Sweden
|
||||
th: th # Thai
|
||||
tr: tr # Turkish, Türkiye
|
||||
uk: uk # Ukrainian
|
||||
uk-fem: uk-feminine # Ukrainian (feminine)
|
||||
uk-masc: uk-masculine # Ukrainian (masculine)
|
||||
vi: vi # Vietnamese
|
||||
- source: /core/i18n/src/main/res/values/units.xml
|
||||
translation: /core/i18n/src/main/res/values-%android_code%/%original_file_name%
|
||||
type: android
|
||||
|
||||
Reference in New Issue
Block a user