mirror of
https://github.com/RGBCube/serenity
synced 2025-07-25 17:07:34 +00:00
LibWeb: Repaint entire viewport after document layout
This fixes an issue with the eyes on ACID2 not appearing until the page is repainted after loading.
This commit is contained in:
parent
93f656119c
commit
b34dd0fb24
3 changed files with 7 additions and 1 deletions
|
@ -420,7 +420,7 @@ void Document::update_layout()
|
|||
|
||||
root_formatting_context.run(*m_layout_root, Layout::LayoutMode::Default);
|
||||
|
||||
m_layout_root->set_needs_display();
|
||||
browsing_context()->set_needs_display();
|
||||
|
||||
if (browsing_context()->is_top_level()) {
|
||||
if (auto* page = this->page())
|
||||
|
|
|
@ -128,6 +128,11 @@ void BrowsingContext::set_viewport_scroll_offset(Gfx::IntPoint const& offset)
|
|||
client->browsing_context_did_set_viewport_rect(viewport_rect());
|
||||
}
|
||||
|
||||
void BrowsingContext::set_needs_display()
|
||||
{
|
||||
set_needs_display(viewport_rect());
|
||||
}
|
||||
|
||||
void BrowsingContext::set_needs_display(Gfx::IntRect const& rect)
|
||||
{
|
||||
if (!viewport_rect().intersects(rect))
|
||||
|
|
|
@ -50,6 +50,7 @@ public:
|
|||
Gfx::IntSize const& size() const { return m_size; }
|
||||
void set_size(Gfx::IntSize const&);
|
||||
|
||||
void set_needs_display();
|
||||
void set_needs_display(Gfx::IntRect const&);
|
||||
|
||||
Gfx::IntPoint const& viewport_scroll_offset() const { return m_viewport_scroll_offset; }
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue