diff --git a/Userland/Libraries/LibWeb/DOM/Document.h b/Userland/Libraries/LibWeb/DOM/Document.h index 0f19fefdfd..00a3d00892 100644 --- a/Userland/Libraries/LibWeb/DOM/Document.h +++ b/Userland/Libraries/LibWeb/DOM/Document.h @@ -36,6 +36,7 @@ #include #include #include +#include #include #include #include @@ -60,7 +61,15 @@ class Document public: using WrapperType = Bindings::DocumentWrapper; - static NonnullRefPtr create(const URL& url = "about:blank") { return adopt(*new Document(url)); } + static NonnullRefPtr create(const URL& url = "about:blank") + { + return adopt(*new Document(url)); + } + static NonnullRefPtr create_with_global_object(Bindings::WindowObject&) + { + return Document::create(); + } + virtual ~Document() override; bool should_invalidate_styles_on_attribute_changes() const { return m_should_invalidate_styles_on_attribute_changes; } diff --git a/Userland/Libraries/LibWeb/DOM/Document.idl b/Userland/Libraries/LibWeb/DOM/Document.idl index bd405a48bb..469a7a557f 100644 --- a/Userland/Libraries/LibWeb/DOM/Document.idl +++ b/Userland/Libraries/LibWeb/DOM/Document.idl @@ -1,5 +1,7 @@ interface Document : Node { + constructor(); + readonly attribute DOMImplementation implementation; readonly attribute DOMString characterSet;