Skip to content

Instantly share code, notes, and snippets.

@mooz
Created October 18, 2010 10:29
Show Gist options
  • Save mooz/632017 to your computer and use it in GitHub Desktop.
Save mooz/632017 to your computer and use it in GitHub Desktop.
Set mark with Ctrl+Space key on Mac
(function () {
const KeyCodes = {
Space : 32,
Ctrl : 17
};
let ctrlOn = true;
function keyDownHandler(ev) {
switch (ev.keyCode) {
case KeyCodes.Ctrl:
ctrlOn = true;
break;
case KeyCodes.Space:
if (ctrlOn) {
let elem = ev.originalTarget;
command.setMark(ev);
function cancelContextMenu(event) {
event.preventDefault();
elem.removeEventListener("contextmenu", cancelContextMenu, true);
}
elem.addEventListener("contextmenu", cancelContextMenu, true);
}
break;
}
}
function keyUpHandler(ev) {
if (ev.keyCode === KeyCodes.Ctrl)
ctrlOn = false;
}
function destructor() {
window.removeEventListener("keydown", keyDownHandler, true);
window.removeEventListener("keyup", keyUpHandler, true);
}
window.addEventListener("keydown", keyDownHandler, true);
window.addEventListener("keyup", keyUpHandler, true);
})();
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment