Skip to content

Commit fd97576

Browse files
committed
Option to restart the app on config changes
1 parent 6ab0105 commit fd97576

File tree

4 files changed

+19
-4
lines changed

4 files changed

+19
-4
lines changed

config/defaults.js

+1
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ const defaultConfig = {
1111
hideMenu: false,
1212
startAtLogin: false,
1313
disableHardwareAcceleration: false,
14+
restartOnConfigChanges: false,
1415
},
1516
plugins: {
1617
// Enabled plugins

config/index.js

+4-1
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,9 @@ module.exports = {
1313
get,
1414
set,
1515
edit: () => store.openInEditor(),
16-
watch: (cb) => store.onDidAnyChange(cb),
16+
watch: (cb) => {
17+
store.onDidChange("options", cb);
18+
store.onDidChange("plugins", cb);
19+
},
1720
plugins,
1821
};

index.js

+6-3
Original file line numberDiff line numberDiff line change
@@ -189,9 +189,12 @@ app.on("activate", () => {
189189
app.on("ready", () => {
190190
mainWindow = createMainWindow();
191191
setApplicationMenu(mainWindow);
192-
config.watch(() => {
193-
setApplicationMenu(mainWindow);
194-
});
192+
if (config.get("options.restartOnConfigChanges")) {
193+
config.watch(() => {
194+
app.relaunch();
195+
app.exit();
196+
});
197+
}
195198
setUpTray(app, mainWindow);
196199

197200
// Autostart at login

menu.js

+8
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,14 @@ const mainMenuTemplate = (win) => [
5050
config.set("options.disableHardwareAcceleration", item.checked);
5151
},
5252
},
53+
{
54+
label: "Restart on config changes",
55+
type: "checkbox",
56+
checked: config.get("options.restartOnConfigChanges"),
57+
click: (item) => {
58+
config.set("options.restartOnConfigChanges", item.checked);
59+
},
60+
},
5361
...(is.windows() || is.linux()
5462
? [
5563
{

0 commit comments

Comments
 (0)