feat(menu): add 'to-help-translate' button

This commit is contained in:
JellyBrick
2023-12-02 08:25:07 +09:00
parent a6c8b887e3
commit 4ab4bb4cb3
2 changed files with 37 additions and 16 deletions

View File

@ -126,7 +126,10 @@
"message": "Language will be changed after restart",
"title": "Language Changed"
},
"label": "Language"
"label": "Language",
"submenu": {
"to-help-translate": "Want to help translate? Click here"
}
},
"resume-on-start": "Resume last song when app starts",
"single-instance-lock": "Single Instance Lock",

View File

@ -8,6 +8,7 @@ import {
dialog,
Menu,
MenuItem,
shell,
} from 'electron';
import prompt from 'custom-electron-prompt';
@ -361,7 +362,20 @@ export const mainMenuTemplate = async (
},
{
label: t('main.menu.options.submenu.language.label') + ' (Language)',
submenu: availableLanguages.map(
submenu: [
{
label: t(
'main.menu.options.submenu.language.submenu.to-help-translate',
),
type: 'normal',
click() {
const url = 'https://hosted.weblate.org/engage/youtube-music/';
shell.openExternal(url);
},
} as Electron.MenuItemConstructorOptions,
].concat(
availableLanguages
.map(
(lang): Electron.MenuItemConstructorOptions => ({
label: `${languageResources[lang].translation.language.name} (${languageResources[lang].translation.language['local-name']})`,
type: 'checkbox',
@ -371,13 +385,17 @@ export const mainMenuTemplate = async (
refreshMenu(win);
setLanguage(lang);
dialog.showMessageBox(win, {
title: t('main.menu.options.submenu.language.dialog.title'),
title: t(
'main.menu.options.submenu.language.dialog.title',
),
message: t(
'main.menu.options.submenu.language.dialog.message',
),
});
},
}),
)
.sort((a, b) => a.label!.localeCompare(b.label!)),
),
},
{ type: 'separator' },