mirror of
https://github.com/lightpanda-io/browser.git
synced 2025-10-28 22:53:28 +00:00
userctx: document is not opational anymore
This commit is contained in:
@@ -34,10 +34,8 @@ pub const Comment = struct {
|
||||
pub const mem_guarantied = true;
|
||||
|
||||
pub fn constructor(userctx: UserContext, data: ?[]const u8) !*parser.Comment {
|
||||
if (userctx.document == null) return parser.DOMError.NotSupported;
|
||||
|
||||
return parser.documentCreateComment(
|
||||
parser.documentHTMLToDocument(userctx.document.?),
|
||||
parser.documentHTMLToDocument(userctx.document),
|
||||
data orelse "",
|
||||
);
|
||||
}
|
||||
|
||||
@@ -49,19 +49,15 @@ pub const Document = struct {
|
||||
pub const mem_guarantied = true;
|
||||
|
||||
pub fn constructor(userctx: UserContext) !*parser.DocumentHTML {
|
||||
var title: ?[]const u8 = null;
|
||||
if (userctx.document) |cur| {
|
||||
title = try parser.documentHTMLGetTitle(cur);
|
||||
}
|
||||
const doc = try parser.documentCreateDocument(title);
|
||||
const doc = try parser.documentCreateDocument(
|
||||
try parser.documentHTMLGetTitle(userctx.document),
|
||||
);
|
||||
|
||||
if (userctx.document) |cur| {
|
||||
// we have to work w/ document instead of html document.
|
||||
const ddoc = parser.documentHTMLToDocument(doc);
|
||||
const ccur = parser.documentHTMLToDocument(cur);
|
||||
try parser.documentSetDocumentURI(ddoc, try parser.documentGetDocumentURI(ccur));
|
||||
try parser.documentSetInputEncoding(ddoc, try parser.documentGetInputEncoding(ccur));
|
||||
}
|
||||
// we have to work w/ document instead of html document.
|
||||
const ddoc = parser.documentHTMLToDocument(doc);
|
||||
const ccur = parser.documentHTMLToDocument(userctx.document);
|
||||
try parser.documentSetDocumentURI(ddoc, try parser.documentGetDocumentURI(ccur));
|
||||
try parser.documentSetInputEncoding(ddoc, try parser.documentGetInputEncoding(ccur));
|
||||
|
||||
return doc;
|
||||
}
|
||||
|
||||
@@ -35,10 +35,8 @@ pub const DocumentFragment = struct {
|
||||
pub const mem_guarantied = true;
|
||||
|
||||
pub fn constructor(userctx: UserContext) !*parser.DocumentFragment {
|
||||
if (userctx.document == null) return parser.DOMError.NotSupported;
|
||||
|
||||
return parser.documentCreateDocumentFragment(
|
||||
parser.documentHTMLToDocument(userctx.document.?),
|
||||
parser.documentHTMLToDocument(userctx.document),
|
||||
);
|
||||
}
|
||||
};
|
||||
|
||||
@@ -41,10 +41,8 @@ pub const Text = struct {
|
||||
pub const mem_guarantied = true;
|
||||
|
||||
pub fn constructor(userctx: UserContext, data: ?[]const u8) !*parser.Text {
|
||||
if (userctx.document == null) return parser.DOMError.NotSupported;
|
||||
|
||||
return parser.documentCreateTextNode(
|
||||
parser.documentHTMLToDocument(userctx.document.?),
|
||||
parser.documentHTMLToDocument(userctx.document),
|
||||
data orelse "",
|
||||
);
|
||||
}
|
||||
|
||||
@@ -2,5 +2,5 @@ const std = @import("std");
|
||||
const parser = @import("netsurf.zig");
|
||||
|
||||
pub const UserContext = struct {
|
||||
document: ?*parser.DocumentHTML,
|
||||
document: *parser.DocumentHTML,
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user