LibWeb: Don't drop entire layout tree on object element update

It's sufficient to just rebuild the layout subtree rooted at the object
element itself.
This commit is contained in:
Andreas Kling 2025-03-24 23:07:53 +00:00
parent f8fa49a81c
commit 185a40ca20
2 changed files with 1 additions and 2 deletions

View file

@ -53,7 +53,6 @@ enum class QuirksMode {
#define ENUMERATE_INVALIDATE_LAYOUT_TREE_REASONS(X) \
X(DocumentAddAnElementToTheTopLayer) \
X(DocumentRequestAnElementToBeRemovedFromTheTopLayer) \
X(HTMLObjectElement) \
X(ShadowRootSetInnerHTML)
enum class InvalidateLayoutTreeReason {

View file

@ -561,7 +561,7 @@ void HTMLObjectElement::update_layout_and_child_objects(Representation represent
m_representation = representation;
invalidate_style(DOM::StyleInvalidationReason::HTMLObjectElementUpdateLayoutAndChildObjects);
document().invalidate_layout_tree(DOM::InvalidateLayoutTreeReason::HTMLObjectElement);
set_needs_layout_tree_update(true);
}
// https://html.spec.whatwg.org/multipage/interaction.html#dom-tabindex