mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2025-04-22 04:25:13 +00:00
LibWeb: Add Document create_element() and create_text_node() helpers
This commit is contained in:
parent
9d7ab13b32
commit
0e60e7aef0
Notes:
sideshowbarker
2024-07-19 06:45:00 +09:00
Author: https://github.com/awesomekling Commit: https://github.com/SerenityOS/serenity/commit/0e60e7aef03
2 changed files with 16 additions and 2 deletions
|
@ -46,6 +46,7 @@
|
|||
#include <LibWeb/DOM/HTMLHeadElement.h>
|
||||
#include <LibWeb/DOM/HTMLHtmlElement.h>
|
||||
#include <LibWeb/DOM/HTMLTitleElement.h>
|
||||
#include <LibWeb/DOM/Text.h>
|
||||
#include <LibWeb/DOM/Window.h>
|
||||
#include <LibWeb/Dump.h>
|
||||
#include <LibWeb/Frame.h>
|
||||
|
@ -112,8 +113,8 @@ void Document::fixup()
|
|||
if (is<HTMLHtmlElement>(first_child()->next_sibling()))
|
||||
return;
|
||||
|
||||
auto body = create_element(*this, "body");
|
||||
auto html = create_element(*this, "html");
|
||||
auto body = create_element("body");
|
||||
auto html = create_element("html");
|
||||
html->append_child(body);
|
||||
this->donate_all_children_to(body);
|
||||
this->append_child(html);
|
||||
|
@ -384,4 +385,14 @@ JS::Value Document::run_javascript(const StringView& source)
|
|||
return document().interpreter().run(*program);
|
||||
}
|
||||
|
||||
NonnullRefPtr<Element> Document::create_element(const String& tag_name)
|
||||
{
|
||||
return Web::create_element(*this, tag_name);
|
||||
}
|
||||
|
||||
NonnullRefPtr<Text> Document::create_text_node(const String& data)
|
||||
{
|
||||
return adopt(*new Text(*this, data));
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -125,6 +125,9 @@ public:
|
|||
|
||||
JS::Value run_javascript(const StringView&);
|
||||
|
||||
NonnullRefPtr<Element> create_element(const String& tag_name);
|
||||
NonnullRefPtr<Text> create_text_node(const String& data);
|
||||
|
||||
private:
|
||||
virtual RefPtr<LayoutNode> create_layout_node(const StyleProperties* parent_style) const override;
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue