From 9aeec1f53e132c50ef86648403b289e482f40301 Mon Sep 17 00:00:00 2001 From: Agriya Dev5 Date: Wed, 3 Mar 2021 16:08:26 +0530 Subject: [PATCH] #77 hotkey plugin related changes --- src/editor/EditorStartup.js | 33 ++++++++++++++++++++++----------- 1 file changed, 22 insertions(+), 11 deletions(-) diff --git a/src/editor/EditorStartup.js b/src/editor/EditorStartup.js index 8160b885..d0542829 100644 --- a/src/editor/EditorStartup.js +++ b/src/editor/EditorStartup.js @@ -285,21 +285,32 @@ class EditorStartup { panning = false; }); - $(document).bind('keydown', 'space', function (evt) { - this.svgCanvas.spaceKey = keypan = true; - evt.preventDefault(); - }.bind(this)).bind('keyup', 'space', function (evt) { - evt.preventDefault(); - this.svgCanvas.spaceKey = keypan = false; - }.bind(this)).bind('keydown', 'shift', function (evt) { - if (this.svgCanvas.getMode() === 'zoom') { + document.addEventListener('keydown', (e) => { + if (e.target.nodeName !== 'BODY') return; + if(e.code.toLowerCase() === 'space'){ + this.svgCanvas.spaceKey = keypan = true; + e.preventDefault(); + } else if((e.key.toLowerCase() === 'shift') && (this.svgCanvas.getMode() === 'zoom')){ this.workarea.css('cursor', zoomOutIcon); + e.preventDefault(); + } else { + return; } - }.bind(this)).bind('keyup', 'shift', function (evt) { - if (this.svgCanvas.getMode() === 'zoom') { + }); + + document.addEventListener('keyup', (e) => { + if (e.target.nodeName !== 'BODY') return; + if(e.code.toLowerCase() === 'space'){ + this.svgCanvas.spaceKey = keypan = false; + e.preventDefault(); + } else if((e.key.toLowerCase() === 'shift') && (this.svgCanvas.getMode() === 'zoom')){ this.workarea.css('cursor', zoomInIcon); + e.preventDefault(); + } else { + return; } - }.bind(this)); + }); + /** * @function module:SVGthis.setPanning