1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-25 06:27:45 +00:00

LibWeb: Fix invalidation of CSS properties that do not affect layout

Recently, we moved the resolution of CSS properties that do not affect
layout to occur within LayoutState::commit(). This decision was a
mistake as it breaks invalidation. With this change, we now re-resolve
all properties that do not affect layout before each repaint.
This commit is contained in:
Aliaksandr Kalenik 2024-02-02 12:04:16 +01:00 committed by Andreas Kling
parent 955d73657e
commit 1af466babf
11 changed files with 314 additions and 250 deletions

View file

@ -179,6 +179,8 @@ public:
};
void paint(Painting::RecordingPainter&, PaintConfig);
void set_needs_to_resolve_paint_only_properties() { m_needs_to_resolve_paint_only_properties = true; }
protected:
Navigable();
@ -220,6 +222,8 @@ private:
CSSPixelSize m_size;
CSSPixelPoint m_viewport_scroll_offset;
bool m_needs_to_resolve_paint_only_properties { true };
};
HashTable<Navigable*>& all_navigables();