tuika 0.11.1
Released 2026-08-25. crates.io · docs.rs · GitHub release
tuika only. The companion crates carry a caret requirement on tuika 0.11, so
tuika-charts 0.1.2, tuika-codeformatters 0.5.0, tuika-html 0.1.4, and
tuika-mermaid 0.3.2 pick this up without a republish.
Highlights
Drag selection stays in the panel it started in — a left drag that begins
inside a bordered Boxed now selects only within that panel: positions clamp to
its inner rect, a multi-row selection wraps at the panel’s edges instead of the
screen’s, and the copied text never picks up the pane beside it. A drag that
starts outside every panel still spans the screen as before.

- Robustness: a
SelectionRangethat outlived the geometry it was made in can no longer index the buffer out of bounds.
Changed
- Runner drag selection is per panel. A left drag that starts inside a
bordered
Boxedselects only within that panel: positions clamp to its inner rect, a multi-row selection wraps at the panel’s edges instead of the screen’s, and the copied text never picks up the pane beside it. A drag that starts outside every panel still spans the screen as before. - Examples render in a real terminal by default rather than printing a frame.
Fixed
- A
SelectionRangethat reaches past theareahanded tomouse::paint_selection,mouse::selected_text, orSelectionRange::containsnow stops at that area’s rows instead of indexing the buffer out of bounds. - The routing guide is published on the website again.
Added
mouse::SelectionState::confine/region— restrict a gesture to a rect and read it back, for hosts driving the selection primitives from their own loop.app_shellandworkbench_demoexamples, with recordings.
What’s Changed
- fix(release): ignore dev-dependencies when ordering the publish
- docs(demos): add interactive AppShell recording
- feat(examples): add AppShell application
- fix(site): publish routing guide
- docs(demos): restore Workbench palette (#123)
- docs(readme): track current demo assets
- docs(demos): adopt Solarized Dark capture theme
- feat(examples): add native workbench showcase
- feat(examples): render in terminals by default
- feat(mouse): confine drag selection to the panel it starts in (#118)