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

LibWeb+WebContent: Move paint recording init into Navigable

This refactoring makes WebContent less aware of LibWeb internals.
The code that initializes paint recording commands now resides in
`Navigable::paint()`. Additionally, we no longer need to reuse
PaintContext across iframes, allowing us to avoid saving and restoring
its state before recursing into an iframe.
This commit is contained in:
Aliaksandr Kalenik 2024-01-15 11:28:21 +01:00 committed by Andreas Kling
parent 72dd37438d
commit cc447c9c80
6 changed files with 65 additions and 47 deletions

View file

@ -61,12 +61,12 @@ public:
void color_picker_update(Optional<Color> picked_color, Web::HTML::ColorPickerUpdateState state);
void select_dropdown_closed(Optional<String> value);
[[nodiscard]] Gfx::Color background_color() const;
void set_user_style(String source);
void ready_to_paint();
virtual double device_pixels_per_css_pixel() const override { return m_device_pixels_per_css_pixel; }
private:
PageClient(PageHost&, u64 id);
@ -76,7 +76,6 @@ private:
virtual bool is_connection_open() const override;
virtual Gfx::Palette palette() const override;
virtual Web::DevicePixelRect screen_rect() const override { return m_screen_rect; }
virtual double device_pixels_per_css_pixel() const override { return m_device_pixels_per_css_pixel; }
virtual Web::CSS::PreferredColorScheme preferred_color_scheme() const override { return m_preferred_color_scheme; }
virtual void page_did_invalidate(Web::CSSPixelRect const&) override;
virtual void page_did_request_cursor_change(Gfx::StandardCursor) override;