From c41b2ce861c040fa645dddf77148d575ac7f3429 Mon Sep 17 00:00:00 2001 From: JellyBrick Date: Sat, 2 Dec 2023 23:23:13 +0900 Subject: [PATCH] fix: if locale is not present, set to unspecified --- src/index.ts | 7 +++++-- src/menu.ts | 2 +- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/src/index.ts b/src/index.ts index 508890c9..d31fecdb 100644 --- a/src/index.ts +++ b/src/index.ts @@ -556,11 +556,14 @@ app.on('activate', async () => { }); const getDefaultLocale = (locale: string) => - Object.keys(languageResources).includes(locale) ? locale : 'en'; + Object.keys(languageResources).includes(locale) ? locale : null; app.whenReady().then(async () => { if (!config.get('options.language')) { - config.set('options.language', getDefaultLocale(app.getLocale())); + const locale = getDefaultLocale(app.getLocale()); + if (locale) { + config.set('options.language', locale); + } } await loadI18n().then(async () => { diff --git a/src/menu.ts b/src/menu.ts index b1930a9a..f9d94269 100644 --- a/src/menu.ts +++ b/src/menu.ts @@ -379,7 +379,7 @@ export const mainMenuTemplate = async ( (lang): Electron.MenuItemConstructorOptions => ({ label: `${languageResources[lang].translation.language.name} (${languageResources[lang].translation.language['local-name']})`, type: 'checkbox', - checked: config.get('options.language') === lang, + checked: (config.get('options.language') ?? 'en') === lang, click() { config.setMenuOption('options.language', lang); refreshMenu(win);