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

LibWeb: Add PageClient::palette() for view-agnostic palette access

This commit is contained in:
Andreas Kling 2020-06-17 20:26:59 +02:00
parent e58a13e3f6
commit 2ad1c2d959
4 changed files with 5 additions and 3 deletions

View file

@ -47,7 +47,7 @@ void Page::load(const URL& url)
Gfx::Palette Page::palette() const Gfx::Palette Page::palette() const
{ {
return static_cast<const PageView&>(m_client).palette(); return m_client.palette();
} }
bool Page::handle_mouseup(const Gfx::IntPoint& position, unsigned button, unsigned modifiers) bool Page::handle_mouseup(const Gfx::IntPoint& position, unsigned button, unsigned modifiers)

View file

@ -68,6 +68,7 @@ private:
class PageClient { class PageClient {
public: public:
virtual Gfx::Palette palette() const = 0;
virtual void page_did_set_document_in_main_frame(Document*) { } virtual void page_did_set_document_in_main_frame(Document*) { }
virtual void page_did_change_title(const String&) { } virtual void page_did_change_title(const String&) { }
virtual void page_did_start_loading(const URL&) { } virtual void page_did_start_loading(const URL&) { }

View file

@ -91,6 +91,7 @@ private:
virtual void did_scroll() override; virtual void did_scroll() override;
// ^Web::PageClient // ^Web::PageClient
virtual Gfx::Palette palette() const override { return GUI::ScrollableWidget::palette(); }
virtual void page_did_change_title(const String&) override; virtual void page_did_change_title(const String&) override;
virtual void page_did_set_document_in_main_frame(Document*) override; virtual void page_did_set_document_in_main_frame(Document*) override;
virtual void page_did_start_loading(const URL&) override; virtual void page_did_start_loading(const URL&) override;

View file

@ -32,7 +32,7 @@ namespace WebContent {
class ClientConnection; class ClientConnection;
class PageHost : public Web::PageClient { class PageHost final : public Web::PageClient {
AK_MAKE_NONCOPYABLE(PageHost); AK_MAKE_NONCOPYABLE(PageHost);
AK_MAKE_NONMOVABLE(PageHost); AK_MAKE_NONMOVABLE(PageHost);
@ -50,11 +50,11 @@ public:
private: private:
// ^PageHost // ^PageHost
virtual Gfx::Palette palette() const override;
virtual void page_did_invalidate(const Gfx::IntRect&) override; virtual void page_did_invalidate(const Gfx::IntRect&) override;
explicit PageHost(ClientConnection&); explicit PageHost(ClientConnection&);
Gfx::Palette palette() const;
void setup_palette(); void setup_palette();
ClientConnection& m_client; ClientConnection& m_client;