events: add EventTargetBase

EventTargetBase implements event target vtable for pure zig struct
This commit is contained in:
Pierre Tachoire
2024-01-17 18:17:40 +01:00
parent 85a8decffc
commit 9050f2586b
3 changed files with 45 additions and 2 deletions

View File

@@ -6,6 +6,7 @@ const generate = @import("generate.zig");
const parser = @import("netsurf.zig");
const apiweb = @import("apiweb.zig");
const Window = @import("html/window.zig").Window;
const documentTestExecFn = @import("dom/document.zig").testExecFn;
const HTMLDocumentTestExecFn = @import("html/document.zig").testExecFn;
@@ -135,3 +136,13 @@ test "run browser tests" {
try dump.HTMLFileTestFn(out);
}
test "Window is a libdom event target" {
var window = Window.create(null);
const event = try parser.eventCreate();
try parser.eventInit(event, "foo", .{});
const et = @as(*parser.EventTarget, @ptrCast(&window));
_ = try parser.eventTargetDispatchEvent(et, event);
}