1
0
Fork 0
mirror of https://github.com/LadybirdBrowser/ladybird.git synced 2025-06-10 18:10:56 +09:00

LibWeb: Update the layout tree when CSS text-transform changes

Because we cache the transformed text string in text nodes affected by
text-transform, we have to actually update the layout tree when this
property value changes.
This commit is contained in:
Andreas Kling 2025-03-08 17:54:04 +01:00 committed by Andreas Kling
parent def0bcdfa2
commit 0a300fe59b
Notes: github-actions[bot] 2025-03-08 19:23:07 +00:00
4 changed files with 32 additions and 0 deletions

View file

@ -24,6 +24,15 @@ RequiredInvalidationAfterStyleChange compute_property_invalidation(CSS::Property
return RequiredInvalidationAfterStyleChange::full();
}
// NOTE: If the text-transform property changes, it may affect layout. Furthermore, since the
// Layout::TextNode caches the post-transform text, we have to update the layout tree.
if (property_id == CSS::PropertyID::TextTransform) {
invalidation.rebuild_layout_tree = true;
invalidation.relayout = true;
invalidation.repaint = true;
return invalidation;
}
// NOTE: If one of the overflow properties change, we rebuild the entire layout tree.
// This ensures that overflow propagation from root/body to viewport happens correctly.
// In the future, we can make this invalidation narrower.