pub fn splash_runs<'a>(
chunks: &'a [SplashSpan],
palette: &ChromePalette,
) -> Vec<(&'a str, Color)>Expand description
Pair each start-screen chunk with the colour its ROLE resolves to under
palette — the GPU face’s half of the role→paint mapping, extracted so
it can be tested without a device.
This is the piece of the splash path that can be wrong in a way glyphon would not notice: a mis-mapped role paints the menu keys as body text and renders perfectly. The plumbing either side (buffer sizing, shaping) is upstream’s contract; this is ours.
Borrows from chunks, so the returned slices concatenate to exactly the
screen — the coverage-complete partition set_rich_text requires.
Public so tests/gpu_logic.rs can assert on the REAL mapping rather
than on a reconstruction of it; a test that rebuilt this from
screen_chunks would pass even if the renderer stopped calling it.