openpencil/crates/op-host-web
Fini 6880c37a3b feat(web): mount the scene template center in the browser host
Closes the last layer of the template centre. The catalogue, templates,
panel and desktop entry all shipped; the browser could not open the
panel at all, so finished work was unreachable there.

Five arms mirror the native ones, each delegating to the shared flow:
paint in the floating-panel pass, press above the Prompt Center in the
overlay ladder, hover, scroll, and Escape. No web-only logic — that fork
is exactly what the shared layer exists to prevent.

Two defects surfaced while wiring it, both invisible to a
`wasm32-unknown-unknown` check:

- The File menu's `NewFromTemplate` arm existed only on native. The web
  match over `FileMenuChoice` was never updated, so "new from template"
  would not have compiled once anyone built with `canvaskit` — the
  feature that carries the real code path. `cargo check --target
  wasm32` passes without touching it, which is why the project requires
  `--features canvaskit` for web work.
- The hover arm initially returned on `owns_point` without calling
  `clear_hover_below_topmost_panel`, leaving hover live in the layers
  underneath. That is the same gate the colour-variable popover was
  missing on 2026-07-29.

Verified with the gate that actually covers this host: 537 tests under
`--features canvaskit` (13 without it), plus the wasm target check.

Claude-Session: https://claude.ai/code/session_01FqKQqNj8exYwopGDpYUU7x
2026-08-02 21:21:13 +08:00
..
assets/canvaskit fix(web): use browser fonts in canvaskit shell 2026-06-19 02:39:34 +08:00
pkg-ck fix(web): expand browser font fallback stack 2026-06-19 07:30:34 +08:00
pkg-webgl refactor(renderer): consolidate web shell on CanvasKit, retire skia path 2026-06-18 09:34:37 +08:00
smoke test(web): add rust web browser smoke 2026-06-20 19:24:59 +08:00
src feat(web): mount the scene template center in the browser host 2026-08-02 21:21:13 +08:00
tests fix(renderer): shape complex scripts instead of painting them in storage order (#194) 2026-08-02 19:18:50 +08:00
.gitignore refactor(rust): rename openpencil-shell-web host to op-host-web 2026-05-16 23:42:49 +08:00
Cargo.toml refactor: dedupe cross-crate code and converge hardcoded literals 2026-07-26 11:24:22 +08:00