From 46cd0d17ee728c2ff28553e560b8d3458149f76c Mon Sep 17 00:00:00 2001 From: George Roman Date: Sun, 3 Mar 2019 10:28:10 +0200 Subject: Implement WebDriver FindElementFromElement command --- components/script/webdriver_handlers.rs | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) (limited to 'components/script/webdriver_handlers.rs') diff --git a/components/script/webdriver_handlers.rs b/components/script/webdriver_handlers.rs index 3113fb0a527..89e2df12c9d 100644 --- a/components/script/webdriver_handlers.rs +++ b/components/script/webdriver_handlers.rs @@ -203,6 +203,23 @@ pub fn handle_find_elements_css( reply.send(node_ids).unwrap(); } +pub fn handle_find_element_element_css( + documents: &Documents, + pipeline: PipelineId, + element_id: String, + selector: String, + reply: IpcSender, ()>>, +) { + let node_id = find_node_by_unique_id(documents, pipeline, element_id) + .ok_or(()) + .and_then(|node| { + node.query_selector(DOMString::from(selector)) + .map_err(|_| ()) + }) + .map(|node| node.map(|x| x.upcast::().unique_id())); + reply.send(node_id).unwrap(); +} + pub fn handle_focus_element( documents: &Documents, pipeline: PipelineId, -- cgit v1.2.3