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

Side by Side Diff: content/browser/frame_host/render_frame_host_impl.cc

Issue 1359163005: Remove surface_id from RenderWidget/RenderWidgetHost and friends (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@channel_creation_preempt
Patch Set: fix more 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 unified diff | Download patch
OLDNEW
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/render_frame_host_impl.h" 5 #include "content/browser/frame_host/render_frame_host_impl.h"
6 6
7 #include "base/bind.h" 7 #include "base/bind.h"
8 #include "base/command_line.h" 8 #include "base/command_line.h"
9 #include "base/containers/hash_tables.h" 9 #include "base/containers/hash_tables.h"
10 #include "base/lazy_instance.h" 10 #include "base/lazy_instance.h"
(...skipping 152 matching lines...) Expand 10 before | Expand all | Expand 10 after
163 } 163 }
164 164
165 RenderFrameHostImpl::RenderFrameHostImpl(SiteInstance* site_instance, 165 RenderFrameHostImpl::RenderFrameHostImpl(SiteInstance* site_instance,
166 RenderViewHostImpl* render_view_host, 166 RenderViewHostImpl* render_view_host,
167 RenderFrameHostDelegate* delegate, 167 RenderFrameHostDelegate* delegate,
168 RenderWidgetHostDelegate* rwh_delegate, 168 RenderWidgetHostDelegate* rwh_delegate,
169 FrameTree* frame_tree, 169 FrameTree* frame_tree,
170 FrameTreeNode* frame_tree_node, 170 FrameTreeNode* frame_tree_node,
171 int32 routing_id, 171 int32 routing_id,
172 int32 widget_routing_id, 172 int32 widget_routing_id,
173 int32 surface_id,
174 int flags) 173 int flags)
175 : render_view_host_(render_view_host), 174 : render_view_host_(render_view_host),
176 delegate_(delegate), 175 delegate_(delegate),
177 site_instance_(static_cast<SiteInstanceImpl*>(site_instance)), 176 site_instance_(static_cast<SiteInstanceImpl*>(site_instance)),
178 process_(site_instance->GetProcess()), 177 process_(site_instance->GetProcess()),
179 cross_process_frame_connector_(NULL), 178 cross_process_frame_connector_(NULL),
180 render_frame_proxy_host_(NULL), 179 render_frame_proxy_host_(NULL),
181 frame_tree_(frame_tree), 180 frame_tree_(frame_tree),
182 frame_tree_node_(frame_tree_node), 181 frame_tree_node_(frame_tree_node),
183 render_widget_host_(nullptr), 182 render_widget_host_(nullptr),
(...skipping 21 matching lines...) Expand all
205 } else { 204 } else {
206 rfh_state_ = STATE_DEFAULT; 205 rfh_state_ = STATE_DEFAULT;
207 GetSiteInstance()->increment_active_frame_count(); 206 GetSiteInstance()->increment_active_frame_count();
208 } 207 }
209 208
210 SetUpMojoIfNeeded(); 209 SetUpMojoIfNeeded();
211 swapout_event_monitor_timeout_.reset(new TimeoutMonitor(base::Bind( 210 swapout_event_monitor_timeout_.reset(new TimeoutMonitor(base::Bind(
212 &RenderFrameHostImpl::OnSwappedOut, weak_ptr_factory_.GetWeakPtr()))); 211 &RenderFrameHostImpl::OnSwappedOut, weak_ptr_factory_.GetWeakPtr())));
213 212
214 if (widget_routing_id != MSG_ROUTING_NONE) { 213 if (widget_routing_id != MSG_ROUTING_NONE) {
215 render_widget_host_ = new RenderWidgetHostImpl( 214 render_widget_host_ = new RenderWidgetHostImpl(rwh_delegate, GetProcess(),
216 rwh_delegate, GetProcess(), widget_routing_id, surface_id, hidden); 215 widget_routing_id, hidden);
217 render_widget_host_->set_owned_by_render_frame_host(true); 216 render_widget_host_->set_owned_by_render_frame_host(true);
218 } else {
219 DCHECK_EQ(0, surface_id);
220 } 217 }
221 } 218 }
222 219
223 RenderFrameHostImpl::~RenderFrameHostImpl() { 220 RenderFrameHostImpl::~RenderFrameHostImpl() {
224 GetProcess()->RemoveRoute(routing_id_); 221 GetProcess()->RemoveRoute(routing_id_);
225 g_routing_id_frame_map.Get().erase( 222 g_routing_id_frame_map.Get().erase(
226 RenderFrameHostID(GetProcess()->GetID(), routing_id_)); 223 RenderFrameHostID(GetProcess()->GetID(), routing_id_));
227 224
228 if (delegate_ && render_frame_created_) 225 if (delegate_ && render_frame_created_)
229 delegate_->RenderFrameDeleted(this); 226 delegate_->RenderFrameDeleted(this);
(...skipping 398 matching lines...) Expand 10 before | Expand all | Expand 10 after
628 FrameMsg_NewFrame_Params params; 625 FrameMsg_NewFrame_Params params;
629 params.routing_id = routing_id_; 626 params.routing_id = routing_id_;
630 params.proxy_routing_id = proxy_routing_id; 627 params.proxy_routing_id = proxy_routing_id;
631 params.opener_routing_id = opener_routing_id; 628 params.opener_routing_id = opener_routing_id;
632 params.parent_routing_id = parent_routing_id; 629 params.parent_routing_id = parent_routing_id;
633 params.previous_sibling_routing_id = previous_sibling_routing_id; 630 params.previous_sibling_routing_id = previous_sibling_routing_id;
634 params.replication_state = frame_tree_node()->current_replication_state(); 631 params.replication_state = frame_tree_node()->current_replication_state();
635 632
636 if (render_widget_host_) { 633 if (render_widget_host_) {
637 params.widget_params.routing_id = render_widget_host_->GetRoutingID(); 634 params.widget_params.routing_id = render_widget_host_->GetRoutingID();
638 params.widget_params.surface_id = render_widget_host_->surface_id();
639 params.widget_params.hidden = render_widget_host_->is_hidden(); 635 params.widget_params.hidden = render_widget_host_->is_hidden();
640 } else { 636 } else {
641 // MSG_ROUTING_NONE will prevent a new RenderWidget from being created in 637 // MSG_ROUTING_NONE will prevent a new RenderWidget from being created in
642 // the renderer process. 638 // the renderer process.
643 params.widget_params.routing_id = MSG_ROUTING_NONE; 639 params.widget_params.routing_id = MSG_ROUTING_NONE;
644 params.widget_params.surface_id = 0;
645 params.widget_params.hidden = true; 640 params.widget_params.hidden = true;
646 } 641 }
647 642
648 Send(new FrameMsg_NewFrame(params)); 643 Send(new FrameMsg_NewFrame(params));
649 644
650 // The RenderWidgetHost takes ownership of its view. It is tied to the 645 // The RenderWidgetHost takes ownership of its view. It is tied to the
651 // lifetime of the current RenderProcessHost for this RenderFrameHost. 646 // lifetime of the current RenderProcessHost for this RenderFrameHost.
652 if (render_widget_host_) { 647 if (render_widget_host_) {
653 RenderWidgetHostView* rwhv = 648 RenderWidgetHostView* rwhv =
654 new RenderWidgetHostViewChildFrame(render_widget_host_); 649 new RenderWidgetHostViewChildFrame(render_widget_host_);
(...skipping 1596 matching lines...) Expand 10 before | Expand all | Expand 10 after
2251 BrowserPluginInstanceIDToAXTreeID(value))); 2246 BrowserPluginInstanceIDToAXTreeID(value)));
2252 break; 2247 break;
2253 case AX_CONTENT_INT_ATTRIBUTE_LAST: 2248 case AX_CONTENT_INT_ATTRIBUTE_LAST:
2254 NOTREACHED(); 2249 NOTREACHED();
2255 break; 2250 break;
2256 } 2251 }
2257 } 2252 }
2258 } 2253 }
2259 2254
2260 } // namespace content 2255 } // namespace content
OLDNEW
« no previous file with comments | « content/browser/frame_host/render_frame_host_impl.h ('k') | content/browser/frame_host/render_frame_host_manager.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698