What the user saw: dragging a gutter filled the affected panes with many overlapping bash prompts, some corrupted mid-print (megaproxy@DESKTOP-megaproxy@DESKTOP-SSAQG5 etc). Root cause: every resizePane() call sends SIGWINCH to the shell, which makes bash redraw its prompt. The previous fix coalesced the local xterm fit() into one per rAF, but still fired resizePane on every rAF — 60+ SIGWINCHes per second during a drag, faster than bash can finish one prompt redraw before the next interrupts it. Fix: separate the two concerns. fit() + term.refresh() still run every rAF (the visual must stay smooth). But resizePane() is debounced to fire 150 ms after the LAST rAF — i.e. only when you stop dragging — so bash gets one clean SIGWINCH at the final size and produces a single tidy prompt redraw. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| Notifications.css | ||
| Notifications.tsx | ||
| Palette.css | ||
| Palette.tsx | ||
| XtermPane.tsx | ||