LibWeb: Add CharacterData and Text IDL interfaces

This commit is contained in:
Andreas Kling
2020-08-03 20:50:45 +02:00
parent 354f9aafd5
commit 73645e11c4
Notes: sideshowbarker 2024-07-19 04:20:43 +09:00
7 changed files with 36 additions and 6 deletions

View File

@@ -36,11 +36,15 @@ class CharacterData
: public Node
, public NonDocumentTypeChildNode<CharacterData> {
public:
using WrapperType = Bindings::CharacterDataWrapper;
virtual ~CharacterData() override;
const String& data() const { return m_data; }
void set_data(const String& data) { m_data = data; }
unsigned length() const { return m_data.length(); }
virtual String text_content() const override { return m_data; }
protected:

View File

@@ -0,0 +1,9 @@
interface CharacterData : Node {
attribute DOMString data;
readonly attribute unsigned long length;
readonly attribute Element? nextElementSibling;
readonly attribute Element? previousElementSibling;
}

View File

@@ -34,6 +34,8 @@ namespace Web::DOM {
class Text final : public CharacterData {
public:
using WrapperType = Bindings::TextWrapper;
explicit Text(Document&, const String&);
virtual ~Text() override;

View File

@@ -0,0 +1,3 @@
interface Text : CharacterData {
}