]> git.proxmox.com Git - mirror_xterm.js.git/commitdiff
Don't refresh terminal when scrollDisp doesn't scroll
authorDaniel Imms <daimms@microsoft.com>
Fri, 7 Jul 2017 04:16:20 +0000 (21:16 -0700)
committerDaniel Imms <daimms@microsoft.com>
Fri, 7 Jul 2017 04:16:20 +0000 (21:16 -0700)
Fixes #765

src/xterm.js

index dc3b940b849d6e6cc5eedcf67a8534a4e26b8422..ab9c53208c6ba25fc6385b1a8fe48f45c1255306 100644 (file)
@@ -1237,12 +1237,12 @@ Terminal.prototype.scrollDisp = function(disp, suppressScrollEvent) {
     this.userScrolling = false;
   }
 
-  this.ydisp += disp;
+  const oldYdisp = this.ydisp;
+  this.ydisp = Math.max(Math.min(this.ydisp + disp, this.ybase), 0);
 
-  if (this.ydisp > this.ybase) {
-    this.ydisp = this.ybase;
-  } else if (this.ydisp < 0) {
-    this.ydisp = 0;
+  // No change occurred, don't trigger scroll/refresh
+  if (oldYdisp === this.ydisp) {
+    return;
   }
 
   if (!suppressScrollEvent) {