mirror of
https://github.com/Matysh/houseplan-card
synced 2026-09-29 03:09:36 +00:00
fix(space-card): nothing in the static schematic is hit-testable (#664)
The stage is pointer-events:none, but that is not an inherited ban: the shared marker styles opt the 44 px floor (.dev::before) and the painted capsule (.device-shell-frame) back in for the interactive plan (#564). The static card imports them whole, so since v1.76.0-beta.2 it showed a hand cursor over every marker and swallowed clicks that do nothing. The card now closes every descendant opt-in (.hp-static-stage *, ::before, ::after). smoke_space_card asserts the browser hit test itself (elementFromPoint over the marker and a 9x9 grid across the stage) and the cursor, not the stage computed style that stayed green through the regression. Mutant static-card-descendants-hit-testable. Screenshots: 11 frames pixel-identical, fingerprint only (npm run docs:accept -- --identical). Issue: #664 User-Visible: yes
This commit is contained in:
@@ -3391,6 +3391,17 @@ const MUTANT_DEFINITIONS = [
|
||||
replace: "",
|
||||
}],
|
||||
},
|
||||
{
|
||||
id: 'static-card-descendants-hit-testable',
|
||||
guard: 'node demo/smoke_space_card.mjs',
|
||||
because: '#664: pointer-events:none on the stage does not stop a descendant that opts back in; '
|
||||
+ 'without the subtree rule the shared #564 capsule shows a pointer cursor and swallows clicks',
|
||||
patches: [{
|
||||
file: 'src/space-card.ts',
|
||||
find: " .hp-static-stage *,\n .hp-static-stage *::before,\n .hp-static-stage *::after {\n pointer-events: none;\n }\n",
|
||||
replace: "",
|
||||
}],
|
||||
},
|
||||
{
|
||||
id: 'fit-house-hidden-walls-vote',
|
||||
guard: 'node demo/smoke_space_card.mjs',
|
||||
|
||||
Reference in New Issue
Block a user