Commit 2bbcee0
committed
fix(template-no-nested-interactive): guard canvas in isInteractiveOnlyFromTabindex; update docs
canvas is unconditionally interactive (added by PR #37 for drawing/game-UI
parity with upstream ember-template-lint). isInteractiveOnlyFromTabindex
was missing a canvas guard, so <canvas tabindex="0"> was incorrectly
treated as tabindex-only and never pushed onto the interactive stack,
meaning nested interactive content inside a canvas+tabindex was silently
allowed.
Also updates docs to list audio[controls], video[controls], and canvas as
interactive, and expands the Special Cases section to document the ARIA
composite-widget hierarchy exception introduced alongside this refactor.1 parent aecd9ed commit 2bbcee0
3 files changed
Lines changed: 21 additions & 2 deletions
File tree
- docs/rules
- lib/rules
- tests/lib/rules
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
15 | 15 | | |
16 | 16 | | |
17 | 17 | | |
| 18 | + | |
18 | 19 | | |
| 20 | + | |
19 | 21 | | |
20 | 22 | | |
21 | 23 | | |
| |||
24 | 26 | | |
25 | 27 | | |
26 | 28 | | |
| 29 | + | |
27 | 30 | | |
28 | 31 | | |
29 | 32 | | |
| |||
32 | 35 | | |
33 | 36 | | |
34 | 37 | | |
35 | | - | |
36 | | - | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
37 | 41 | | |
38 | 42 | | |
39 | 43 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
187 | 187 | | |
188 | 188 | | |
189 | 189 | | |
| 190 | + | |
| 191 | + | |
| 192 | + | |
190 | 193 | | |
191 | 194 | | |
192 | 195 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
268 | 268 | | |
269 | 269 | | |
270 | 270 | | |
| 271 | + | |
| 272 | + | |
| 273 | + | |
| 274 | + | |
| 275 | + | |
| 276 | + | |
271 | 277 | | |
272 | 278 | | |
273 | 279 | | |
| |||
454 | 460 | | |
455 | 461 | | |
456 | 462 | | |
| 463 | + | |
| 464 | + | |
| 465 | + | |
| 466 | + | |
| 467 | + | |
| 468 | + | |
457 | 469 | | |
458 | 470 | | |
0 commit comments