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 d30295dd1177d90efaa4a3244ef7d946b004384f..ed611d03f3405f19612774c20d768da6ccecedd8 100644 |
--- a/content/browser/web_contents/web_contents_impl.cc |
+++ b/content/browser/web_contents/web_contents_impl.cc |
@@ -2874,22 +2874,20 @@ void WebContentsImpl::RenderViewCreated(RenderViewHost* render_view_host) { |
Source<WebContents>(this), |
Details<RenderViewHost>(render_view_host)); |
NavigationEntry* entry = controller_.GetActiveEntry(); |
- if (!entry) |
- return; |
- |
- // When we're creating views, we're still doing initial setup, so we always |
- // use the pending Web UI rather than any possibly existing committed one. |
- if (render_manager_.pending_web_ui()) |
- render_manager_.pending_web_ui()->RenderViewCreated(render_view_host); |
+ if (entry) { |
+ // When we're creating views, we're still doing initial setup, so we always |
+ // use the pending Web UI rather than any possibly existing committed one. |
+ if (render_manager_.pending_web_ui()) |
+ render_manager_.pending_web_ui()->RenderViewCreated(render_view_host); |
+ |
+ if (entry->IsViewSourceMode()) { |
+ // Put the renderer in view source mode. |
+ render_view_host->Send( |
+ new ViewMsg_EnableViewSourceMode(render_view_host->GetRoutingID())); |
+ } |
- if (entry->IsViewSourceMode()) { |
- // Put the renderer in view source mode. |
- render_view_host->Send( |
- new ViewMsg_EnableViewSourceMode(render_view_host->GetRoutingID())); |
+ view_->RenderViewCreated(render_view_host); |
} |
- |
- view_->RenderViewCreated(render_view_host); |
- |
FOR_EACH_OBSERVER( |
WebContentsObserver, observers_, RenderViewCreated(render_view_host)); |
} |
@@ -3636,9 +3634,9 @@ NavigationEntry* |
return controller_.GetLastCommittedEntry(); |
} |
-bool WebContentsImpl::CreateRenderViewForRenderManager( |
- RenderViewHost* render_view_host, int opener_route_id) { |
- TRACE_EVENT0("browser", "WebContentsImpl::CreateRenderViewForRenderManager"); |
+bool WebContentsImpl::CreateRenderView(RenderViewHost* render_view_host, |
+ int opener_route_id, |
+ int max_page_id) { |
// Can be NULL during tests. |
RenderWidgetHostView* rwh_view = view_->CreateViewForWidget(render_view_host); |
@@ -3646,11 +3644,6 @@ bool WebContentsImpl::CreateRenderViewForRenderManager( |
if (rwh_view) |
rwh_view->SetSize(view_->GetContainerSize()); |
- // Make sure we use the correct starting page_id in the new RenderView. |
- UpdateMaxPageIDIfNecessary(render_view_host); |
- int32 max_page_id = |
- GetMaxPageIDForSiteInstance(render_view_host->GetSiteInstance()); |
Charlie Reis
2013/08/21 22:06:26
These max page ID calls have to stay, or else the
michaelbai
2013/08/21 23:32:17
Done.
|
- |
if (!static_cast<RenderViewHostImpl*>( |
render_view_host)->CreateRenderView(string16(), |
opener_route_id, |
@@ -3670,6 +3663,24 @@ bool WebContentsImpl::CreateRenderViewForRenderManager( |
return true; |
} |
+bool WebContentsImpl::CreateRenderViewForRenderManager( |
+ RenderViewHost* render_view_host, int opener_route_id) { |
+ TRACE_EVENT0("browser", "WebContentsImpl::CreateRenderViewForRenderManager"); |
+ |
+ // Make sure we use the correct starting page_id in the new RenderView. |
+ UpdateMaxPageIDIfNecessary(render_view_host); |
+ int32 max_page_id = |
+ GetMaxPageIDForSiteInstance(render_view_host->GetSiteInstance()); |
+ return CreateRenderView(render_view_host, opener_route_id, max_page_id); |
+} |
+ |
+#if defined(OS_ANDROID) |
+bool WebContentsImpl::CreateRenderViewWithoutNavigationEntry( |
+ RenderViewHost* render_view_host) { |
+ return CreateRenderView(render_view_host, MSG_ROUTING_NONE, -1); |
Charlie Reis
2013/08/21 22:06:26
Just call CreatRenderViewForRenderManager here.
michaelbai
2013/08/21 23:32:17
Done.
|
+} |
+#endif |
+ |
void WebContentsImpl::OnDialogClosed(RenderViewHost* rvh, |
IPC::Message* reply_msg, |
bool success, |