@industry-theme/xterm-terminal-panel 0.4.4 → 0.4.5
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.
package/dist/index.js
CHANGED
|
@@ -339,6 +339,9 @@ var ThemedTerminal = forwardRef(({
|
|
|
339
339
|
} catch (e) {
|
|
340
340
|
console.warn("[ThemedTerminal] WebGL not available, using canvas renderer:", e);
|
|
341
341
|
}
|
|
342
|
+
let lastBaseY = 0;
|
|
343
|
+
let isRewriteInProgress = false;
|
|
344
|
+
let rewriteStabilizeTimeout = null;
|
|
342
345
|
const scrollDisposable = term.onScroll(() => {
|
|
343
346
|
const scrollY = term.buffer.active.viewportY;
|
|
344
347
|
const scrollback2 = term.buffer.active.baseY;
|
|
@@ -351,9 +354,33 @@ var ThemedTerminal = forwardRef(({
|
|
|
351
354
|
rows: term.rows,
|
|
352
355
|
isAtTop,
|
|
353
356
|
isAtBottom,
|
|
354
|
-
isScrollLocked: isScrollLockedRef.current
|
|
357
|
+
isScrollLocked: isScrollLockedRef.current,
|
|
358
|
+
isRewriteInProgress
|
|
355
359
|
});
|
|
356
360
|
}
|
|
361
|
+
if (lastBaseY > 50 && scrollback2 < lastBaseY * 0.1) {
|
|
362
|
+
if (DEBUG_RESIZE) {
|
|
363
|
+
console.log("[ThemedTerminal] Content rewrite STARTED:", {
|
|
364
|
+
previousBaseY: lastBaseY,
|
|
365
|
+
currentBaseY: scrollback2
|
|
366
|
+
});
|
|
367
|
+
}
|
|
368
|
+
isRewriteInProgress = true;
|
|
369
|
+
}
|
|
370
|
+
if (isRewriteInProgress) {
|
|
371
|
+
if (rewriteStabilizeTimeout) {
|
|
372
|
+
clearTimeout(rewriteStabilizeTimeout);
|
|
373
|
+
}
|
|
374
|
+
term.scrollToBottom();
|
|
375
|
+
rewriteStabilizeTimeout = setTimeout(() => {
|
|
376
|
+
if (DEBUG_RESIZE) {
|
|
377
|
+
console.log("[ThemedTerminal] Content rewrite COMPLETE, stabilized at baseY:", scrollback2);
|
|
378
|
+
}
|
|
379
|
+
isRewriteInProgress = false;
|
|
380
|
+
term.scrollToBottom();
|
|
381
|
+
}, 150);
|
|
382
|
+
}
|
|
383
|
+
lastBaseY = scrollback2;
|
|
357
384
|
if (onScrollPositionChange) {
|
|
358
385
|
onScrollPositionChange({
|
|
359
386
|
isAtTop,
|
|
@@ -452,6 +479,9 @@ var ThemedTerminal = forwardRef(({
|
|
|
452
479
|
if (scrollDebounceRef.current) {
|
|
453
480
|
clearTimeout(scrollDebounceRef.current);
|
|
454
481
|
}
|
|
482
|
+
if (rewriteStabilizeTimeout) {
|
|
483
|
+
clearTimeout(rewriteStabilizeTimeout);
|
|
484
|
+
}
|
|
455
485
|
if (webglAddonRef.current) {
|
|
456
486
|
webglAddonRef.current.dispose();
|
|
457
487
|
webglAddonRef.current = null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ThemedTerminal.d.ts","sourceRoot":"","sources":["../../../src/components/ThemedTerminal.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,+BAA+B,CAAC;AAkC3D,OAAO,4BAA4B,CAAC;AAEpC,OAAO,KAAK,EAEV,mBAAmB,EACnB,iBAAiB,EAClB,MAAM,yBAAyB,CAAC;AAGjC,OAAO,8BAA8B,CAAC;AAEtC,MAAM,WAAW,4BAA6B,SAAQ,mBAAmB;IACvE,KAAK,EAAE,KAAK,CAAC;CACd;AAsBD,eAAO,MAAM,cAAc,
|
|
1
|
+
{"version":3,"file":"ThemedTerminal.d.ts","sourceRoot":"","sources":["../../../src/components/ThemedTerminal.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,+BAA+B,CAAC;AAkC3D,OAAO,4BAA4B,CAAC;AAEpC,OAAO,KAAK,EAEV,mBAAmB,EACnB,iBAAiB,EAClB,MAAM,yBAAyB,CAAC;AAGjC,OAAO,8BAA8B,CAAC;AAEtC,MAAM,WAAW,4BAA6B,SAAQ,mBAAmB;IACvE,KAAK,EAAE,KAAK,CAAC;CACd;AAsBD,eAAO,MAAM,cAAc,4HAq9B1B,CAAC"}
|
package/package.json
CHANGED