authorgravatar for git@paperclover.netclover caruso <git@paperclover.net> 2026-10-03 23:30:49-07:00
committergravatar for git@paperclover.netclover caruso <git@paperclover.net> 2026-10-03 23:30:50-07:00
logd0b4d9575d4f0d808a7c00d9ff90846b5721ee3f
tree7b4b939b5c92247d396faac1394233c161de7b60
parent229f12f5ff836ffa36d21023589fe3955df3f21d
signature Signed by SSH key SHA256:52mNGHRsVFBDED9IAX5pe+LRWUefqTbxEReunq21QvU

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

1 files changed, 4 insertions(+), 1 deletions(-)

crates/snowbound/web/glue.js+4-1
......@@ -551,7 +551,10 @@ export function mirrorTree({ tree, focus, root, nodes }) {
551551 if (!held.nodes.has(id)) {
552552 const made = document.createElement("div");
553553 made.id = `a11y-${tree}-${id}`;
554 made.onclick = () => wasm.access(tree, id, 0);
554 made.onclick = (event) => {
555 event.stopPropagation();
556 wasm.access(tree, id, 0);
557 };
555558 held.nodes.set(id, made);
556559 }
557560 return held.nodes.get(id);