1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-31 02:08:11 +00:00

LibHTML: Add Document::force_layout()

..for when you really need a layout to happen right now.
Also, automatically repaint the layout root after layout.
This commit is contained in:
Andreas Kling 2019-10-28 20:51:45 +01:00
parent d24164ac6a
commit 98ff8ef0cf
2 changed files with 8 additions and 0 deletions

View file

@ -181,6 +181,12 @@ URL Document::complete_url(const String& string) const
return url; return url;
} }
void Document::force_layout()
{
m_layout_root = nullptr;
layout();
}
void Document::layout() void Document::layout()
{ {
if (!m_layout_root) { if (!m_layout_root) {
@ -188,6 +194,7 @@ void Document::layout()
m_layout_root = tree_builder.build(*this); m_layout_root = tree_builder.build(*this);
} }
m_layout_root->layout(); m_layout_root->layout();
m_layout_root->set_needs_display();
} }
void Document::update_style() void Document::update_style()

View file

@ -69,6 +69,7 @@ public:
void set_visited_link_color(Color); void set_visited_link_color(Color);
void layout(); void layout();
void force_layout();
void update_style(); void update_style();
void update_layout(); void update_layout();