1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-26 01:47:34 +00:00

LibWeb: Implement all "childList" mutation records for MutationObserver

This commit is contained in:
Luke Wilde 2022-07-11 16:39:14 +01:00 committed by Andreas Kling
parent c9ba5531e0
commit 56cfd5ced8
3 changed files with 135 additions and 22 deletions

View file

@ -229,6 +229,8 @@ public:
void add_registered_observer(RegisteredObserver& registered_observer) { m_registered_observer_list.append(registered_observer); }
void queue_mutation_record(FlyString const& type, String attribute_name, String attribute_namespace, String old_value, NonnullRefPtr<NodeList> added_nodes, NonnullRefPtr<NodeList> removed_nodes, Node* previous_sibling, Node* next_sibling);
protected:
Node(Document&, NodeType);
@ -243,6 +245,9 @@ protected:
// https://dom.spec.whatwg.org/#registered-observer-list
// "Nodes have a strong reference to registered observers in their registered observer list." https://dom.spec.whatwg.org/#garbage-collection
NonnullRefPtrVector<RegisteredObserver> m_registered_observer_list;
private:
void queue_tree_mutation_record(NonnullRefPtr<NodeList> added_nodes, NonnullRefPtr<NodeList> removed_nodes, Node* previous_sibling, Node* next_sibling);
};
}