mirror of
https://github.com/RGBCube/serenity
synced 2025-05-31 08:08:12 +00:00
LibWebView+WebContent: Make the DOM node inspection IPC async
This commit is contained in:
parent
4c3bff264e
commit
760ba5932b
9 changed files with 80 additions and 53 deletions
|
@ -131,28 +131,19 @@ void ViewImplementation::inspect_dom_tree()
|
|||
client().async_inspect_dom_tree();
|
||||
}
|
||||
|
||||
void ViewImplementation::inspect_dom_node(i32 node_id, Optional<Web::CSS::Selector::PseudoElement::Type> pseudo_element)
|
||||
{
|
||||
client().async_inspect_dom_node(node_id, move(pseudo_element));
|
||||
}
|
||||
|
||||
void ViewImplementation::inspect_accessibility_tree()
|
||||
{
|
||||
client().async_inspect_accessibility_tree();
|
||||
}
|
||||
|
||||
ErrorOr<ViewImplementation::DOMNodeProperties> ViewImplementation::inspect_dom_node(i32 node_id, Optional<Web::CSS::Selector::PseudoElement::Type> pseudo_element)
|
||||
{
|
||||
auto response = client().inspect_dom_node(node_id, pseudo_element);
|
||||
if (!response.has_style())
|
||||
return Error::from_string_view("Inspected node returned no style"sv);
|
||||
return DOMNodeProperties {
|
||||
.computed_style_json = TRY(String::from_byte_string(response.take_computed_style())),
|
||||
.resolved_style_json = TRY(String::from_byte_string(response.take_resolved_style())),
|
||||
.custom_properties_json = TRY(String::from_byte_string(response.take_custom_properties())),
|
||||
.node_box_sizing_json = TRY(String::from_byte_string(response.take_node_box_sizing())),
|
||||
.aria_properties_state_json = TRY(String::from_byte_string(response.take_aria_properties_state())),
|
||||
};
|
||||
}
|
||||
|
||||
void ViewImplementation::clear_inspected_dom_node()
|
||||
{
|
||||
client().inspect_dom_node(0, {});
|
||||
inspect_dom_node(0, {});
|
||||
}
|
||||
|
||||
i32 ViewImplementation::get_hovered_node_id()
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue