Fix scroll in tmux with max scrollback

I believe this is related to when scrollBottom is not the last row in the viewport

Fixes #434
This commit is contained in:
Daniel Imms
2016-12-31 07:18:50 -08:00
parent 23472e6fb4
commit c3f46e4a6b
+9 -7
View File
@@ -1234,6 +1234,15 @@ Terminal.prototype.showCursor = function() {
Terminal.prototype.scroll = function() {
var row;
// Make room for the new row in lines
if (this.lines.length === this.lines.maxLength) {
this.lines.trimStart(1);
this.ybase--;
if (this.ydisp !== 0) {
this.ydisp--;
}
}
this.ybase++;
// TODO: Why is this done twice?
@@ -1248,13 +1257,6 @@ Terminal.prototype.scroll = function() {
row -= this.rows - 1 - this.scrollBottom;
if (row === this.lines.length) {
// Compensate ybase and ydisp if lines has hit the maximum buffer size
if (this.lines.length === this.lines.maxLength) {
this.ybase--;
if (this.ydisp !== 0) {
this.ydisp--;
}
}
// Optimization: pushing is faster than splicing when they amount to the same behavior
this.lines.push(this.blankLine());
} else {