| Index: content/browser/web_contents/web_contents_impl.cc
|
| diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc
|
| index 2dd5a8c5656636e81c0b1badbc9721027901ea9b..682d9974cf0f01f0250987c1e4562adfa6cef73c 100644
|
| --- a/content/browser/web_contents/web_contents_impl.cc
|
| +++ b/content/browser/web_contents/web_contents_impl.cc
|
| @@ -3429,10 +3429,18 @@ void WebContentsImpl::UpdateState(RenderViewHost* rvh,
|
| // TODO(nasko): This should go through RenderFrameHost.
|
| // TODO(creis): We can't update state for cross-process subframes until we
|
| // have FrameNavigationEntries. Once we do, this should be a DCHECK.
|
| + LOG(ERROR) << "WCI::UpdateState: "
|
| + << rvh->GetProcess()->GetID()
|
| + << ":" << rvh->GetRoutingID()
|
| + << ":" << rvh->GetSiteInstance()->GetSiteURL()
|
| + << ":" << GetRenderManager();
|
| +
|
| if (rvh != GetRenderViewHost() &&
|
| !GetRenderManager()->IsRVHOnSwappedOutList(
|
| - static_cast<RenderViewHostImpl*>(rvh)))
|
| + static_cast<RenderViewHostImpl*>(rvh))) {
|
| + LOG(ERROR) << "WCI::UpdateState: rvh is not a match.";
|
| return;
|
| + }
|
|
|
| // We must be prepared to handle state updates for any page, these occur
|
| // when the user is scrolling and entering form data, as well as when we're
|
| @@ -3717,7 +3725,7 @@ WebPreferences WebContentsImpl::GetWebkitPrefs() {
|
| int WebContentsImpl::CreateSwappedOutRenderView(
|
| SiteInstance* instance) {
|
| return GetRenderManager()->CreateRenderFrame(instance, MSG_ROUTING_NONE,
|
| - true, true);
|
| + true, true, true);
|
| }
|
|
|
| void WebContentsImpl::OnUserGesture() {
|
| @@ -3882,7 +3890,7 @@ int WebContentsImpl::CreateOpenerRenderViews(SiteInstance* instance) {
|
| // Create a swapped out RenderView in the given SiteInstance if none exists,
|
| // setting its opener to the given route_id. Return the new view's route_id.
|
| return GetRenderManager()->CreateRenderFrame(instance, opener_route_id,
|
| - true, true);
|
| + true, true, true);
|
| }
|
|
|
| NavigationControllerImpl& WebContentsImpl::GetControllerForRenderManager() {
|
| @@ -3904,6 +3912,8 @@ bool WebContentsImpl::CreateRenderViewForRenderManager(
|
| int proxy_routing_id,
|
| bool for_main_frame) {
|
| TRACE_EVENT0("browser", "WebContentsImpl::CreateRenderViewForRenderManager");
|
| + LOG(ERROR) << "WC::CreateRenderViewForRenderManager: "
|
| + << "for_main_frame:" << for_main_frame;
|
| // Can be NULL during tests.
|
| RenderWidgetHostViewBase* rwh_view;
|
| // TODO(kenrb): RenderWidgetHostViewChildFrame special casing is temporary
|
| @@ -3948,6 +3958,24 @@ bool WebContentsImpl::CreateRenderViewForRenderManager(
|
| return true;
|
| }
|
|
|
| +bool WebContentsImpl::CreateRenderFrameForRenderManager(
|
| + RenderFrameHost* render_frame_host,
|
| + int parent_routing_id) {
|
| + TRACE_EVENT0("browser", "WebContentsImpl::CreateRenderFrameForRenderManager");
|
| +
|
| + RenderFrameHostImpl* rfh =
|
| + static_cast<RenderFrameHostImpl*>(render_frame_host);
|
| + if (!rfh->CreateRenderFrame(parent_routing_id))
|
| + return false;
|
| +
|
| + // TODO(nasko): When RenderWidgetHost is owned by RenderFrameHost, the passed
|
| + // RenderFrameHost will have to be associated with the appropriate
|
| + // RenderWidgetHostView or a new one should be created here.
|
| +
|
| + return true;
|
| +}
|
| +
|
| +
|
| #if defined(OS_ANDROID)
|
|
|
| base::android::ScopedJavaLocalRef<jobject>
|
|
|