enable changing shortcut setting without restart

This commit is contained in:
Araxeus
2021-04-17 04:38:23 +03:00
parent 94e152bb57
commit 834202411d

View File

@ -46,23 +46,39 @@ function setPlaybarOnwheel(options) {
function setupArrowShortcuts(options) {
//change options from renderer to keep sync
ipcRenderer.on("setArrowsShortcut", (event, value) => {
options.arrowsShortcut = value;
ipcRenderer.on("setArrowsShortcut", (event, isEnabled) => {
options.arrowsShortcut = isEnabled;
setOptions("precise-volume", options);
//can setting without restarting app
if (isEnabled) {
addListener();
} else {
removeListener();
}
});
//register shortcuts if enabled
if (options.arrowsShortcut) {
window.addEventListener('keydown', (event) => {
switch (event.code) {
case `ArrowUp`:
changeVolume(true, options);
break;
case `ArrowDown`:
changeVolume(false, options);
break;
}
}, true);
addListener();
}
function addListener() {
window.addEventListener('keydown', callback);
}
function removeListener() {
window.removeEventListener("keydown", callback);
}
function callback(event) {
switch (event.code) {
case `ArrowUp`:
changeVolume(true, options);
break;
case `ArrowDown`:
changeVolume(false, options);
break;
}
}
}