From c988cbb8b1e197e5594ab638d359b45491d39ae5 Mon Sep 17 00:00:00 2001 From: Andreas Kling Date: Wed, 9 Mar 2022 17:54:50 +0100 Subject: LibWeb: Invalidate document style when a node is removed This forces us to recompute style everywhere, since all kinds of selectors may produce different results now. In the future, we should look at narrowing down the invalidation that occurs here, but for now let's just invalidate everything and make the results correct before worrying about performance. --- Userland/Libraries/LibWeb/DOM/Node.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Userland/Libraries/LibWeb/DOM/Node.cpp b/Userland/Libraries/LibWeb/DOM/Node.cpp index c6fb28cd65..acfcaca045 100644 --- a/Userland/Libraries/LibWeb/DOM/Node.cpp +++ b/Userland/Libraries/LibWeb/DOM/Node.cpp @@ -427,6 +427,8 @@ void Node::remove(bool suppress_observers) } parent->children_changed(); + + document().invalidate_style(); } // https://dom.spec.whatwg.org/#concept-node-replace -- cgit v1.2.3