Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(547)

Unified Diff: content/browser/frame_host/render_frame_host_impl.cc

Issue 1413543005: Use FrameTreeNode ID as frameId in extension APIs (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Improve port lifetime management, add tests Created 5 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: content/browser/frame_host/render_frame_host_impl.cc
diff --git a/content/browser/frame_host/render_frame_host_impl.cc b/content/browser/frame_host/render_frame_host_impl.cc
index 39e9fc5c4d805792d3c1c0e2739b5b8ac5143f44..cca3eb68046b0dbba2be7eb60829bb7d8566e9f6 100644
--- a/content/browser/frame_host/render_frame_host_impl.cc
+++ b/content/browser/frame_host/render_frame_host_impl.cc
@@ -134,6 +134,11 @@ RenderFrameHost* RenderFrameHost::FromID(int render_process_id,
}
// static
+RenderFrameHost* RenderFrameHost::FromFrameTreeNodeID(int frame_tree_node_id) {
+ return RenderFrameHostImpl::FromFrameTreeNodeID(frame_tree_node_id);
+}
+
+// static
void RenderFrameHost::AllowInjectingJavaScriptForAndroidWebView() {
g_allow_injecting_javascript = true;
}
@@ -149,6 +154,15 @@ RenderFrameHostImpl* RenderFrameHostImpl::FromID(int process_id,
}
// static
+RenderFrameHostImpl* RenderFrameHostImpl::FromFrameTreeNodeID(
+ int frame_tree_node_id) {
+ DCHECK_CURRENTLY_ON(BrowserThread::UI);
+ FrameTreeNode* frame_tree_node =
+ FrameTreeNode::GloballyFindByID(frame_tree_node_id);
+ return frame_tree_node ? frame_tree_node->current_frame_host() : nullptr;
+}
+
+// static
RenderFrameHost* RenderFrameHost::FromAXTreeID(
int ax_tree_id) {
return RenderFrameHostImpl::FromAXTreeID(ax_tree_id);
@@ -273,6 +287,17 @@ RenderFrameHost* RenderFrameHostImpl::GetParent() {
return parent_node->current_frame_host();
}
+RenderFrameHost* RenderFrameHostImpl::FindByFrameTreeNodeID(
+ int frame_tree_node_id) {
+ FrameTreeNode* child =
+ frame_tree_node_->frame_tree()->FindByID(frame_tree_node_id);
Charlie Reis 2015/10/30 23:25:09 This doesn't quite match the documentation, which
robwu 2015/10/31 00:10:45 I was reading frame_tree() as the frame tree roote
robwu 2015/11/02 19:08:34 Done.
Charlie Reis 2015/11/03 00:23:49 No, a FrameTree represents the whole tree, startin
+ return child ? child->current_frame_host() : nullptr;
+}
+
+int RenderFrameHostImpl::GetFrameTreeNodeID() {
+ return frame_tree_node_->frame_tree_node_id();
+}
+
const std::string& RenderFrameHostImpl::GetFrameName() {
return frame_tree_node_->frame_name();
}

Powered by Google App Engine
This is Rietveld 408576698