about summary refs log tree commit diff
path: root/src/view/screens/LanguageSettings.tsx
diff options
context:
space:
mode:
authorEric Bailey <git@esb.lol>2023-12-12 12:42:11 -0600
committerGitHub <noreply@github.com>2023-12-12 12:42:11 -0600
commitc6ab6e8b8e81c1e2d72973a420cfea7aecc6e425 (patch)
treeab21ddf073883117b57a3d2e4c74e6b6e4b21311 /src/view/screens/LanguageSettings.tsx
parentd82b1a104794eb237b898336fae0918dc1ec6753 (diff)
downloadvoidsky-c6ab6e8b8e81c1e2d72973a420cfea7aecc6e425.tar.zst
i18n settings improvements (#2184)
* Handle language selector

* Improve type safety

* Add a little more safety

* Update comment
Diffstat (limited to 'src/view/screens/LanguageSettings.tsx')
-rw-r--r--src/view/screens/LanguageSettings.tsx5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/view/screens/LanguageSettings.tsx b/src/view/screens/LanguageSettings.tsx
index eefbfb2e2..819840a46 100644
--- a/src/view/screens/LanguageSettings.tsx
+++ b/src/view/screens/LanguageSettings.tsx
@@ -21,6 +21,7 @@ import {useModalControls} from '#/state/modals'
 import {useLanguagePrefs, useLanguagePrefsApi} from '#/state/preferences'
 import {Trans, msg} from '@lingui/macro'
 import {useLingui} from '@lingui/react'
+import {sanitizeAppLanguageSetting} from '#/locale/helpers'
 
 type Props = NativeStackScreenProps<CommonNavigatorParams, 'LanguageSettings'>
 
@@ -60,7 +61,7 @@ export function LanguageSettingsScreen(_props: Props) {
     (value: Parameters<PickerSelectProps['onValueChange']>[0]) => {
       if (!value) return
       if (langPrefs.appLanguage !== value) {
-        setLangPrefs.setAppLanguage(value)
+        setLangPrefs.setAppLanguage(sanitizeAppLanguageSetting(value))
       }
     },
     [langPrefs, setLangPrefs],
@@ -103,7 +104,7 @@ export function LanguageSettingsScreen(_props: Props) {
           <View style={{position: 'relative'}}>
             <RNPickerSelect
               placeholder={{}}
-              value={langPrefs.appLanguage}
+              value={sanitizeAppLanguageSetting(langPrefs.appLanguage)}
               onValueChange={onChangeAppLanguage}
               items={APP_LANGUAGES.filter(l => Boolean(l.code2)).map(l => ({
                 label: l.name,