Chromium Code Reviews| Index: content/renderer/context_menu_params_builder.cc |
| diff --git a/content/renderer/context_menu_params_builder.cc b/content/renderer/context_menu_params_builder.cc |
| index 7cd34beb46476c69e2ae3a4e8203745954f3ae92..9044aa22af802bc09943dd0f8584d456a87034c6 100644 |
| --- a/content/renderer/context_menu_params_builder.cc |
| +++ b/content/renderer/context_menu_params_builder.cc |
| @@ -55,14 +55,7 @@ ContextMenuParams ContextMenuParamsBuilder::Build( |
| } |
| if (!params.link_url.is_empty()) { |
| - blink::WebNode selectedNode = data.node; |
| - |
| - // If there are other embedded tags (like <a ..>Some <b>text</b></a>) |
| - // we need to extract the parent <a/> node. |
| - while (!selectedNode.isLink() && !selectedNode.parentNode().isNull()) { |
| - selectedNode = selectedNode.parentNode(); |
| - } |
| - |
| + blink::WebNode selectedNode = extractParentAnchorNode(data.node); |
| blink::WebElement selectedElement = selectedNode.to<blink::WebElement>(); |
| if (selectedNode.isLink() && !selectedElement.isNull()) { |
| params.link_text = selectedElement.innerText(); |
| @@ -85,4 +78,15 @@ ContextMenuParams ContextMenuParamsBuilder::Build( |
| return params; |
| } |
| +blink::WebNode ContextMenuParamsBuilder::extractParentAnchorNode( |
| + const blink::WebNode& node) { |
| + blink::WebNode selectedNode = node; |
|
darin (slow to review)
2014/07/22 17:34:39
nit: selectedNode -> selected_node
Nate Chapin
2014/07/22 18:19:55
Done.
|
| + |
| + // If there are other embedded tags (like <a ..>Some <b>text</b></a>) |
| + // we need to extract the parent <a/> node. |
| + while (!selectedNode.isLink() && !selectedNode.parentNode().isNull()) |
| + selectedNode = selectedNode.parentNode(); |
| + return selectedNode; |
| +} |
| + |
| } // namespace content |