Make traverse_preorder follow shadow roots (#34503)

* script: Ensure shadow-inclusve preorder traversals follow hosted shadow roots.

Signed-off-by: Josh Matthews <josh@joshmatthews.net>

* script: Handle unregistering element id/name values inside of a shadow root.

Signed-off-by: Josh Matthews <josh@joshmatthews.net>

* script: Merge shadow root tree iteration logic.

Signed-off-by: Josh Matthews <josh@joshmatthews.net>

---------

Signed-off-by: Josh Matthews <josh@joshmatthews.net>
This commit is contained in:
Josh Matthews 2024-12-06 23:28:34 -05:00 committed by GitHub
parent ad48ab7ec3
commit 4242ff9626
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
15 changed files with 20733 additions and 123 deletions

View file

@ -315,13 +315,6 @@ impl VirtualMethods for ShadowRoot {
let document = document_from_node(self);
document.unregister_shadow_root(self);
}
let shadow_root = self.upcast::<Node>();
shadow_root.set_flag(NodeFlags::IS_CONNECTED, false);
for node in shadow_root.children() {
node.set_flag(NodeFlags::IS_CONNECTED, false);
node.unbind_from_tree(context);
}
}
}