trivial bug fixes
This commit is contained in:
parent
b744837ea6
commit
968f4ab467
2 changed files with 10 additions and 2 deletions
|
@ -113,7 +113,9 @@ export abstract class Widget {
|
||||||
export function redrawWidgetsSoon() {
|
export function redrawWidgetsSoon() {
|
||||||
if (widgetLineCount) {
|
if (widgetLineCount) {
|
||||||
writeToStderr(
|
writeToStderr(
|
||||||
ansi.eraseLine + (ansi.cursorUp(1) + ansi.eraseLine).repeat(widgetLineCount) + '\r'
|
'\u001B[?2026h' +
|
||||||
|
ansi.eraseLine + (ansi.cursorUp(1) + ansi.eraseLine).repeat(widgetLineCount) + '\r',
|
||||||
|
true,
|
||||||
);
|
);
|
||||||
widgetLineCount = 0;
|
widgetLineCount = 0;
|
||||||
redrawingThisTick = true;
|
redrawingThisTick = true;
|
||||||
|
|
|
@ -40,15 +40,21 @@ export function stringify(...data: any[]) {
|
||||||
}
|
}
|
||||||
|
|
||||||
let buffer = '';
|
let buffer = '';
|
||||||
|
let bufferNeedsUnfreeze = false;
|
||||||
let exiting = false;
|
let exiting = false;
|
||||||
|
|
||||||
export function writeToStderr(data: string) {
|
export function writeToStderr(data: string, needsUnfreeze = false) {
|
||||||
buffer += data;
|
buffer += data;
|
||||||
if (exiting) flushStderr();
|
if (exiting) flushStderr();
|
||||||
|
if (needsUnfreeze) bufferNeedsUnfreeze = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
export function flushStderr() {
|
export function flushStderr() {
|
||||||
if (buffer) {
|
if (buffer) {
|
||||||
|
if (bufferNeedsUnfreeze) {
|
||||||
|
buffer += '\u001B[?2026l';
|
||||||
|
bufferNeedsUnfreeze = false;
|
||||||
|
}
|
||||||
writeSync(2, buffer);
|
writeSync(2, buffer);
|
||||||
buffer = '';
|
buffer = '';
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue