Skip to content

Commit 0fbf48a

Browse files
committed
actually dispatch click
1 parent f38a0d2 commit 0fbf48a

File tree

2 files changed

+5
-13
lines changed

2 files changed

+5
-13
lines changed

src/browser/browser.zig

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -451,13 +451,14 @@ pub const Page = struct {
451451

452452
const event = try parser.mouseEventCreate();
453453
defer parser.mouseEventDestroy(event);
454-
455454
try parser.mouseEventInit(event, "click", .{
456455
.bubbles = true,
457456
.cancelable = true,
458457
.x = me.x,
459458
.y = me.y,
460459
});
460+
_ = try parser.elementDispatchEvent(element, @ptrCast(event));
461+
461462
if ((try parser.mouseEventDefaultPrevented(event)) == true) {
462463
return null;
463464
}

src/netsurf/netsurf.zig

Lines changed: 3 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -802,18 +802,9 @@ pub fn eventTargetDispatchEvent(et: *EventTarget, event: *Event) !bool {
802802
return res;
803803
}
804804

805-
const DispatchOpts = struct {
806-
type: []const u8,
807-
bubbles: bool = true,
808-
cancelable: bool = true,
809-
};
810-
pub fn elementDispatchEvent(element: *Element, opts: DispatchOpts) !bool {
811-
const event = try eventCreate();
812-
defer eventDestroy(event);
813-
try eventInit(event, opts.type, .{ .bubbles = opts.bubbles, .cancelable = opts.cancelable });
814-
815-
const et: *EventTarget = @ptrCast(element);
816-
return eventTargetDispatchEvent(et, event);
805+
pub fn elementDispatchEvent(element: *Element, event: *Event) !bool {
806+
const et: *EventTarget = toEventTarget(Element, element);
807+
return eventTargetDispatchEvent(et, @ptrCast(event));
817808
}
818809

819810
pub fn eventTargetTBaseFieldName(comptime T: type) ?[]const u8 {

0 commit comments

Comments
 (0)