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

LibWeb+WebContent: Remove PageClient::page_did_invalidate()

...and schedule repainting directly from Navigable::set_needs_display()
bypassing PageClient.
This commit is contained in:
Aliaksandr Kalenik 2024-02-24 07:38:17 +01:00 committed by Andreas Kling
parent c3f5dbb101
commit d3f8d24abb
4 changed files with 3 additions and 9 deletions

View file

@ -2033,7 +2033,7 @@ void Navigable::set_needs_display()
set_needs_display(viewport_rect());
}
void Navigable::set_needs_display(CSSPixelRect const& rect)
void Navigable::set_needs_display(CSSPixelRect const&)
{
// FIXME: Ignore updates outside the visible viewport rect.
// This requires accounting for fixed-position elements in the input rect, which we don't do yet.
@ -2041,7 +2041,8 @@ void Navigable::set_needs_display(CSSPixelRect const& rect)
m_needs_repaint = true;
if (is<TraversableNavigable>(*this)) {
static_cast<TraversableNavigable*>(this)->page().client().page_did_invalidate(to_top_level_rect(rect));
// Schedule the main thread event loop, which will, in turn, schedule a repaint.
Web::HTML::main_thread_event_loop().schedule();
return;
}