From 49698ea6693462524a88b07b87e82b06e560dda2 Mon Sep 17 00:00:00 2001 From: Araxeus Date: Sat, 17 Apr 2021 05:08:07 +0300 Subject: [PATCH] fix changing settings when plugin is disabled --- plugins/precise-volume/back.js | 12 ++++++++++++ plugins/precise-volume/menu.js | 11 ++++++++++- 2 files changed, 22 insertions(+), 1 deletion(-) create mode 100644 plugins/precise-volume/back.js diff --git a/plugins/precise-volume/back.js b/plugins/precise-volume/back.js new file mode 100644 index 00000000..7582f4ce --- /dev/null +++ b/plugins/precise-volume/back.js @@ -0,0 +1,12 @@ +/* +this is used to determine if plugin is actually active +(not if its only enabled in options) +*/ +let enabled = false; +module.exports = (win,options) => { + enabled = true; +}; + +module.exports.enabled = () => { + return enabled; +}; \ No newline at end of file diff --git a/plugins/precise-volume/menu.js b/plugins/precise-volume/menu.js index 9b870efd..a906addf 100644 --- a/plugins/precise-volume/menu.js +++ b/plugins/precise-volume/menu.js @@ -1,10 +1,19 @@ +const { enabled } = require("./back") +const { setOptions } = require("../../config/plugins"); + module.exports = (win, options) => [ { label: "Arrowkeys controls", type: "checkbox", checked: !!options.arrowsShortcut, click: (item) => { - win.webContents.send("setArrowsShortcut", item.checked); + //dynamically change setting if plugin enabled + if (enabled()) { + win.webContents.send("setArrowsShortcut", item.checked); + } else { //fallback to usual method if disabled + options.arrowsShortcut = item.checked; + setOptions("precise-volume", options); + } } } ];