diff options
Diffstat (limited to 'packages/renderer/src/i18n/loadRendererLoalization.ts')
-rw-r--r-- | packages/renderer/src/i18n/loadRendererLoalization.ts | 27 |
1 files changed, 15 insertions, 12 deletions
diff --git a/packages/renderer/src/i18n/loadRendererLoalization.ts b/packages/renderer/src/i18n/loadRendererLoalization.ts index b078aeb..4d7b84a 100644 --- a/packages/renderer/src/i18n/loadRendererLoalization.ts +++ b/packages/renderer/src/i18n/loadRendererLoalization.ts | |||
@@ -20,7 +20,7 @@ | |||
20 | 20 | ||
21 | import { FALLBACK_LOCALE, SophieRenderer } from '@sophie/shared'; | 21 | import { FALLBACK_LOCALE, SophieRenderer } from '@sophie/shared'; |
22 | import i18next from 'i18next'; | 22 | import i18next from 'i18next'; |
23 | import { autorun } from 'mobx'; | 23 | import { reaction } from 'mobx'; |
24 | import { addDisposer } from 'mobx-state-tree'; | 24 | import { addDisposer } from 'mobx-state-tree'; |
25 | import { initReactI18next } from 'react-i18next'; | 25 | import { initReactI18next } from 'react-i18next'; |
26 | 26 | ||
@@ -68,17 +68,20 @@ export default function loadRendererLocalization( | |||
68 | } | 68 | } |
69 | 69 | ||
70 | await i18n.init(); | 70 | await i18n.init(); |
71 | const disposeChangeLanguage = autorun(() => { | 71 | |
72 | const { | 72 | const disposeChangeLanguage = reaction( |
73 | shared: { language }, | 73 | () => store.shared.language, |
74 | } = store; | 74 | (languageToSet) => { |
75 | if (i18n.language !== language) { | 75 | if (i18n.language !== languageToSet) { |
76 | log.debug('Setting language', language); | 76 | i18n.changeLanguage(languageToSet).catch((error) => { |
77 | i18n.changeLanguage(language).catch((error) => { | 77 | log.error('Failed to change language', error); |
78 | log.error('Failed to change language', error); | 78 | }); |
79 | }); | 79 | } |
80 | } | 80 | }, |
81 | }); | 81 | { |
82 | fireImmediately: true, | ||
83 | }, | ||
84 | ); | ||
82 | addDisposer(store, disposeChangeLanguage); | 85 | addDisposer(store, disposeChangeLanguage); |
83 | }; | 86 | }; |
84 | 87 | ||