Skip to main content

Module ui

Module ui 

Source
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 /query prompt with a right-aligned matched/total counter, a divider line, then the ranked results with matched characters highlighted and the selected row barred. Knows nothing about where area is; full-screen is just the identity placement above.