@duckmind/dm-darwin-x64 0.35.2 → 0.35.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -108,6 +108,11 @@ export function stripSynchronizedOutputControls(data: string): string {
|
|
|
108
108
|
return data.split(SYNCHRONIZED_OUTPUT_BEGIN).join("").split(SYNCHRONIZED_OUTPUT_END).join("");
|
|
109
109
|
}
|
|
110
110
|
|
|
111
|
+
export function resetTextRenderingState(): string {
|
|
112
|
+
// Streamed tool output can leave SGR, OSC8, or DEC charset/SI-SO state active before the fixed input frame repaint.
|
|
113
|
+
return "\x1b[0m\x1b]8;;\x07\x0f\x1b%G\x1b(B\x1b)B\x1b*B\x1b+B";
|
|
114
|
+
}
|
|
115
|
+
|
|
111
116
|
export function setScrollRegion(top: number, bottom: number): string {
|
|
112
117
|
return `\x1b[${top};${bottom}r`;
|
|
113
118
|
}
|
|
@@ -147,7 +152,7 @@ export function buildFixedEditorClusterPaint(
|
|
|
147
152
|
const safeRows = Math.max(1, Math.floor(terminalRows));
|
|
148
153
|
const safeWidth = Math.max(1, Math.floor(width));
|
|
149
154
|
const startRow = Math.max(1, safeRows - cluster.lines.length + 1);
|
|
150
|
-
let buffer = resetScrollRegion();
|
|
155
|
+
let buffer = resetScrollRegion() + resetTextRenderingState();
|
|
151
156
|
|
|
152
157
|
for (let index = 0; index < cluster.lines.length; index++) {
|
|
153
158
|
buffer += moveCursor(startRow + index, 1);
|