summaryrefslogtreecommitdiffhomepage
path: root/gui/src/main
diff options
context:
space:
mode:
authorAndrej Mihajlov <and@mullvad.net>2019-03-08 16:30:46 +0100
committerAndrej Mihajlov <and@mullvad.net>2019-03-08 16:30:46 +0100
commitc4ddb07adede3d46dd80dbda66aa560c9e6487ef (patch)
tree08b739c937db5469b2fc2fc1061e67621dc9bdca /gui/src/main
parent1245828c33bbb91dfcccc875a532ea046f4f74d1 (diff)
parent43f0fa67de4c7013f59bce9e3d59fb77ddf2f2f7 (diff)
downloadmullvadvpn-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.ts22
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,