Content
Streaming texts
Append bounded output with automatic tail-following and an unseen-chunk count.
The site build compiles the dedicated Ada component example, constructs Streaming texts through its public API, and exports that exact styled surface. Read the capture source.
When to use it
Use streaming text for logs, command output, or AI response text that arrives in chunks.
State and ownership
The Flyology_TUI.Components.Streaming_Texts package defines this component.
Fixed code-point, line, and viewport-cell capacities bound retained output. Append can reject or trim complete old lines and complete grapheme clusters. An unseen chunk is an accepted nonempty append received while the viewport is not following the tail.
- The application model owner applies updates during serial event dispatch.
- Appearance and skin values are borrowed only while the component renders.
Input and updates
Keyboard and wheel input scroll. The caller appends chunks and explicitly finishes, fails, or cancels the stream.
Integration sequence
- Create the bounded model and populate it with caller-owned data.
- Route the current keyboard or local mouse event through the component handler.
- Apply the typed result, then render from the updated model with the current appearance.
See the linked package reference for its exact declarations and contracts.
Responsive and accessible behavior
- Use dimensions and regions from the current layout or presentation value.
- When a component owns mouse capture, route its matching release even when the pointer leaves the original bounds.
- Retain a glyph, label, border, or text-attribute cue when the terminal reduces color.