LibWeb: Add OutOfProcessWebView::load_html()

This commit is contained in:
Linus Groh 2020-10-08 21:11:01 +01:00 committed by Andreas Kling
parent 216ccaf805
commit e40135fefd
7 changed files with 25 additions and 0 deletions

View file

@ -52,6 +52,12 @@ void OutOfProcessWebView::load(const URL& url)
client().post_message(Messages::WebContentServer::LoadURL(url));
}
void OutOfProcessWebView::load_html(const StringView& html, const URL& url)
{
m_url = url;
client().post_message(Messages::WebContentServer::LoadHTML(html, url));
}
void OutOfProcessWebView::paint_event(GUI::PaintEvent& event)
{
GUI::ScrollableWidget::paint_event(event);

View file

@ -46,6 +46,8 @@ public:
URL url() const { return m_url; }
void load(const URL&);
void load_html(const StringView&, const URL&);
void notify_server_did_layout(Badge<WebContentClient>, const Gfx::IntSize& content_size);
void notify_server_did_paint(Badge<WebContentClient>, i32 shbuf_id);
void notify_server_did_invalidate_content_rect(Badge<WebContentClient>, const Gfx::IntRect&);

View file

@ -62,6 +62,11 @@ void Page::load(const LoadRequest& request)
main_frame().loader().load(request, FrameLoader::Type::Navigation);
}
void Page::load_html(const StringView& html, const URL& url)
{
main_frame().loader().load_html(html, url);
}
Gfx::Palette Page::palette() const
{
return m_client.palette();

View file

@ -62,6 +62,8 @@ public:
void load(const URL&);
void load(const LoadRequest&);
void load_html(const StringView&, const URL&);
bool handle_mouseup(const Gfx::IntPoint&, unsigned button, unsigned modifiers);
bool handle_mousedown(const Gfx::IntPoint&, unsigned button, unsigned modifiers);
bool handle_mousemove(const Gfx::IntPoint&, unsigned buttons, unsigned modifiers);

View file

@ -91,6 +91,14 @@ void ClientConnection::handle(const Messages::WebContentServer::LoadURL& message
page().load(message.url());
}
void ClientConnection::handle(const Messages::WebContentServer::LoadHTML& message)
{
#ifdef DEBUG_SPAM
dbg() << "handle: WebContentServer::LoadHTML: html=" << message.html() << ", url=" << message.url();
#endif
page().load_html(message.html(), message.url());
}
void ClientConnection::handle(const Messages::WebContentServer::SetViewportRect& message)
{
#ifdef DEBUG_SPAM

View file

@ -53,6 +53,7 @@ private:
virtual OwnPtr<Messages::WebContentServer::GreetResponse> handle(const Messages::WebContentServer::Greet&) override;
virtual void handle(const Messages::WebContentServer::UpdateSystemTheme&) override;
virtual void handle(const Messages::WebContentServer::LoadURL&) override;
virtual void handle(const Messages::WebContentServer::LoadHTML&) override;
virtual void handle(const Messages::WebContentServer::Paint&) override;
virtual void handle(const Messages::WebContentServer::SetViewportRect&) override;
virtual void handle(const Messages::WebContentServer::MouseDown&) override;

View file

@ -5,6 +5,7 @@ endpoint WebContentServer = 89
UpdateSystemTheme(i32 shbuf_id) =|
LoadURL(URL url) =|
LoadHTML(String html, URL url) =|
Paint(Gfx::IntRect content_rect, i32 shbuf_id) =|
SetViewportRect(Gfx::IntRect rect) =|