Fix terminal glitch on error.

This commit is contained in:
Brad Nelson
2022-08-07 22:21:13 -07:00
parent 4bd53a96f2
commit 5eb6dff039

View File

@ -64,10 +64,10 @@ if (!globalObj.write) {
context.ctx = context.canvas.getContext('2d'); context.ctx = context.canvas.getContext('2d');
context.AddLine = function() { context.AddLine = function() {
if (context.outbuffer.length > 0) { if (context.last_line) {
context.Update(true); context.Update(true);
context.outbuffer = [];
} }
context.outbuffer = [];
var line = document.createElement('pre'); var line = document.createElement('pre');
line.style.width = '100%'; line.style.width = '100%';
line.style.whiteSpace = 'pre-wrap'; line.style.whiteSpace = 'pre-wrap';
@ -91,7 +91,6 @@ if (!globalObj.write) {
context.outbuffer = []; context.outbuffer = [];
context.AddLine(); context.AddLine();
}; };
context.ResetTerminal();
context.keyboard = document.createElement('div'); context.keyboard = document.createElement('div');
context.KEY_HEIGHT = 45; context.KEY_HEIGHT = 45;
@ -285,6 +284,7 @@ if (!globalObj.write) {
context.last_line.innerText = new TextDecoder('utf-8').decode( context.last_line.innerText = new TextDecoder('utf-8').decode(
new Uint8Array(context.outbuffer)) + (newline ? '' : cursor); new Uint8Array(context.outbuffer)) + (newline ? '' : cursor);
}; };
context.ResetTerminal();
window.addEventListener('paste', function(e) { window.addEventListener('paste', function(e) {
context.Inject(e.clipboardData.getData('text')); context.Inject(e.clipboardData.getData('text'));
}); });