OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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/web_contents/web_contents_impl.h" | 5 #include "content/browser/web_contents/web_contents_impl.h" |
6 | 6 |
7 #include <utility> | 7 #include <utility> |
8 | 8 |
9 #include "base/command_line.h" | 9 #include "base/command_line.h" |
10 #include "base/lazy_instance.h" | 10 #include "base/lazy_instance.h" |
(...skipping 3751 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3762 return; | 3762 return; |
3763 | 3763 |
3764 if (delegate_) | 3764 if (delegate_) |
3765 view_->SetOverscrollControllerEnabled(CanOverscrollContent()); | 3765 view_->SetOverscrollControllerEnabled(CanOverscrollContent()); |
3766 | 3766 |
3767 NotificationService::current()->Notify( | 3767 NotificationService::current()->Notify( |
3768 NOTIFICATION_WEB_CONTENTS_RENDER_VIEW_HOST_CREATED, | 3768 NOTIFICATION_WEB_CONTENTS_RENDER_VIEW_HOST_CREATED, |
3769 Source<WebContents>(this), | 3769 Source<WebContents>(this), |
3770 Details<RenderViewHost>(render_view_host)); | 3770 Details<RenderViewHost>(render_view_host)); |
3771 | 3771 |
3772 // When we're creating views, we're still doing initial setup, so we always | |
3773 // use the pending Web UI rather than any possibly existing committed one. | |
3774 if (GetRenderManager()->pending_web_ui()) | |
3775 GetRenderManager()->pending_web_ui()->RenderViewCreated(render_view_host); | |
3776 | |
3777 if (base::CommandLine::ForCurrentProcess()->HasSwitch( | |
3778 switches::kEnableBrowserSideNavigation) && | |
3779 GetRenderManager()->speculative_web_ui()) { | |
3780 GetRenderManager()->speculative_web_ui()->RenderViewCreated( | |
3781 render_view_host); | |
3782 } | |
3783 | |
3784 NavigationEntry* entry = controller_.GetPendingEntry(); | 3772 NavigationEntry* entry = controller_.GetPendingEntry(); |
3785 if (entry && entry->IsViewSourceMode()) { | 3773 if (entry && entry->IsViewSourceMode()) { |
3786 // Put the renderer in view source mode. | 3774 // Put the renderer in view source mode. |
3787 render_view_host->Send( | 3775 render_view_host->Send( |
3788 new ViewMsg_EnableViewSourceMode(render_view_host->GetRoutingID())); | 3776 new ViewMsg_EnableViewSourceMode(render_view_host->GetRoutingID())); |
3789 } | 3777 } |
3790 | 3778 |
3791 view_->RenderViewCreated(render_view_host); | 3779 view_->RenderViewCreated(render_view_host); |
3792 | 3780 |
3793 FOR_EACH_OBSERVER( | 3781 FOR_EACH_OBSERVER( |
(...skipping 367 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
4161 source_id); | 4149 source_id); |
4162 } | 4150 } |
4163 | 4151 |
4164 int WebContentsImpl::CreateSwappedOutRenderView( | 4152 int WebContentsImpl::CreateSwappedOutRenderView( |
4165 SiteInstance* instance) { | 4153 SiteInstance* instance) { |
4166 int render_view_routing_id = MSG_ROUTING_NONE; | 4154 int render_view_routing_id = MSG_ROUTING_NONE; |
4167 if (SiteIsolationPolicy::IsSwappedOutStateForbidden()) { | 4155 if (SiteIsolationPolicy::IsSwappedOutStateForbidden()) { |
4168 GetRenderManager()->CreateRenderFrameProxy(instance); | 4156 GetRenderManager()->CreateRenderFrameProxy(instance); |
4169 } else { | 4157 } else { |
4170 GetRenderManager()->CreateRenderFrame( | 4158 GetRenderManager()->CreateRenderFrame( |
4171 instance, nullptr, CREATE_RF_SWAPPED_OUT | CREATE_RF_HIDDEN, | 4159 instance, CREATE_RF_SWAPPED_OUT | CREATE_RF_HIDDEN, |
4172 &render_view_routing_id); | 4160 &render_view_routing_id); |
4173 } | 4161 } |
4174 return render_view_routing_id; | 4162 return render_view_routing_id; |
4175 } | 4163 } |
4176 | 4164 |
4177 void WebContentsImpl::OnUserGesture() { | 4165 void WebContentsImpl::OnUserGesture() { |
4178 // Notify observers. | 4166 // Notify observers. |
4179 FOR_EACH_OBSERVER(WebContentsObserver, observers_, DidGetUserGesture()); | 4167 FOR_EACH_OBSERVER(WebContentsObserver, observers_, DidGetUserGesture()); |
4180 | 4168 |
4181 ResourceDispatcherHostImpl* rdh = ResourceDispatcherHostImpl::Get(); | 4169 ResourceDispatcherHostImpl* rdh = ResourceDispatcherHostImpl::Get(); |
(...skipping 141 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
4323 void WebContentsImpl::NotifyMainFrameSwappedFromRenderManager( | 4311 void WebContentsImpl::NotifyMainFrameSwappedFromRenderManager( |
4324 RenderViewHost* old_host, | 4312 RenderViewHost* old_host, |
4325 RenderViewHost* new_host) { | 4313 RenderViewHost* new_host) { |
4326 NotifyViewSwapped(old_host, new_host); | 4314 NotifyViewSwapped(old_host, new_host); |
4327 } | 4315 } |
4328 | 4316 |
4329 NavigationControllerImpl& WebContentsImpl::GetControllerForRenderManager() { | 4317 NavigationControllerImpl& WebContentsImpl::GetControllerForRenderManager() { |
4330 return GetController(); | 4318 return GetController(); |
4331 } | 4319 } |
4332 | 4320 |
4333 scoped_ptr<WebUIImpl> WebContentsImpl::CreateWebUIForRenderManager( | 4321 scoped_ptr<WebUIImpl> WebContentsImpl::CreateWebUIForRenderFrameHost( |
4334 const GURL& url) { | 4322 const GURL& url) { |
4335 return scoped_ptr<WebUIImpl>(static_cast<WebUIImpl*>(CreateWebUI( | 4323 return scoped_ptr<WebUIImpl>(static_cast<WebUIImpl*>(CreateWebUI( |
4336 url, std::string()))); | 4324 url, std::string()))); |
4337 } | 4325 } |
4338 | 4326 |
4339 NavigationEntry* | 4327 NavigationEntry* |
4340 WebContentsImpl::GetLastCommittedNavigationEntryForRenderManager() { | 4328 WebContentsImpl::GetLastCommittedNavigationEntryForRenderManager() { |
4341 return controller_.GetLastCommittedEntry(); | 4329 return controller_.GetLastCommittedEntry(); |
4342 } | 4330 } |
4343 | 4331 |
(...skipping 296 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
4640 return NULL; | 4628 return NULL; |
4641 } | 4629 } |
4642 | 4630 |
4643 void WebContentsImpl::SetForceDisableOverscrollContent(bool force_disable) { | 4631 void WebContentsImpl::SetForceDisableOverscrollContent(bool force_disable) { |
4644 force_disable_overscroll_content_ = force_disable; | 4632 force_disable_overscroll_content_ = force_disable; |
4645 if (view_) | 4633 if (view_) |
4646 view_->SetOverscrollControllerEnabled(CanOverscrollContent()); | 4634 view_->SetOverscrollControllerEnabled(CanOverscrollContent()); |
4647 } | 4635 } |
4648 | 4636 |
4649 } // namespace content | 4637 } // namespace content |
OLD | NEW |