fix(web): render UI icons as SVG instead of font glyphs
UI chrome (dropdown carets, undo/redo, checkmarks, close/menu/osnap, layer/file-menu icons) and ribbon tool icons were drawn as Unicode glyphs. Desktop fills missing glyphs via system-font fallback, but the web build bundles only Fira Sans with no fallback, so they rendered as empty tofu boxes (issue #116). Add a shared src/ui/icons.rs (SVG-backed, tintable) plus bundled assets, and switch every glyph site and IconKind::Glyph tool def to SVG. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
parent
4954551808
commit
864dd6cef7
81 changed files with 782 additions and 372 deletions
|
|
@ -14,13 +14,13 @@ pub fn paper_space_tools() -> Vec<ToolDef> {
|
|||
ToolDef {
|
||||
id: "PAGESETUP",
|
||||
label: "Page Setup",
|
||||
icon: IconKind::Glyph("📋"),
|
||||
icon: IconKind::Svg(include_bytes!("../../../assets/icons/pagesetup.svg")),
|
||||
event: ModuleEvent::Command("PAGESETUP".to_string()),
|
||||
},
|
||||
ToolDef {
|
||||
id: "PLOT",
|
||||
label: "Export PDF",
|
||||
icon: IconKind::Glyph("🖨"),
|
||||
icon: IconKind::Svg(include_bytes!("../../../assets/icons/plot.svg")),
|
||||
event: ModuleEvent::Command("PLOT".to_string()),
|
||||
},
|
||||
]
|
||||
|
|
@ -48,14 +48,14 @@ impl CadModule for LayoutModule {
|
|||
ToolDef {
|
||||
id: "PAGESETUP",
|
||||
label: "Page Setup",
|
||||
icon: IconKind::Glyph("📋"),
|
||||
icon: IconKind::Svg(include_bytes!("../../../assets/icons/pagesetup.svg")),
|
||||
event: ModuleEvent::Command("PAGESETUP".to_string()),
|
||||
}
|
||||
.into(),
|
||||
ToolDef {
|
||||
id: "PLOT",
|
||||
label: "Export PDF",
|
||||
icon: IconKind::Glyph("🖨"),
|
||||
icon: IconKind::Svg(include_bytes!("../../../assets/icons/plot.svg")),
|
||||
event: ModuleEvent::Command("PLOT".to_string()),
|
||||
}
|
||||
.into(),
|
||||
|
|
|
|||
Loading…
Reference in a new issue