mirror of
https://github.com/RGBCube/serenity
synced 2025-07-25 14:47:44 +00:00
LibWeb: Add XMLDocument stub
Required by old versions of Pixi.js's XMLFormat bitmap font loader.
db824181dc/packages/text-bitmap/src/formats/XMLFormat.ts (L16)
This commit is contained in:
parent
3d0ac399c4
commit
1f863de9aa
7 changed files with 59 additions and 1 deletions
|
@ -155,6 +155,7 @@ set(SOURCES
|
|||
DOM/Text.cpp
|
||||
DOM/Text.idl
|
||||
DOM/TreeWalker.cpp
|
||||
DOM/XMLDocument.cpp
|
||||
DOMParsing/InnerHTML.cpp
|
||||
DOMParsing/XMLSerializer.cpp
|
||||
Dump.cpp
|
||||
|
|
|
@ -472,9 +472,9 @@ protected:
|
|||
virtual JS::ThrowCompletionOr<void> initialize(JS::Realm&) override;
|
||||
virtual void visit_edges(Cell::Visitor&) override;
|
||||
|
||||
private:
|
||||
Document(JS::Realm&, AK::URL const&);
|
||||
|
||||
private:
|
||||
// ^HTML::GlobalEventHandlers
|
||||
virtual EventTarget& global_event_handlers_to_event_target(FlyString const&) final { return *this; }
|
||||
|
||||
|
|
25
Userland/Libraries/LibWeb/DOM/XMLDocument.cpp
Normal file
25
Userland/Libraries/LibWeb/DOM/XMLDocument.cpp
Normal file
|
@ -0,0 +1,25 @@
|
|||
/*
|
||||
* Copyright (c) 2023, Luke Wilde <lukew@serenityos.org>
|
||||
*
|
||||
* SPDX-License-Identifier: BSD-2-Clause
|
||||
*/
|
||||
|
||||
#include <LibWeb/Bindings/XMLDocumentPrototype.h>
|
||||
#include <LibWeb/DOM/XMLDocument.h>
|
||||
|
||||
namespace Web::DOM {
|
||||
|
||||
XMLDocument::XMLDocument(JS::Realm& realm, AK::URL const& url)
|
||||
: Document(realm, url)
|
||||
{
|
||||
}
|
||||
|
||||
JS::ThrowCompletionOr<void> XMLDocument::initialize(JS::Realm& realm)
|
||||
{
|
||||
MUST_OR_THROW_OOM(Base::initialize(realm));
|
||||
set_prototype(&Bindings::ensure_web_prototype<Bindings::XMLDocumentPrototype>(realm, "XMLDocument"));
|
||||
|
||||
return {};
|
||||
}
|
||||
|
||||
}
|
25
Userland/Libraries/LibWeb/DOM/XMLDocument.h
Normal file
25
Userland/Libraries/LibWeb/DOM/XMLDocument.h
Normal file
|
@ -0,0 +1,25 @@
|
|||
/*
|
||||
* Copyright (c) 2023, Luke Wilde <lukew@serenityos.org>
|
||||
*
|
||||
* SPDX-License-Identifier: BSD-2-Clause
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
#include <LibWeb/DOM/Document.h>
|
||||
|
||||
namespace Web::DOM {
|
||||
|
||||
class XMLDocument final : public Document {
|
||||
WEB_PLATFORM_OBJECT(XMLDocument, Document);
|
||||
|
||||
public:
|
||||
virtual ~XMLDocument() override = default;
|
||||
|
||||
private:
|
||||
XMLDocument(JS::Realm& realm, AK::URL const& url);
|
||||
|
||||
virtual JS::ThrowCompletionOr<void> initialize(JS::Realm&) override;
|
||||
};
|
||||
|
||||
}
|
5
Userland/Libraries/LibWeb/DOM/XMLDocument.idl
Normal file
5
Userland/Libraries/LibWeb/DOM/XMLDocument.idl
Normal file
|
@ -0,0 +1,5 @@
|
|||
#import <DOM/Document.idl>
|
||||
|
||||
[Exposed=Window]
|
||||
interface XMLDocument : Document {
|
||||
};
|
|
@ -214,6 +214,7 @@ class StaticNodeList;
|
|||
class StaticRange;
|
||||
class Text;
|
||||
class TreeWalker;
|
||||
class XMLDocument;
|
||||
|
||||
enum class QuirksMode;
|
||||
|
||||
|
|
|
@ -51,6 +51,7 @@ libweb_js_bindings(DOM/ShadowRoot)
|
|||
libweb_js_bindings(DOM/StaticRange)
|
||||
libweb_js_bindings(DOM/Text)
|
||||
libweb_js_bindings(DOM/TreeWalker)
|
||||
libweb_js_bindings(DOM/XMLDocument)
|
||||
libweb_js_bindings(DOMParsing/XMLSerializer)
|
||||
libweb_js_bindings(Encoding/TextDecoder)
|
||||
libweb_js_bindings(Encoding/TextEncoder)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue