LibWeb+LibWebView+WebContent: Add traverse_history_by_delta() IPC call

This commit is contained in:
Aliaksandr Kalenik 2024-04-13 22:33:48 +02:00 committed by Alexander Kalenik
parent a71b2e5fd9
commit 0c839f0421
Notes: sideshowbarker 2024-07-17 10:05:47 +09:00
7 changed files with 21 additions and 0 deletions

View file

@ -79,6 +79,11 @@ void Page::reload()
top_level_traversable()->reload(); top_level_traversable()->reload();
} }
void Page::traverse_the_history_by_delta(int delta)
{
top_level_traversable()->traverse_the_history_by_delta(delta);
}
Gfx::Palette Page::palette() const Gfx::Palette Page::palette() const
{ {
return m_client->palette(); return m_client->palette();

View file

@ -78,6 +78,8 @@ public:
void reload(); void reload();
void traverse_the_history_by_delta(int delta);
CSSPixelPoint device_to_css_point(DevicePixelPoint) const; CSSPixelPoint device_to_css_point(DevicePixelPoint) const;
DevicePixelPoint css_to_device_point(CSSPixelPoint) const; DevicePixelPoint css_to_device_point(CSSPixelPoint) const;
DevicePixelRect css_to_device_rect(CSSPixelRect) const; DevicePixelRect css_to_device_rect(CSSPixelRect) const;

View file

@ -95,6 +95,11 @@ void ViewImplementation::reload()
client().async_reload(page_id()); client().async_reload(page_id());
} }
void ViewImplementation::traverse_the_history_by_delta(int delta)
{
client().async_traverse_the_history_by_delta(page_id(), delta);
}
void ViewImplementation::zoom_in() void ViewImplementation::zoom_in()
{ {
if (m_zoom_level >= ZOOM_MAX_LEVEL) if (m_zoom_level >= ZOOM_MAX_LEVEL)

View file

@ -50,6 +50,7 @@ public:
void load_html(StringView); void load_html(StringView);
void load_empty_document(); void load_empty_document();
void reload(); void reload();
void traverse_the_history_by_delta(int delta);
void zoom_in(); void zoom_in();
void zoom_out(); void zoom_out();

View file

@ -162,6 +162,12 @@ void ConnectionFromClient::reload(u64 page_id)
page->page().reload(); page->page().reload();
} }
void ConnectionFromClient::traverse_the_history_by_delta(u64 page_id, i32 delta)
{
if (auto page = this->page(page_id); page.has_value())
page->page().traverse_the_history_by_delta(delta);
}
void ConnectionFromClient::set_viewport_rect(u64 page_id, Web::DevicePixelRect const& rect) void ConnectionFromClient::set_viewport_rect(u64 page_id, Web::DevicePixelRect const& rect)
{ {
if (auto page = this->page(page_id); page.has_value()) if (auto page = this->page(page_id); page.has_value())

View file

@ -58,6 +58,7 @@ private:
virtual void load_url(u64 page_id, URL::URL const&) override; virtual void load_url(u64 page_id, URL::URL const&) override;
virtual void load_html(u64 page_id, ByteString const&) override; virtual void load_html(u64 page_id, ByteString const&) override;
virtual void reload(u64 page_id) override; virtual void reload(u64 page_id) override;
virtual void traverse_the_history_by_delta(u64 page_id, i32 delta) override;
virtual void set_viewport_rect(u64 page_id, Web::DevicePixelRect const&) override; virtual void set_viewport_rect(u64 page_id, Web::DevicePixelRect const&) override;
virtual void key_event(u64 page_id, Web::KeyEvent const&) override; virtual void key_event(u64 page_id, Web::KeyEvent const&) override;
virtual void mouse_event(u64 page_id, Web::MouseEvent const&) override; virtual void mouse_event(u64 page_id, Web::MouseEvent const&) override;

View file

@ -25,6 +25,7 @@ endpoint WebContentServer
load_url(u64 page_id, URL::URL url) =| load_url(u64 page_id, URL::URL url) =|
load_html(u64 page_id, ByteString html) =| load_html(u64 page_id, ByteString html) =|
reload(u64 page_id) =| reload(u64 page_id) =|
traverse_the_history_by_delta(u64 page_id, i32 delta) =|
add_backing_store(u64 page_id, i32 front_bitmap_id, Gfx::ShareableBitmap front_bitmap, i32 back_bitmap_id, Gfx::ShareableBitmap back_bitmap) =| add_backing_store(u64 page_id, i32 front_bitmap_id, Gfx::ShareableBitmap front_bitmap, i32 back_bitmap_id, Gfx::ShareableBitmap back_bitmap) =|
ready_to_paint(u64 page_id) =| ready_to_paint(u64 page_id) =|