From 9bcea0aecaaa5914aa8306b37fd1fe178db951e1 Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Mon, 24 Feb 2020 17:11:08 +0000 Subject: [PATCH 1/2] Notify electron of language changes Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --- src/BasePlatform.js | 2 ++ src/languageHandler.js | 6 ++++++ 2 files changed, 8 insertions(+) diff --git a/src/BasePlatform.js b/src/BasePlatform.js index 14e34a1f40..295f99f6b4 100644 --- a/src/BasePlatform.js +++ b/src/BasePlatform.js @@ -162,4 +162,6 @@ export default class BasePlatform { getEventIndexingManager(): BaseEventIndexManager | null { return null; } + + async setLanguage(preferredLangs: string[]): Promise {} } diff --git a/src/languageHandler.js b/src/languageHandler.js index ddb7e2718c..79a172015a 100644 --- a/src/languageHandler.js +++ b/src/languageHandler.js @@ -21,6 +21,7 @@ import request from 'browser-request'; import counterpart from 'counterpart'; import React from 'react'; import SettingsStore, {SettingLevel} from "./settings/SettingsStore"; +import PlatformPeg from "./PlatformPeg"; // $webapp is a webpack resolve alias pointing to the output directory, see webpack config import webpackLangJsonUrl from "$webapp/i18n/languages.json"; @@ -285,6 +286,11 @@ export function setLanguage(preferredLangs) { preferredLangs = [preferredLangs]; } + const plaf = PlatformPeg.get(); + if (plaf) { + plaf.setLanguage(preferredLangs); + } + let langToUse; let availLangs; return getLangsJson().then((result) => { From e63370799ee8f8defdf343d2e8a220b43b6968cf Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Tue, 25 Feb 2020 10:57:40 +0000 Subject: [PATCH 2/2] make BasePlatform::setLanguage sync, handle promises internally Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --- src/BasePlatform.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/BasePlatform.js b/src/BasePlatform.js index 295f99f6b4..a935f4a767 100644 --- a/src/BasePlatform.js +++ b/src/BasePlatform.js @@ -163,5 +163,5 @@ export default class BasePlatform { return null; } - async setLanguage(preferredLangs: string[]): Promise {} + setLanguage(preferredLangs: string[]) {} }