A game portal rejected my game with one line - "The WASD keys aren't working". They were right, and all my tests were green. A developer whose browser game Void Parry was rejected by a game portal with the single line "The WASD keys aren't working" traced the failure to a day-one `e.preventDefault()` call on `pointerdown` that cancelled the browser's default focus transfer, leaving the game's iframe without keyboard focus on portal pages. The fix adds `window.focus()` on load, on pointer movement, and after ad overlays, plus a test harness that loads the game inside one and two nested iframes and presses WASD without clicking first — a path the original tests never exercised. My browser game Void Parry https://playgama.ai/play/ddg7todvr2 went to a portal's moderation with dozens of automated browser tests passing. The answer came back a few days later: The WASD keys aren't working in the game. That was the whole review. On my machine the keys worked. In every test the keys worked. On the portal's page they did nothing. It took one real key press on the real page to see why, and the cause was a line I wrote on day one. js canvas.addEventListener "pointerdown", e = { e.preventDefault ; // no text selection, no touch scrolling, no long-press menu handlePress e ; } ; Calling preventDefault on pointerdown is common in canvas games. It also cancels the default action of the press - and one of those defaults is moving keyboard focus to what you clicked . On my own site that never mattered: the game is the top-level page, the document already has focus, keys arrive. A portal does not load your game as the top-level page. It puts it in an