mirror of
https://github.com/ghostty-org/ghostty.git
synced 2026-08-01 21:29:02 +00:00
Scrollback compression was available only through explicit PageList calls, so normal renderer-backed surfaces never reclaimed cold history. Debounce renderer wakeups with a one-shot timer and run bounded compression steps only when the terminal lock is immediately available. Timer state is isolated in the renderer and becomes idle once PageList reports that the pass is complete. Keep inspector reads representation-preserving by decoding compressed pages into temporary copies. Update the scrollback configuration and benchmark documentation to describe the production behavior and its memory accounting.