diff --git a/Libraries/LibHTML/DOM/Document.h b/Libraries/LibHTML/DOM/Document.h index 85595e43eb..5b1487d0c1 100644 --- a/Libraries/LibHTML/DOM/Document.h +++ b/Libraries/LibHTML/DOM/Document.h @@ -89,6 +89,9 @@ public: const Element* get_element_by_id(const String&) const; Vector get_elements_by_name(const String&) const; + const String& source() const { return m_source; } + void set_source(const String& source) { m_source = source; } + private: virtual RefPtr create_layout_node(const StyleProperties* parent_style) const override; @@ -106,6 +109,8 @@ private: Color m_visited_link_color { Color::Magenta }; RefPtr m_style_update_timer; + + String m_source; }; template<> diff --git a/Libraries/LibHTML/Parser/HTMLParser.cpp b/Libraries/LibHTML/Parser/HTMLParser.cpp index ef28a97cc2..722350929f 100644 --- a/Libraries/LibHTML/Parser/HTMLParser.cpp +++ b/Libraries/LibHTML/Parser/HTMLParser.cpp @@ -334,6 +334,7 @@ RefPtr parse_html_document(const StringView& html, const URL& url) { auto document = adopt(*new Document); document->set_url(url); + document->set_source(html); if (!parse_html_document(html, *document, *document)) return nullptr;