Every manifest `app_main!` emitted carried three fonts no theme role uses: `NewCMMath-Regular.otf` for `MathView`, and `Inter.ttf` / `RobotoFlex.ttf` for the opt-in iOS and Android platform styles. That was 3.6 MB in every package, and it only existed because a font an app forgot to declare failed silently: `FontFamily::update_font_definitions` skipped a member whose bytes never arrived, so the text showed as boxes with no log line. * Drop the forced extras. The manifest is now the font set's fallback chain plus whatever the app puts in `font_assets`, which is what makepad's own apps already did for `Inter`. * `font_assets` takes expressions, and `INTER_FONT_ASSET` / `ROBOTO_FLEX_FONT_ASSET` join `MATH_VIEW_FONT_ASSET`, so an app declares a font by name instead of by path. * A font that never loads now logs one `error!` naming the path and the fix. A missing member still degrades gracefully: the family keeps its remaining members. * The apps that use those fonts declare them: the `wm` family binds both platform faces, `clock`, `weather` and `director` draw with Inter and can select any style, `terminal` and the builder use Inter for symbols, `splash` and `aichat` use `MathView`. |
||
|---|---|---|
| .. | ||
| resources | ||
| src | ||
| Cargo.toml | ||