diff options
| author | Tianren Dong <tianrendong.dtr@gmail.com> | 2026-09-10 09:31:19 -0400 |
|---|---|---|
| committer | Tianren Dong <tianrendong.dtr@gmail.com> | 2026-09-10 09:57:16 -0400 |
| commit | ec23b553a245d3d57f428d03002ed77a785d300a (patch) | |
| tree | 0c63797b791ffed2ef94f174d6cedbe7898dd75d /test-suite/challenges/21-keyboard-modifiers.html | |
| parent | f746631041e15e0c71d464d830ca2df7603f1476 (diff) | |
Improve Chrome input reliability and release 0.15.49
Diffstat (limited to 'test-suite/challenges/21-keyboard-modifiers.html')
| -rw-r--r-- | test-suite/challenges/21-keyboard-modifiers.html | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/test-suite/challenges/21-keyboard-modifiers.html b/test-suite/challenges/21-keyboard-modifiers.html index 870bef6..d18d484 100644 --- a/test-suite/challenges/21-keyboard-modifiers.html +++ b/test-suite/challenges/21-keyboard-modifiers.html @@ -30,9 +30,12 @@ for (const name of ["keydown","keypress","keyup","input"]) { }); } -t.addEventListener("input", () => { - if (t.value !== "A") return; +// input fires before keyup. Grade only when Shift is released so a valid chord +// cannot fail merely because its release events have not happened yet. +t.addEventListener("keyup", (event) => { + if (event.key !== "Shift") return; const bad = []; + if (t.value !== "A") bad.push(`value=${JSON.stringify(t.value)} (need 'A')`); const downShift = log.find(e => e.name === "keydown" && e.key === "Shift"); const downA = log.find(e => e.name === "keydown" && e.code === "KeyA"); const upShift = log.find(e => e.name === "keyup" && e.key === "Shift"); |
