Major issues fixed: - Rich printed directly to stdout causing visible flicker on every redraw - get_key() toggled raw mode per keypress causing glitches and slowness - No alternate screen buffer — output contaminated terminal scrollback Rewrite approach: - Use alternate screen buffer (ESC[?1049h) for clean enter/exit - Persistent raw mode for entire session instead of per-keypress toggle - Buffer all Rich renderables during render cycle, flush once in refresh() - Render to StringIO then write entire frame in single sys.stdout.write() - Reduced ESC sequence timeout from 50ms to 20ms for snappier response Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
21 KiB
21 KiB