kithara ui draw - zvuk/kithara GitHub Wiki
kithara-ui-draw
Contract reviewed from PR #445, source revision e07c17b42. This records that branch contract, not merged release status or new runtime validation. API and usage ยท All crates.
Ownership
This crate owns the toolkit-neutral picture: points and affine transforms, and a
draw list of fills, strokes, glyph runs, and images that any backend replays.
It owns the list's pooled buffers and their byte budget, the capabilities a
backend declares, where ink lands after a transform, and reading an SVG into an
outline. Glyph runs come from kithara-ui-shaping; iced
conversions sit behind the iced feature.
Boundaries
- The rasterisers themselves live in kithara-ui
backends/, because each one is tied to a host's toolkit and version pins. DrawBuffersis owned by whoever holds it across frames. In kithara-ui that is the host, throughUiConfig; see that page for why a per-compile pool is wrong.