mirror of
https://github.com/charmbracelet/crush.git
synced 2026-05-30 18:47:33 +00:00
The chat list now remembers what each item rendered last frame and reuses it when nothing about that item has changed. Once a message turn is fully done, its rendered output is reused verbatim on every subsequent frame for as long as it stays unchanged. Resizing the window, focusing or selecting an item, dragging a selection over it, toggling a thinking block, and any other state change still triggers a fresh render. The visible output is identical to before; the work to produce it is much less. Co-Authored-By: Charm Crush <crush@charm.land>