diff options
| author | Andrej Mihajlov <and@mullvad.net> | 2019-03-08 16:30:46 +0100 |
|---|---|---|
| committer | Andrej Mihajlov <and@mullvad.net> | 2019-03-08 16:30:46 +0100 |
| commit | c4ddb07adede3d46dd80dbda66aa560c9e6487ef (patch) | |
| tree | 08b739c937db5469b2fc2fc1061e67621dc9bdca /gui/src/main | |
| parent | 1245828c33bbb91dfcccc875a532ea046f4f74d1 (diff) | |
| parent | 43f0fa67de4c7013f59bce9e3d59fb77ddf2f2f7 (diff) | |
| download | mullvadvpn-c4ddb07adede3d46dd80dbda66aa560c9e6487ef.tar.xz mullvadvpn-c4ddb07adede3d46dd80dbda66aa560c9e6487ef.zip | |
Merge branch 'add-ui-language-env-switch'
Diffstat (limited to 'gui/src/main')
| -rw-r--r-- | gui/src/main/index.ts | 22 |
1 files changed, 21 insertions, 1 deletions
diff --git a/gui/src/main/index.ts b/gui/src/main/index.ts index 87bd2d8165..0fc529e30a 100644 --- a/gui/src/main/index.ts +++ b/gui/src/main/index.ts @@ -112,6 +112,9 @@ class ApplicationMain { }; private latestVersionInterval?: NodeJS.Timeout; + // The UI locale which is set once from onReady handler + private locale = 'en'; + public run() { // Since electron's GPU blacklists are broken, GPU acceleration won't work on older distros if (process.platform === 'linux') { @@ -263,8 +266,24 @@ class ApplicationMain { } } + private getLocaleWithOverride(): string { + const localeOverride = process.env.MULLVAD_LOCALE; + if (localeOverride) { + const trimmedLocaleOverride = localeOverride.trim(); + if (trimmedLocaleOverride.length > 0) { + return trimmedLocaleOverride; + } + } + + return app.getLocale(); + } + private onReady = async () => { - loadTranslations(app.getLocale()); + this.locale = this.getLocaleWithOverride(); + + log.info(`Detected locale: ${this.locale}`); + + loadTranslations(this.locale); this.daemonRpc.addConnectionObserver( new ConnectionObserver(this.onDaemonConnected, this.onDaemonDisconnected), @@ -815,6 +834,7 @@ class ApplicationMain { private registerIpcListeners() { IpcMainEventChannel.state.handleGet(() => ({ + locale: this.locale, isConnected: this.connectedToDaemon, autoStart: getOpenAtLogin(), accountHistory: this.accountHistory, |
