iris: make font families application-named strings

This commit is contained in:
iris committed 2026-09-12 13:09:31 -04:00
1 parent bdc9c914c4
commit 4cbe7baea0
9 files changed
+56 -90

No files matched your search

+8 -6
View File
@@ -813,12 +813,14 @@ widget changed. Winit's user-event proxy and Android's posted callback are
private implementations of that wake; applications do not define platform
event types or manually request redraws.
**Iris ships no fonts.** Applications register their own font bytes on `Ui`
before the first text shape and select them through the same `Family` used by
text widgets. `Family::Icons` is a semantic application-configured role, not a
particular icon set owned by the framework. ai-app owns its Nerd Fonts subset,
its codepoints, its license and the script that rebuilds it; body and monospace
families continue to come from the platform.
**Iris ships no fonts, and font families are application-named strings**
(2026-09-12). Applications register their own font bytes on `Ui` before the
first text shape and select them by the same string used by text widgets. The
public boundaries accept `AsRef<str>`, so an application can use bare strings
or put its own semantic enum in front of them without Iris hardcoding the
roles. ai-app owns the `ai-app-icons` family, its Nerd Fonts subset, its
codepoints, its license and the script that rebuilds it; the CSS generic names
`sans-serif` and `monospace` continue to resolve through the platform.
`cargo-iris` is an installable Cargo subcommand, rather than a script callers
must find inside an Iris checkout. `cargo iris apk` builds the Rust `cdylib`