From bad0fc386d6094e99bb629302dc821b8ec537837 Mon Sep 17 00:00:00 2001 From: Karl Seguin Date: Thu, 26 Feb 2026 15:26:34 +0800 Subject: [PATCH] Don't assume that a 'keydown' event is a KeyboardEvent --- src/browser/Page.zig | 2 +- src/browser/tests/event/keyboard.html | 13 +++++++++++++ 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/src/browser/Page.zig b/src/browser/Page.zig index 435685c7..618a3aca 100644 --- a/src/browser/Page.zig +++ b/src/browser/Page.zig @@ -3069,7 +3069,7 @@ pub fn triggerKeyboard(self: *Page, keyboard_event: *KeyboardEvent) !void { } pub fn handleKeydown(self: *Page, target: *Node, event: *Event) !void { - const keyboard_event = event.as(KeyboardEvent); + const keyboard_event = event.is(KeyboardEvent) orelse return; const key = keyboard_event.getKey(); if (key == .Dead) { diff --git a/src/browser/tests/event/keyboard.html b/src/browser/tests/event/keyboard.html index b6c3ddd8..79baff7e 100644 --- a/src/browser/tests/event/keyboard.html +++ b/src/browser/tests/event/keyboard.html @@ -103,3 +103,16 @@ document.dispatchEvent(new KeyboardEvent('keytest', {key: 'b'})); testing.expectEqual(false, keyIsTrusted); + +