arc/platforms.md | 4 + arc/sync.md | 3 + arc/ui.md | 3 +- corpus/structural-probe/README.md | 3 + corpus/structural-probe/tag-gallery.one | Bin 0 -> 37224 bytes crates/canvas/Cargo.toml | 1 + crates/canvas/src/editor.rs | 248 +++++- crates/canvas/src/editor/format.rs | 282 ++++++- crates/canvas/src/editor/table.rs | 152 ++++ crates/canvas/src/interaction/mod.rs | 244 +++++- crates/canvas/src/interaction/tests.rs | 364 +++++++- crates/canvas/src/layout.rs | 8 +- crates/canvas/src/math.rs | 2 +- crates/canvas/src/outline.rs | 45 +- crates/canvas/tests/ops_differential.rs | 33 +- crates/draw/Cargo.toml | 8 +- crates/draw/src/draw.glsl | 102 +++ crates/draw/src/edit.rs | 1 + crates/draw/src/lib.rs | 4 +- crates/draw/src/render.rs | 364 ++------ crates/draw/src/render/gl.rs | 469 +++++++++++ crates/draw/src/render/webgpu.rs | 265 ++++++ crates/notebook/README.md | 3 + crates/notebook/src/session.rs | 62 +- crates/notebook/src/worker.rs | 40 +- crates/notebook/tests/session.rs | 84 +- crates/snowbound/Cargo.toml | 9 +- crates/snowbound/src/art.rs | 19 - crates/snowbound/src/commands.rs | 144 +++- crates/snowbound/src/history.rs | 3 - crates/snowbound/src/library.rs | 35 +- crates/snowbound/src/linux.rs | 292 ++++++- crates/snowbound/src/macos.rs | 64 +- crates/snowbound/src/main.rs | 761 +++++++++-------- crates/snowbound/src/manage.rs | 21 +- crates/snowbound/src/menubar.rs | 32 + crates/snowbound/src/rename.rs | 1 - crates/snowbound/src/screenshot.rs | 4 +- crates/snowbound/src/search.rs | 6 +- crates/snowbound/src/sidebar.rs | 7 +- crates/snowbound/src/surface.rs | 221 +++++ crates/snowbound/src/surface_gl.rs | 114 +++ crates/snowbound/src/sync.rs | 224 +++++ crates/ui/Cargo.toml | 3 +- crates/ui/src/layout.rs | 17 +- crates/ui/src/lib.rs | 188 ++++- crates/ui/src/popup.rs | 350 ++++++-- crates/ui/src/shell.rs | 47 +- crates/ui/src/tests.rs | 184 +++- crates/ui/src/text.rs | 11 +- crates/ui/src/theme.rs | 88 ++ crates/ui/src/widgets.rs | 1 + platform/snow-leopard/Cargo.lock | 1452 ++++++++++++++++++++++++++++++-- platform/snow-leopard/Cargo.toml | 2 +- platform/snow-leopard/console/input.c | 48 ++ platform/snow-leopard/console/screen.c | 27 + platform/snow-leopard/console/selectors.c | 45 + platform/snow-leopard/gl21/Cargo.toml | 6 - platform/snow-leopard/gl21/src/draw.glsl | 102 --- platform/snow-leopard/gl21/src/lib.rs | 118 --- platform/snow-leopard/gl21/src/painter.rs | 272 ------ platform/snow-leopard/link.sh | 4 +- platform/snow-leopard/probe/Cargo.toml | 15 +- platform/snow-leopard/probe/src/context.rs | 15 + platform/snow-leopard/probe/src/main.rs | 2 +- platform/snow-leopard/probe/src/render.rs | 99 +-- platform/snow-leopard/probe/src/scene.rs | 80 +- platform/snow-leopard/probe/src/text.rs | 20 + platform/snow-leopard/probe/src/window.rs | 133 --- platform/snow-leopard/reference/Cargo.toml | 1 + platform/snow-leopard/reference/src/main.rs | 51 +- platform/snow-leopard/remote.sh | 73 +- platform/snow-leopard/rt/appkit.c | 146 ++++ platform/snow-leopard/rt/objc.c | 11 + tools/canvas/build_macos.py | 43 +- 75 files changed, 6613 insertions(+), 1792 deletions(-)