From d0b4d9575d4f0d808a7c00d9ff90846b5721ee3f Mon Sep 17 00:00:00 2001 From: clover caruso Date: Sat, 3 Oct 2026 23:30:49 -0700 Subject: [PATCH] fix: keep browser accessibility clicks on their target Stop mirrored DOM clicks from also activating ancestor controls, which dismissed menus before their selected command ran. Refs #80 Assisted-by: gpt-6.1-sol --- crates/snowbound/web/glue.js | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/crates/snowbound/web/glue.js b/crates/snowbound/web/glue.js index f2fcaed42091a5257cb9317dddc4d63fce3af68d..0854ebe52f51cd717cdd0879c6db9696d7e488bb 100644 --- a/crates/snowbound/web/glue.js +++ b/crates/snowbound/web/glue.js @@ -551,7 +551,10 @@ export function mirrorTree({ tree, focus, root, nodes }) { if (!held.nodes.has(id)) { const made = document.createElement("div"); made.id = `a11y-${tree}-${id}`; - made.onclick = () => wasm.access(tree, id, 0); + made.onclick = (event) => { + event.stopPropagation(); + wasm.access(tree, id, 0); + }; held.nodes.set(id, made); } return held.nodes.get(id); -- 2.54.0