popup: toggle/edit styles from keyboard

1-9, 0 - toggles Nth displayed style (0 is 10)
a-z:   - toggles first style with a name that starts with the letter
Shift  - opens editor instead of toggling
This commit is contained in:
tophf 2017-11-28 20:37:53 +03:00
parent 39c6d897ed
commit a64dc26dd7

View File

@ -189,6 +189,26 @@ function initPopup(url) {
matchTargets.appendChild(matchTargets.removeChild(matchTargets.firstElementChild)); matchTargets.appendChild(matchTargets.removeChild(matchTargets.firstElementChild));
} }
writeStyle.appendChild(matchWrapper); writeStyle.appendChild(matchWrapper);
// hotkeys
window.addEventListener('keydown', event => {
if (event.ctrlKey || event.altKey || event.metaKey) {
return;
}
const k = event.which;
let entry;
if (k >= 48 && k <= 57) {
entry = installed.children[k === 48 ? 9 : k - 49];
} else if (k >= 65 && k <= 90) {
const letter = new RegExp('^\\x' + k.toString(16), 'i');
entry = [...installed.children].find(entry => letter.test(entry.textContent));
}
if (!entry) {
return;
}
const target = $(event.shiftKey ? '.style-edit-link' : '.checker', entry);
target.dispatchEvent(new MouseEvent('click'));
});
} }