| 
									
										
										
										
											2020-06-17 17:31:42 +02:00
										 |  |  | /*
 | 
					
						
							| 
									
										
										
										
											2021-02-10 08:48:28 +01:00
										 |  |  |  * Copyright (c) 2020-2021, Andreas Kling <kling@serenityos.org> | 
					
						
							| 
									
										
										
										
											2020-06-17 17:31:42 +02:00
										 |  |  |  * | 
					
						
							| 
									
										
										
										
											2021-04-22 01:24:48 -07:00
										 |  |  |  * SPDX-License-Identifier: BSD-2-Clause | 
					
						
							| 
									
										
										
										
											2020-06-17 17:31:42 +02:00
										 |  |  |  */ | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | #include "WebContentClient.h"
 | 
					
						
							| 
									
										
										
										
											2020-08-17 16:20:47 +02:00
										 |  |  | #include "OutOfProcessWebView.h"
 | 
					
						
							| 
									
										
										
										
											2021-01-17 16:57:17 +01:00
										 |  |  | #include <AK/Debug.h>
 | 
					
						
							| 
									
										
										
										
											2021-04-15 10:36:20 -04:00
										 |  |  | #include <LibWeb/Cookie/ParsedCookie.h>
 | 
					
						
							| 
									
										
										
										
											2020-06-17 17:31:42 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-04-30 10:46:33 +02:00
										 |  |  | namespace WebView { | 
					
						
							| 
									
										
										
										
											2020-08-24 15:33:18 +04:30
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2023-02-08 23:05:44 +01:00
										 |  |  | WebContentClient::WebContentClient(NonnullOwnPtr<Core::LocalSocket> socket, ViewImplementation& view) | 
					
						
							| 
									
										
										
										
											2022-02-25 12:27:37 +02:00
										 |  |  |     : IPC::ConnectionToServer<WebContentClientEndpoint, WebContentServerEndpoint>(*this, move(socket)) | 
					
						
							| 
									
										
										
										
											2020-06-17 17:31:42 +02:00
										 |  |  |     , m_view(view) | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-01-30 18:20:40 +01:00
										 |  |  | void WebContentClient::die() | 
					
						
							|  |  |  | { | 
					
						
							| 
									
										
										
										
											2021-02-23 20:42:32 +01:00
										 |  |  |     VERIFY(on_web_content_process_crash); | 
					
						
							| 
									
										
										
										
											2021-01-30 18:20:40 +01:00
										 |  |  |     on_web_content_process_crash(); | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-04-01 20:58:27 +03:00
										 |  |  | void WebContentClient::did_paint(Gfx::IntRect const&, i32 bitmap_id) | 
					
						
							| 
									
										
										
										
											2020-06-17 17:31:42 +02:00
										 |  |  | { | 
					
						
							| 
									
										
										
										
											2021-05-02 19:54:34 +02:00
										 |  |  |     m_view.notify_server_did_paint({}, bitmap_id); | 
					
						
							| 
									
										
										
										
											2020-06-17 17:31:42 +02:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-09-13 00:33:23 +03:00
										 |  |  | void WebContentClient::did_finish_loading(AK::URL const& url) | 
					
						
							| 
									
										
										
										
											2020-06-17 17:31:42 +02:00
										 |  |  | { | 
					
						
							| 
									
										
										
										
											2021-05-02 19:54:34 +02:00
										 |  |  |     m_view.notify_server_did_finish_loading({}, url); | 
					
						
							| 
									
										
										
										
											2020-06-17 17:31:42 +02:00
										 |  |  | } | 
					
						
							| 
									
										
										
										
											2020-06-17 18:00:18 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-11-11 13:33:11 -05:00
										 |  |  | void WebContentClient::did_request_navigate_back() | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  |     m_view.notify_server_did_request_navigate_back({}); | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | void WebContentClient::did_request_navigate_forward() | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  |     m_view.notify_server_did_request_navigate_forward({}); | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | void WebContentClient::did_request_refresh() | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  |     m_view.notify_server_did_request_refresh({}); | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-05-02 19:54:34 +02:00
										 |  |  | void WebContentClient::did_invalidate_content_rect(Gfx::IntRect const& content_rect) | 
					
						
							| 
									
										
										
										
											2020-06-17 18:00:18 +02:00
										 |  |  | { | 
					
						
							| 
									
										
										
										
											2021-05-02 19:54:34 +02:00
										 |  |  |     dbgln_if(SPAM_DEBUG, "handle: WebContentClient::DidInvalidateContentRect! content_rect={}", content_rect); | 
					
						
							| 
									
										
										
										
											2020-06-17 18:00:18 +02:00
										 |  |  | 
 | 
					
						
							|  |  |  |     // FIXME: Figure out a way to coalesce these messages to reduce unnecessary painting
 | 
					
						
							| 
									
										
										
										
											2021-05-02 19:54:34 +02:00
										 |  |  |     m_view.notify_server_did_invalidate_content_rect({}, content_rect); | 
					
						
							| 
									
										
										
										
											2020-06-17 18:00:18 +02:00
										 |  |  | } | 
					
						
							| 
									
										
										
										
											2020-07-04 20:57:57 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-05-02 19:54:34 +02:00
										 |  |  | void WebContentClient::did_change_selection() | 
					
						
							| 
									
										
										
										
											2020-07-04 20:57:57 +02:00
										 |  |  | { | 
					
						
							| 
									
										
										
										
											2021-05-01 21:10:08 +02:00
										 |  |  |     dbgln_if(SPAM_DEBUG, "handle: WebContentClient::DidChangeSelection!"); | 
					
						
							| 
									
										
										
										
											2020-07-04 20:57:57 +02:00
										 |  |  |     m_view.notify_server_did_change_selection({}); | 
					
						
							|  |  |  | } | 
					
						
							| 
									
										
										
										
											2020-07-04 23:19:32 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-05-02 19:54:34 +02:00
										 |  |  | void WebContentClient::did_request_cursor_change(i32 cursor_type) | 
					
						
							| 
									
										
										
										
											2021-02-27 21:12:12 +00:00
										 |  |  | { | 
					
						
							| 
									
										
										
										
											2021-05-02 19:54:34 +02:00
										 |  |  |     if (cursor_type < 0 || cursor_type >= (i32)Gfx::StandardCursor::__Count) { | 
					
						
							| 
									
										
										
										
											2021-02-27 21:12:12 +00:00
										 |  |  |         dbgln("DidRequestCursorChange: Bad cursor type"); | 
					
						
							|  |  |  |         return; | 
					
						
							|  |  |  |     } | 
					
						
							| 
									
										
										
										
											2021-05-02 19:54:34 +02:00
										 |  |  |     m_view.notify_server_did_request_cursor_change({}, (Gfx::StandardCursor)cursor_type); | 
					
						
							| 
									
										
										
										
											2021-02-27 21:12:12 +00:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-12-06 21:35:32 +00:00
										 |  |  | void WebContentClient::did_layout(Gfx::IntSize content_size) | 
					
						
							| 
									
										
										
										
											2020-07-04 23:19:32 +02:00
										 |  |  | { | 
					
						
							| 
									
										
										
										
											2021-05-02 19:54:34 +02:00
										 |  |  |     dbgln_if(SPAM_DEBUG, "handle: WebContentClient::DidLayout! content_size={}", content_size); | 
					
						
							|  |  |  |     m_view.notify_server_did_layout({}, content_size); | 
					
						
							| 
									
										
										
										
											2020-07-04 23:19:32 +02:00
										 |  |  | } | 
					
						
							| 
									
										
										
										
											2020-07-04 23:40:17 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-12-04 18:02:33 +00:00
										 |  |  | void WebContentClient::did_change_title(DeprecatedString const& title) | 
					
						
							| 
									
										
										
										
											2020-07-04 23:40:17 +02:00
										 |  |  | { | 
					
						
							| 
									
										
										
										
											2021-05-02 19:54:34 +02:00
										 |  |  |     dbgln_if(SPAM_DEBUG, "handle: WebContentClient::DidChangeTitle! title={}", title); | 
					
						
							|  |  |  |     m_view.notify_server_did_change_title({}, title); | 
					
						
							| 
									
										
										
										
											2020-07-04 23:40:17 +02:00
										 |  |  | } | 
					
						
							| 
									
										
										
										
											2020-07-05 15:43:43 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-09-08 11:22:44 +01:00
										 |  |  | void WebContentClient::did_request_scroll(i32 x_delta, i32 y_delta) | 
					
						
							| 
									
										
										
										
											2021-03-02 08:39:07 +11:00
										 |  |  | { | 
					
						
							| 
									
										
										
										
											2021-09-08 11:22:44 +01:00
										 |  |  |     m_view.notify_server_did_request_scroll({}, x_delta, y_delta); | 
					
						
							| 
									
										
										
										
											2021-03-02 08:39:07 +11:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-12-06 20:27:44 +00:00
										 |  |  | void WebContentClient::did_request_scroll_to(Gfx::IntPoint scroll_position) | 
					
						
							| 
									
										
										
										
											2021-09-08 11:44:36 +01:00
										 |  |  | { | 
					
						
							|  |  |  |     m_view.notify_server_did_request_scroll_to({}, scroll_position); | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-05-02 19:54:34 +02:00
										 |  |  | void WebContentClient::did_request_scroll_into_view(Gfx::IntRect const& rect) | 
					
						
							| 
									
										
										
										
											2020-07-05 15:43:43 +02:00
										 |  |  | { | 
					
						
							| 
									
										
										
										
											2021-05-02 19:54:34 +02:00
										 |  |  |     dbgln_if(SPAM_DEBUG, "handle: WebContentClient::DidRequestScrollIntoView! rect={}", rect); | 
					
						
							|  |  |  |     m_view.notify_server_did_request_scroll_into_view({}, rect); | 
					
						
							| 
									
										
										
										
											2020-07-05 15:43:43 +02:00
										 |  |  | } | 
					
						
							| 
									
										
										
										
											2020-07-05 16:59:20 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-12-06 20:27:44 +00:00
										 |  |  | void WebContentClient::did_enter_tooltip_area(Gfx::IntPoint content_position, DeprecatedString const& title) | 
					
						
							| 
									
										
										
										
											2021-03-30 12:10:06 -04:00
										 |  |  | { | 
					
						
							| 
									
										
										
										
											2021-05-02 19:54:34 +02:00
										 |  |  |     m_view.notify_server_did_enter_tooltip_area({}, content_position, title); | 
					
						
							| 
									
										
										
										
											2021-03-30 12:10:06 -04:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-05-02 19:54:34 +02:00
										 |  |  | void WebContentClient::did_leave_tooltip_area() | 
					
						
							| 
									
										
										
										
											2021-03-30 12:10:06 -04:00
										 |  |  | { | 
					
						
							|  |  |  |     m_view.notify_server_did_leave_tooltip_area({}); | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-09-13 00:33:23 +03:00
										 |  |  | void WebContentClient::did_hover_link(AK::URL const& url) | 
					
						
							| 
									
										
										
										
											2020-07-05 16:59:20 +02:00
										 |  |  | { | 
					
						
							| 
									
										
										
										
											2021-05-02 19:54:34 +02:00
										 |  |  |     dbgln_if(SPAM_DEBUG, "handle: WebContentClient::DidHoverLink! url={}", url); | 
					
						
							|  |  |  |     m_view.notify_server_did_hover_link({}, url); | 
					
						
							| 
									
										
										
										
											2020-07-05 16:59:20 +02:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-05-02 19:54:34 +02:00
										 |  |  | void WebContentClient::did_unhover_link() | 
					
						
							| 
									
										
										
										
											2020-07-05 16:59:20 +02:00
										 |  |  | { | 
					
						
							| 
									
										
										
										
											2021-05-01 21:10:08 +02:00
										 |  |  |     dbgln_if(SPAM_DEBUG, "handle: WebContentClient::DidUnhoverLink!"); | 
					
						
							| 
									
										
										
										
											2020-07-05 16:59:20 +02:00
										 |  |  |     m_view.notify_server_did_unhover_link({}); | 
					
						
							|  |  |  | } | 
					
						
							| 
									
										
										
										
											2020-07-06 20:01:46 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-12-04 18:02:33 +00:00
										 |  |  | void WebContentClient::did_click_link(AK::URL const& url, DeprecatedString const& target, unsigned modifiers) | 
					
						
							| 
									
										
										
										
											2020-07-06 20:01:46 +02:00
										 |  |  | { | 
					
						
							| 
									
										
										
										
											2021-05-02 19:54:34 +02:00
										 |  |  |     m_view.notify_server_did_click_link({}, url, target, modifiers); | 
					
						
							| 
									
										
										
										
											2020-07-06 20:01:46 +02:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-12-04 18:02:33 +00:00
										 |  |  | void WebContentClient::did_middle_click_link(AK::URL const& url, DeprecatedString const& target, unsigned modifiers) | 
					
						
							| 
									
										
										
										
											2020-07-06 20:01:46 +02:00
										 |  |  | { | 
					
						
							| 
									
										
										
										
											2021-05-02 19:54:34 +02:00
										 |  |  |     m_view.notify_server_did_middle_click_link({}, url, target, modifiers); | 
					
						
							| 
									
										
										
										
											2020-07-06 20:01:46 +02:00
										 |  |  | } | 
					
						
							| 
									
										
										
										
											2020-07-06 21:58:16 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-11-10 00:29:35 +01:00
										 |  |  | void WebContentClient::did_start_loading(AK::URL const& url, bool is_redirect) | 
					
						
							| 
									
										
										
										
											2020-07-06 21:58:16 +02:00
										 |  |  | { | 
					
						
							| 
									
										
										
										
											2022-11-10 00:29:35 +01:00
										 |  |  |     m_view.notify_server_did_start_loading({}, url, is_redirect); | 
					
						
							| 
									
										
										
										
											2020-07-06 21:58:16 +02:00
										 |  |  | } | 
					
						
							| 
									
										
										
										
											2020-07-07 12:24:29 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-12-06 20:27:44 +00:00
										 |  |  | void WebContentClient::did_request_context_menu(Gfx::IntPoint content_position) | 
					
						
							| 
									
										
										
										
											2020-07-07 12:24:29 +02:00
										 |  |  | { | 
					
						
							| 
									
										
										
										
											2021-05-02 19:54:34 +02:00
										 |  |  |     m_view.notify_server_did_request_context_menu({}, content_position); | 
					
						
							| 
									
										
										
										
											2020-07-07 12:24:29 +02:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-12-06 20:27:44 +00:00
										 |  |  | void WebContentClient::did_request_link_context_menu(Gfx::IntPoint content_position, AK::URL const& url, DeprecatedString const& target, unsigned modifiers) | 
					
						
							| 
									
										
										
										
											2020-07-07 12:24:29 +02:00
										 |  |  | { | 
					
						
							| 
									
										
										
										
											2021-05-02 19:54:34 +02:00
										 |  |  |     m_view.notify_server_did_request_link_context_menu({}, content_position, url, target, modifiers); | 
					
						
							| 
									
										
										
										
											2020-07-07 12:24:29 +02:00
										 |  |  | } | 
					
						
							| 
									
										
										
										
											2020-08-24 15:33:18 +04:30
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-12-06 20:27:44 +00:00
										 |  |  | void WebContentClient::did_request_image_context_menu(Gfx::IntPoint content_position, AK::URL const& url, DeprecatedString const& target, unsigned modifiers, Gfx::ShareableBitmap const& bitmap) | 
					
						
							| 
									
										
										
										
											2021-04-11 16:49:25 +02:00
										 |  |  | { | 
					
						
							| 
									
										
										
										
											2021-05-02 19:54:34 +02:00
										 |  |  |     m_view.notify_server_did_request_image_context_menu({}, content_position, url, target, modifiers, bitmap); | 
					
						
							| 
									
										
										
										
											2021-04-11 16:49:25 +02:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-12-04 18:02:33 +00:00
										 |  |  | void WebContentClient::did_get_source(AK::URL const& url, DeprecatedString const& source) | 
					
						
							| 
									
										
										
										
											2021-02-23 06:17:23 -06:00
										 |  |  | { | 
					
						
							| 
									
										
										
										
											2021-05-02 19:54:34 +02:00
										 |  |  |     m_view.notify_server_did_get_source(url, source); | 
					
						
							| 
									
										
										
										
											2021-02-23 06:17:23 -06:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-12-04 18:02:33 +00:00
										 |  |  | void WebContentClient::did_get_dom_tree(DeprecatedString const& dom_tree) | 
					
						
							| 
									
										
										
										
											2021-06-07 16:35:10 +01:00
										 |  |  | { | 
					
						
							|  |  |  |     m_view.notify_server_did_get_dom_tree(dom_tree); | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-12-18 22:49:09 +00:00
										 |  |  | void WebContentClient::did_get_dom_node_properties(i32 node_id, DeprecatedString const& computed_style, DeprecatedString const& resolved_style, DeprecatedString const& custom_properties, DeprecatedString const& node_box_sizing) | 
					
						
							| 
									
										
										
										
											2021-08-27 12:47:30 +01:00
										 |  |  | { | 
					
						
							| 
									
										
										
										
											2022-12-18 22:49:09 +00:00
										 |  |  |     m_view.notify_server_did_get_dom_node_properties(node_id, computed_style, resolved_style, custom_properties, node_box_sizing); | 
					
						
							| 
									
										
										
										
											2021-08-27 12:47:30 +01:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-09-04 11:14:25 +01:00
										 |  |  | void WebContentClient::did_output_js_console_message(i32 message_index) | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  |     m_view.notify_server_did_output_js_console_message(message_index); | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-12-04 18:02:33 +00:00
										 |  |  | void WebContentClient::did_get_js_console_messages(i32 start_index, Vector<DeprecatedString> const& message_types, Vector<DeprecatedString> const& messages) | 
					
						
							| 
									
										
										
										
											2021-09-04 11:14:25 +01:00
										 |  |  | { | 
					
						
							|  |  |  |     m_view.notify_server_did_get_js_console_messages(start_index, message_types, messages); | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2023-03-13 17:30:51 -04:00
										 |  |  | void WebContentClient::did_request_alert(String const& message) | 
					
						
							| 
									
										
										
										
											2020-09-12 11:56:13 +02:00
										 |  |  | { | 
					
						
							| 
									
										
										
										
											2021-05-02 19:54:34 +02:00
										 |  |  |     m_view.notify_server_did_request_alert({}, message); | 
					
						
							| 
									
										
										
										
											2020-09-12 11:56:13 +02:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2023-03-13 17:30:51 -04:00
										 |  |  | void WebContentClient::did_request_confirm(String const& message) | 
					
						
							| 
									
										
										
										
											2021-02-10 08:48:28 +01:00
										 |  |  | { | 
					
						
							| 
									
										
										
										
											2022-11-15 15:49:36 -05:00
										 |  |  |     m_view.notify_server_did_request_confirm({}, message); | 
					
						
							| 
									
										
										
										
											2021-02-10 08:48:28 +01:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2023-03-13 17:30:51 -04:00
										 |  |  | void WebContentClient::did_request_prompt(String const& message, String const& default_) | 
					
						
							| 
									
										
										
										
											2021-02-20 12:05:18 +01:00
										 |  |  | { | 
					
						
							| 
									
										
										
										
											2022-11-15 15:49:36 -05:00
										 |  |  |     m_view.notify_server_did_request_prompt({}, message, default_); | 
					
						
							| 
									
										
										
										
											2021-02-20 12:05:18 +01:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2023-03-13 17:30:51 -04:00
										 |  |  | void WebContentClient::did_request_set_prompt_text(String const& message) | 
					
						
							| 
									
										
										
										
											2022-11-16 08:57:05 -05:00
										 |  |  | { | 
					
						
							|  |  |  |     m_view.notify_server_did_request_set_prompt_text({}, message); | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-11-16 06:58:14 -05:00
										 |  |  | void WebContentClient::did_request_accept_dialog() | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  |     m_view.notify_server_did_request_accept_dialog({}); | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | void WebContentClient::did_request_dismiss_dialog() | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  |     m_view.notify_server_did_request_dismiss_dialog({}); | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-05-02 19:54:34 +02:00
										 |  |  | void WebContentClient::did_change_favicon(Gfx::ShareableBitmap const& favicon) | 
					
						
							| 
									
										
										
										
											2021-03-26 10:41:25 -04:00
										 |  |  | { | 
					
						
							| 
									
										
										
										
											2021-05-02 19:54:34 +02:00
										 |  |  |     if (!favicon.is_valid()) { | 
					
						
							| 
									
										
										
										
											2021-03-26 10:41:25 -04:00
										 |  |  |         dbgln("DidChangeFavicon: Received invalid favicon"); | 
					
						
							|  |  |  |         return; | 
					
						
							|  |  |  |     } | 
					
						
							| 
									
										
										
										
											2021-05-02 19:54:34 +02:00
										 |  |  |     m_view.notify_server_did_change_favicon(*favicon.bitmap()); | 
					
						
							| 
									
										
										
										
											2021-03-26 10:41:25 -04:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-11-11 09:23:24 -05:00
										 |  |  | Messages::WebContentClient::DidRequestAllCookiesResponse WebContentClient::did_request_all_cookies(AK::URL const& url) | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  |     return m_view.notify_server_did_request_all_cookies({}, url); | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-12-04 18:02:33 +00:00
										 |  |  | Messages::WebContentClient::DidRequestNamedCookieResponse WebContentClient::did_request_named_cookie(AK::URL const& url, DeprecatedString const& name) | 
					
						
							| 
									
										
										
										
											2022-11-11 09:46:56 -05:00
										 |  |  | { | 
					
						
							|  |  |  |     return m_view.notify_server_did_request_named_cookie({}, url, name); | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-09-13 00:33:23 +03:00
										 |  |  | Messages::WebContentClient::DidRequestCookieResponse WebContentClient::did_request_cookie(AK::URL const& url, u8 source) | 
					
						
							| 
									
										
										
										
											2021-04-11 10:54:11 -04:00
										 |  |  | { | 
					
						
							| 
									
										
										
										
											2022-04-30 10:46:33 +02:00
										 |  |  |     return m_view.notify_server_did_request_cookie({}, url, static_cast<Web::Cookie::Source>(source)); | 
					
						
							| 
									
										
										
										
											2021-04-11 10:54:11 -04:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-09-13 00:33:23 +03:00
										 |  |  | void WebContentClient::did_set_cookie(AK::URL const& url, Web::Cookie::ParsedCookie const& cookie, u8 source) | 
					
						
							| 
									
										
										
										
											2021-04-11 10:54:11 -04:00
										 |  |  | { | 
					
						
							| 
									
										
										
										
											2022-04-30 10:46:33 +02:00
										 |  |  |     m_view.notify_server_did_set_cookie({}, url, cookie, static_cast<Web::Cookie::Source>(source)); | 
					
						
							| 
									
										
										
										
											2021-04-11 10:54:11 -04:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-11-28 11:24:04 -05:00
										 |  |  | void WebContentClient::did_update_cookie(Web::Cookie::Cookie const& cookie) | 
					
						
							| 
									
										
										
										
											2022-11-11 11:18:40 -05:00
										 |  |  | { | 
					
						
							| 
									
										
										
										
											2022-11-28 11:24:04 -05:00
										 |  |  |     m_view.notify_server_did_update_cookie({}, cookie); | 
					
						
							| 
									
										
										
										
											2022-11-11 11:18:40 -05:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2023-03-14 17:12:09 +03:00
										 |  |  | Messages::WebContentClient::DidRequestNewTabResponse WebContentClient::did_request_new_tab() | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  |     return m_view.notify_request_open_new_tab({}); | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2023-03-07 06:10:26 +03:00
										 |  |  | void WebContentClient::did_close_browsing_context() | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  |     m_view.notify_server_did_close_browsing_context({}); | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-02-20 17:03:39 -05:00
										 |  |  | void WebContentClient::did_update_resource_count(i32 count_waiting) | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  |     m_view.notify_server_did_update_resource_count(count_waiting); | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-11-09 09:51:39 -05:00
										 |  |  | void WebContentClient::did_request_restore_window() | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  |     m_view.notify_server_did_request_restore_window(); | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-12-06 20:27:44 +00:00
										 |  |  | Messages::WebContentClient::DidRequestRepositionWindowResponse WebContentClient::did_request_reposition_window(Gfx::IntPoint position) | 
					
						
							| 
									
										
										
										
											2022-11-09 09:51:39 -05:00
										 |  |  | { | 
					
						
							|  |  |  |     return m_view.notify_server_did_request_reposition_window(position); | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-12-06 21:35:32 +00:00
										 |  |  | Messages::WebContentClient::DidRequestResizeWindowResponse WebContentClient::did_request_resize_window(Gfx::IntSize size) | 
					
						
							| 
									
										
										
										
											2022-11-09 09:51:39 -05:00
										 |  |  | { | 
					
						
							|  |  |  |     return m_view.notify_server_did_request_resize_window(size); | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-11-09 10:04:09 -05:00
										 |  |  | Messages::WebContentClient::DidRequestMaximizeWindowResponse WebContentClient::did_request_maximize_window() | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  |     return m_view.notify_server_did_request_maximize_window(); | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | Messages::WebContentClient::DidRequestMinimizeWindowResponse WebContentClient::did_request_minimize_window() | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  |     return m_view.notify_server_did_request_minimize_window(); | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-11-09 19:09:17 +01:00
										 |  |  | Messages::WebContentClient::DidRequestFullscreenWindowResponse WebContentClient::did_request_fullscreen_window() | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  |     return m_view.notify_server_did_request_fullscreen_window(); | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-12-04 18:02:33 +00:00
										 |  |  | void WebContentClient::did_request_file(DeprecatedString const& path, i32 request_id) | 
					
						
							| 
									
										
										
										
											2022-02-26 17:50:31 +01:00
										 |  |  | { | 
					
						
							|  |  |  |     m_view.notify_server_did_request_file({}, path, request_id); | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-11-21 16:07:47 +00:00
										 |  |  | void WebContentClient::did_finish_handling_input_event(bool event_was_accepted) | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  |     m_view.notify_server_did_finish_handling_input_event(event_was_accepted); | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-12-07 19:30:37 -06:00
										 |  |  | void WebContentClient::did_get_accessibility_tree(DeprecatedString const& accessibility_tree) | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  |     m_view.notify_server_did_get_accessibility_tree(accessibility_tree); | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2020-08-24 15:33:18 +04:30
										 |  |  | } |