mirror of
https://github.com/fergalmoran/ladybird.git
synced 2025-12-22 09:19:03 +00:00
LibWeb: Avoid invalidation on .textContent setter no-op
When setting the textContent of an element with no children to null or the empty string, nothing happens. Even so, we were still invalidating style, layout and collections, causing pointless churn. Skipping invalidation in this case also revealed that we were missing invalidation when changing the selected state of HTMLOptionElement. This was all caught by existing tests already in-tree. :^)
This commit is contained in:
committed by
Andreas Kling
parent
8214371ad5
commit
49a7a0f378
@@ -68,6 +68,9 @@ void HTMLOptionElement::set_selected(bool selected)
|
||||
|
||||
void HTMLOptionElement::set_selected_internal(bool selected)
|
||||
{
|
||||
if (m_selected != selected)
|
||||
invalidate_style(DOM::StyleInvalidationReason::HTMLOptionElementSelectedChange);
|
||||
|
||||
m_selected = selected;
|
||||
if (selected)
|
||||
m_selectedness_update_index = m_next_selectedness_update_index++;
|
||||
|
||||
Reference in New Issue
Block a user