mirror of
https://github.com/th-ch/youtube-music.git
synced 2026-01-11 10:31:47 +00:00
update refreshMenu() function
This commit is contained in:
25
menu.js
25
menu.js
@ -10,7 +10,7 @@ const config = require("./config");
|
|||||||
// true only if in-app-menu was loaded on launch
|
// true only if in-app-menu was loaded on launch
|
||||||
const inAppMenuActive = config.plugins.isEnabled("in-app-menu");
|
const inAppMenuActive = config.plugins.isEnabled("in-app-menu");
|
||||||
|
|
||||||
const pluginEnabledMenu = (win, plugin, label = "", hasSubmenu = false) => ({
|
const pluginEnabledMenu = (plugin, label = "", hasSubmenu = false, refreshMenu = undefined) => ({
|
||||||
label: label || plugin,
|
label: label || plugin,
|
||||||
type: "checkbox",
|
type: "checkbox",
|
||||||
checked: config.plugins.isEnabled(plugin),
|
checked: config.plugins.isEnabled(plugin),
|
||||||
@ -21,15 +21,19 @@ const pluginEnabledMenu = (win, plugin, label = "", hasSubmenu = false) => ({
|
|||||||
config.plugins.disable(plugin);
|
config.plugins.disable(plugin);
|
||||||
}
|
}
|
||||||
if (hasSubmenu) {
|
if (hasSubmenu) {
|
||||||
|
refreshMenu();
|
||||||
|
}
|
||||||
|
},
|
||||||
|
});
|
||||||
|
|
||||||
|
const mainMenuTemplate = (win) => {
|
||||||
|
const refreshMenu = () => {
|
||||||
this.setApplicationMenu(win);
|
this.setApplicationMenu(win);
|
||||||
if (inAppMenuActive) {
|
if (inAppMenuActive) {
|
||||||
win.webContents.send("updateMenu", true);
|
win.webContents.send("updateMenu", true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
return [
|
||||||
});
|
|
||||||
|
|
||||||
const mainMenuTemplate = (win) => [
|
|
||||||
{
|
{
|
||||||
label: "Plugins",
|
label: "Plugins",
|
||||||
submenu: [
|
submenu: [
|
||||||
@ -37,21 +41,19 @@ const mainMenuTemplate = (win) => [
|
|||||||
const pluginPath = path.join(__dirname, "plugins", plugin, "menu.js")
|
const pluginPath = path.join(__dirname, "plugins", plugin, "menu.js")
|
||||||
if (existsSync(pluginPath)) {
|
if (existsSync(pluginPath)) {
|
||||||
if (!config.plugins.isEnabled(plugin)) {
|
if (!config.plugins.isEnabled(plugin)) {
|
||||||
return pluginEnabledMenu(win, plugin, "", true);
|
return pluginEnabledMenu(plugin, "", true, refreshMenu);
|
||||||
}
|
}
|
||||||
const getPluginMenu = require(pluginPath);
|
const getPluginMenu = require(pluginPath);
|
||||||
return {
|
return {
|
||||||
label: plugin,
|
label: plugin,
|
||||||
submenu: [
|
submenu: [
|
||||||
pluginEnabledMenu(win, plugin, "Enabled", true),
|
pluginEnabledMenu(plugin, "Enabled", true, refreshMenu),
|
||||||
...getPluginMenu(win, config.plugins.getOptions(plugin), () =>
|
...getPluginMenu(win, config.plugins.getOptions(plugin), refreshMenu),
|
||||||
module.exports.setApplicationMenu(win)
|
|
||||||
),
|
|
||||||
],
|
],
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
return pluginEnabledMenu(win, plugin);
|
return pluginEnabledMenu(plugin);
|
||||||
}),
|
}),
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
@ -238,6 +240,7 @@ const mainMenuTemplate = (win) => [
|
|||||||
],
|
],
|
||||||
},
|
},
|
||||||
];
|
];
|
||||||
|
}
|
||||||
|
|
||||||
module.exports.mainMenuTemplate = mainMenuTemplate;
|
module.exports.mainMenuTemplate = mainMenuTemplate;
|
||||||
module.exports.setApplicationMenu = (win) => {
|
module.exports.setApplicationMenu = (win) => {
|
||||||
|
|||||||
Reference in New Issue
Block a user