OLD | NEW |
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "content/browser/frame_host/frame_tree.h" | 5 #include "content/browser/frame_host/frame_tree.h" |
6 | 6 |
7 #include <queue> | 7 #include <queue> |
8 | 8 |
9 #include "base/bind.h" | 9 #include "base/bind.h" |
10 #include "base/callback.h" | 10 #include "base/callback.h" |
(...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
48 RenderWidgetHostDelegate* render_widget_delegate, | 48 RenderWidgetHostDelegate* render_widget_delegate, |
49 RenderViewHostManager::Delegate* manager_delegate) | 49 RenderViewHostManager::Delegate* manager_delegate) |
50 : render_view_delegate_(render_view_delegate), | 50 : render_view_delegate_(render_view_delegate), |
51 render_widget_delegate_(render_widget_delegate), | 51 render_widget_delegate_(render_widget_delegate), |
52 manager_delegate_(manager_delegate), | 52 manager_delegate_(manager_delegate), |
53 root_(new FrameTreeNode(navigator, | 53 root_(new FrameTreeNode(navigator, |
54 render_view_delegate, | 54 render_view_delegate, |
55 render_widget_delegate, | 55 render_widget_delegate, |
56 manager_delegate, | 56 manager_delegate, |
57 FrameTreeNode::kInvalidFrameId, | 57 FrameTreeNode::kInvalidFrameId, |
58 std::string(), | 58 std::string())) { |
59 scoped_ptr<RenderFrameHostImpl>())) { | |
60 } | 59 } |
61 | 60 |
62 FrameTree::~FrameTree() { | 61 FrameTree::~FrameTree() { |
63 } | 62 } |
64 | 63 |
65 FrameTreeNode* FrameTree::FindByID(int64 frame_tree_node_id) { | 64 FrameTreeNode* FrameTree::FindByID(int64 frame_tree_node_id) { |
66 FrameTreeNode* node = NULL; | 65 FrameTreeNode* node = NULL; |
67 ForEach(base::Bind(&FrameTreeNodeForId, frame_tree_node_id, &node)); | 66 ForEach(base::Bind(&FrameTreeNodeForId, frame_tree_node_id, &node)); |
68 return node; | 67 return node; |
69 } | 68 } |
(...skipping 89 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
159 ForEach(base::Bind(&FrameTreeNodeForFrameId, frame_id, &node)); | 158 ForEach(base::Bind(&FrameTreeNodeForFrameId, frame_id, &node)); |
160 return node; | 159 return node; |
161 } | 160 } |
162 | 161 |
163 scoped_ptr<FrameTreeNode> FrameTree::CreateNode( | 162 scoped_ptr<FrameTreeNode> FrameTree::CreateNode( |
164 int64 frame_id, | 163 int64 frame_id, |
165 const std::string& frame_name, | 164 const std::string& frame_name, |
166 int render_frame_host_id, | 165 int render_frame_host_id, |
167 Navigator* navigator, | 166 Navigator* navigator, |
168 RenderProcessHost* render_process_host) { | 167 RenderProcessHost* render_process_host) { |
| 168 scoped_ptr<FrameTreeNode> frame_tree_node(new FrameTreeNode(navigator, |
| 169 render_view_delegate_, render_widget_delegate_, manager_delegate_, |
| 170 frame_id, frame_name)); |
| 171 |
169 scoped_ptr<RenderFrameHostImpl> render_frame_host( | 172 scoped_ptr<RenderFrameHostImpl> render_frame_host( |
170 RenderFrameHostFactory::Create( | 173 RenderFrameHostFactory::Create( |
171 root_->render_frame_host()->render_view_host(), | 174 root_->render_frame_host()->render_view_host(), |
172 this, | 175 this, frame_tree_node.get(), render_frame_host_id, false)); |
173 render_frame_host_id, | |
174 false)); | |
175 | 176 |
176 return make_scoped_ptr(new FrameTreeNode(navigator, | 177 frame_tree_node->set_render_frame_host(render_frame_host.release(), true); |
177 render_view_delegate_, render_widget_delegate_, manager_delegate_, | 178 return frame_tree_node.Pass(); |
178 frame_id, frame_name, render_frame_host.Pass())); | |
179 } | 179 } |
180 | 180 |
181 } // namespace content | 181 } // namespace content |
OLD | NEW |