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

LibWeb: Let subframes propagate paint invalidations via host element

When a paint invalidation occurs inside a subframe, it bubbles up to
Frame::set_needs_display(). From there, we call PageView if this is
the main frame, or otherwise invalidate the subframe host element.
This commit is contained in:
Andreas Kling 2020-06-07 14:56:29 +02:00
parent 59f9b32a44
commit 3ae3729b4e
5 changed files with 30 additions and 17 deletions

View file

@ -81,6 +81,7 @@ public:
void notify_link_hover(Badge<EventHandler>, Web::Frame&, const String& href);
void notify_tooltip_area_enter(Badge<EventHandler>, Web::Frame&, const Gfx::Point& content_position, const String& title);
void notify_tooltip_area_leave(Badge<EventHandler>, Web::Frame&);
void notify_needs_display(Badge<Web::Frame>, Web::Frame&, const Gfx::Rect&);
protected:
PageView();
@ -97,6 +98,7 @@ private:
virtual void did_scroll() override;
Gfx::Point to_screen_position(const Web::Frame&, const Gfx::Point&) const;
Gfx::Rect to_widget_rect(const Web::Frame&, const Gfx::Rect&) const;
void layout_and_sync_size();