mirror of
https://github.com/lightpanda-io/browser.git
synced 2025-10-28 22:53:28 +00:00
Merge pull request #1081 from lightpanda-io/nikneym/link-rel
Some checks failed
e2e-test / zig build release (push) Has been cancelled
e2e-test / demo-scripts (push) Has been cancelled
e2e-test / cdp-and-hyperfine-bench (push) Has been cancelled
e2e-test / perf-fmt (push) Has been cancelled
zig-test / zig build dev (push) Has been cancelled
zig-test / browser fetch (push) Has been cancelled
zig-test / zig test (push) Has been cancelled
zig-test / perf-fmt (push) Has been cancelled
nightly build / build-linux-x86_64 (push) Has been cancelled
nightly build / build-linux-aarch64 (push) Has been cancelled
nightly build / build-macos-aarch64 (push) Has been cancelled
nightly build / build-macos-x86_64 (push) Has been cancelled
wpt / web platform tests json output (push) Has been cancelled
wpt / perf-fmt (push) Has been cancelled
Some checks failed
e2e-test / zig build release (push) Has been cancelled
e2e-test / demo-scripts (push) Has been cancelled
e2e-test / cdp-and-hyperfine-bench (push) Has been cancelled
e2e-test / perf-fmt (push) Has been cancelled
zig-test / zig build dev (push) Has been cancelled
zig-test / browser fetch (push) Has been cancelled
zig-test / zig test (push) Has been cancelled
zig-test / perf-fmt (push) Has been cancelled
nightly build / build-linux-x86_64 (push) Has been cancelled
nightly build / build-linux-aarch64 (push) Has been cancelled
nightly build / build-macos-aarch64 (push) Has been cancelled
nightly build / build-macos-x86_64 (push) Has been cancelled
wpt / web platform tests json output (push) Has been cancelled
wpt / perf-fmt (push) Has been cancelled
Add `rel` property to `HTMLLinkElement`
This commit is contained in:
@@ -757,13 +757,21 @@ pub const HTMLLinkElement = struct {
|
|||||||
pub const prototype = *HTMLElement;
|
pub const prototype = *HTMLElement;
|
||||||
pub const subtype = .node;
|
pub const subtype = .node;
|
||||||
|
|
||||||
|
pub fn get_rel(self: *parser.Link) ![]const u8 {
|
||||||
|
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 {
|
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 {
|
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, .{});
|
const full = try urlStitch(page.call_arena, href, page.url.raw, .{});
|
||||||
return try parser.linkSetHref(self, full);
|
return parser.linkSetHref(self, full);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -1934,6 +1934,19 @@ pub fn anchorSetRel(a: *Anchor, rel: []const u8) !void {
|
|||||||
|
|
||||||
// HTMLLinkElement
|
// HTMLLinkElement
|
||||||
|
|
||||||
|
pub fn linkGetRel(link: *Link) ![]const u8 {
|
||||||
|
var res: ?*String = null;
|
||||||
|
const err = c.dom_html_link_element_get_rel(link, &res);
|
||||||
|
try DOMErr(err);
|
||||||
|
if (res == null) return "";
|
||||||
|
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 {
|
pub fn linkGetHref(link: *Link) ![]const u8 {
|
||||||
var res: ?*String = null;
|
var res: ?*String = null;
|
||||||
const err = c.dom_html_link_element_get_href(link, &res);
|
const err = c.dom_html_link_element_get_href(link, &res);
|
||||||
|
|||||||
@@ -280,3 +280,12 @@
|
|||||||
divElement.dir = "auto";
|
divElement.dir = "auto";
|
||||||
testing.expectEqual("auto", divElement.dir);
|
testing.expectEqual("auto", divElement.dir);
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
<script id=linkRel>
|
||||||
|
const linkElement = document.createElement("link");
|
||||||
|
// A newly created link element must have it's rel set to empty string.
|
||||||
|
testing.expectEqual("", linkElement.rel);
|
||||||
|
|
||||||
|
linkElement.rel = "stylesheet";
|
||||||
|
testing.expectEqual("stylesheet", linkElement.rel);
|
||||||
|
</script>
|
||||||
|
|||||||
Reference in New Issue
Block a user