Expand description
Ratatui rendering for the tree and its modal/auxiliary surfaces. This module
turns App, Jump, and keybinding view-model state into buffer cells and
records viewport geometry needed by paging and mouse routing; it owns no
event loop or source data.
Colors stay inside the terminal’s ANSI palette except for the focus
background derived from the terminal’s own colors (Palette::focus_bg). The
tree deliberately avoids horizontal scrolling and large flexible-column
ideals, which would make the widget render a costly off-screen canvas. The
custom vertical scrollbar repaints the widget’s reserved gutter until the
upstream style API can express the desired quiet, dithered bar.
Structs§
- Palette
- The terminal’s default foreground and background, queried at startup.
Functions§
- draw
- Render the current mode into
area. In a modal picker the tree is hidden; otherwise the tree list is drawn and the viewport height recorded for paging. - render_
jump - Render the jump picker into
area: a/queryprompt with a right-alignedmatched/totalcounter, a divider line, then the ranked results with matched characters highlighted and the selected row barred. Knows nothing about whereareais; full-screen is just the identity placement above.