aboutsummaryrefslogtreecommitdiffstats
path: root/packages/renderer/src/i18n/loadRendererLoalization.ts
diff options
context:
space:
mode:
Diffstat (limited to 'packages/renderer/src/i18n/loadRendererLoalization.ts')
-rw-r--r--packages/renderer/src/i18n/loadRendererLoalization.ts27
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
21import { FALLBACK_LOCALE, SophieRenderer } from '@sophie/shared'; 21import { FALLBACK_LOCALE, SophieRenderer } from '@sophie/shared';
22import i18next from 'i18next'; 22import i18next from 'i18next';
23import { autorun } from 'mobx'; 23import { reaction } from 'mobx';
24import { addDisposer } from 'mobx-state-tree'; 24import { addDisposer } from 'mobx-state-tree';
25import { initReactI18next } from 'react-i18next'; 25import { 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