From b3608272a00b52efdae53763b6d7ef7783baa81c Mon Sep 17 00:00:00 2001 From: cpsdqs Date: Sun, 10 Sep 2017 00:04:17 +0200 Subject: [PATCH] Fix #119 and space causing the screen to scroll (again) --- jssrc/term_input.js | 2 +- jssrc/term_screen.js | 9 ++++++--- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/jssrc/term_input.js b/jssrc/term_input.js index 6df0535..12c06b5 100644 --- a/jssrc/term_input.js +++ b/jssrc/term_input.js @@ -143,7 +143,7 @@ var Input = (function() { if (str.length>0 && str.charCodeAt(0) >= 32) { // console.log("Typed ", str); // prevent space from scrolling - if (e.which === 32) e.preventDefault(); + if (evt.which === 32) evt.preventDefault(); sendStrMsg(str); } }); diff --git a/jssrc/term_screen.js b/jssrc/term_screen.js index 2bb56e1..c6bb975 100644 --- a/jssrc/term_screen.js +++ b/jssrc/term_screen.js @@ -156,7 +156,7 @@ class TermScreen { }; this.canvas.addEventListener('mousedown', e => { - if (this.selection.selectable || e.altKey) { + if ((this.selection.selectable || e.altKey) && e.button === 0) { selectStart(e.offsetX, e.offsetY) } else { Input.onMouseDown(...this.screenToGrid(e.offsetX, e.offsetY), @@ -272,8 +272,11 @@ class TermScreen { } }); this.canvas.addEventListener('contextmenu', e => { - // prevent mouse keys getting stuck - e.preventDefault(); + if (this.mouseMode.clicks) { + // prevent mouse keys getting stuck + e.preventDefault(); + } + selectEnd(e.offsetX, e.offsetY); }) // bind ctrl+shift+c to copy