diff --git a/src/browser/browser.zig b/src/browser/browser.zig index ac872bf2..4cdec4e6 100644 --- a/src/browser/browser.zig +++ b/src/browser/browser.zig @@ -173,6 +173,10 @@ pub const Session = struct { const page = &self.page.?; try Page.init(page, page_arena.allocator(), self); + self.notify(&.{ .context_created = .{ + .origin = try page.origin(), + } }); + // start JS env log.debug("start new js scope", .{}); diff --git a/src/cdp/cdp.zig b/src/cdp/cdp.zig index 173315f9..b4ae8c98 100644 --- a/src/cdp/cdp.zig +++ b/src/cdp/cdp.zig @@ -404,8 +404,8 @@ pub fn BrowserContext(comptime CDP_T: type) type { const self: *Self = @alignCast(@ptrCast(ctx)); switch (notification.*) { - .context_created => |cc| { - const aux_data = try std.fmt.allocPrint(self.arena, "{{\"isDefault\":true,\"type\":\"default\",\"frameId\":\"{s}\"}}", .{self.target_id.?}); + .context_created => |cc| if (self.target_id) |target_id| { + const aux_data = try std.fmt.allocPrint(self.arena, "{{\"isDefault\":true,\"type\":\"default\",\"frameId\":\"{s}\"}}", .{target_id}); self.inspector.contextCreated( self.session.page.?.scope, "", diff --git a/src/cdp/domains/target.zig b/src/cdp/domains/target.zig index 4a34a489..a5a7e0bf 100644 --- a/src/cdp/domains/target.zig +++ b/src/cdp/domains/target.zig @@ -123,6 +123,7 @@ fn createTarget(cmd: anytype) !void { const target_id = cmd.cdp.target_id_gen.next(); try bc.createIsolatedWorld(); + bc.target_id = target_id; _ = try bc.session.createPage(); @@ -149,8 +150,6 @@ fn createTarget(cmd: anytype) !void { try doAttachtoTarget(cmd, target_id); } - bc.target_id = target_id; - try cmd.sendResult(.{ .targetId = target_id, }, .{});