Don't clear fg char if it's null or ' '

This commit is contained in:
Daniel Imms
2017-08-31 23:13:09 -07:00
parent 510940389c
commit 42e5b3473d
2 changed files with 6 additions and 4 deletions
+1 -1
View File
@@ -2046,7 +2046,7 @@ export class Terminal extends EventEmitter implements ITerminal, IInputHandlingT
public blankLine(cur?: boolean, isWrapped?: boolean, cols?: number): LineData {
const attr = cur ? this.eraseAttr() : this.defAttr;
const ch: CharData = [attr, ' ', 1]; // width defaults to 1 halfwidth character
const ch: CharData = [attr, ' ', 1, 32 /* ' '.charCodeAt(0) */]; // width defaults to 1 halfwidth character
const line: LineData = [];
// TODO: It is not ideal that this is a property on an array, a buffer line
+5 -3
View File
@@ -50,10 +50,12 @@ export class ForegroundRenderLayer extends BaseRenderLayer implements IDataRende
this._state.cache[x][y] = charData;
continue;
}
this._state.cache[x][y] = charData;
// Clear the old character
this.clearCells(x, y, 1, 1);
// Clear the old character if present
if (state && state[CHAR_DATA_CODE_INDEX] !== 32 /*' '*/) {
this.clearCells(x, y, 1, 1);
}
this._state.cache[x][y] = charData;
// Skip rendering if the character is invisible
if (!code || code === 32 /*' '*/) {