diff --git a/src/browser/html/elements.zig b/src/browser/html/elements.zig
index 9e7e0472..47cf0306 100644
--- a/src/browser/html/elements.zig
+++ b/src/browser/html/elements.zig
@@ -758,16 +758,20 @@ pub const HTMLLinkElement = struct {
pub const subtype = .node;
pub fn get_rel(self: *parser.Link) ![]const u8 {
- return try parser.linkGetRel(self);
+ return parser.linkGetRel(self);
+ }
+
+ pub fn set_rel(self: *parser.Link, rel: []const u8) !void {
+ return parser.linkSetRel(self, rel);
}
pub fn get_href(self: *parser.Link) ![]const u8 {
- return try parser.linkGetHref(self);
+ return parser.linkGetHref(self);
}
pub fn set_href(self: *parser.Link, href: []const u8, page: *const Page) !void {
const full = try urlStitch(page.call_arena, href, page.url.raw, .{});
- return try parser.linkSetHref(self, full);
+ return parser.linkSetHref(self, full);
}
};
diff --git a/src/browser/netsurf.zig b/src/browser/netsurf.zig
index be3e711f..a391950b 100644
--- a/src/browser/netsurf.zig
+++ b/src/browser/netsurf.zig
@@ -1942,6 +1942,11 @@ pub fn linkGetRel(link: *Link) ![]const u8 {
return strToData(res.?);
}
+pub fn linkSetRel(link: *Link, rel: []const u8) !void {
+ const err = c.dom_html_link_element_set_rel(link, try strFromData(rel));
+ return DOMErr(err);
+}
+
pub fn linkGetHref(link: *Link) ![]const u8 {
var res: ?*String = null;
const err = c.dom_html_link_element_get_href(link, &res);