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/debug/trace_event.h" | 10 #include "base/debug/trace_event.h" |
(...skipping 3731 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3742 // TODO(nasko): Investigate how to remove the GetActiveEntry usage here, | 3742 // TODO(nasko): Investigate how to remove the GetActiveEntry usage here, |
3743 // as it is deprecated and can be out of sync with GetRenderViewHost(). | 3743 // as it is deprecated and can be out of sync with GetRenderViewHost(). |
3744 GURL url = controller_.GetActiveEntry() | 3744 GURL url = controller_.GetActiveEntry() |
3745 ? controller_.GetActiveEntry()->GetURL() : GURL::EmptyGURL(); | 3745 ? controller_.GetActiveEntry()->GetURL() : GURL::EmptyGURL(); |
3746 | 3746 |
3747 return GetRenderManager()->current_host()->GetWebkitPrefs(url); | 3747 return GetRenderManager()->current_host()->GetWebkitPrefs(url); |
3748 } | 3748 } |
3749 | 3749 |
3750 int WebContentsImpl::CreateSwappedOutRenderView( | 3750 int WebContentsImpl::CreateSwappedOutRenderView( |
3751 SiteInstance* instance) { | 3751 SiteInstance* instance) { |
3752 return GetRenderManager()->CreateRenderFrame(instance, MSG_ROUTING_NONE, | 3752 return GetRenderManager()->CreateRenderFrame( |
3753 true, true); | 3753 instance, MSG_ROUTING_NONE, true, true, true); |
3754 } | 3754 } |
3755 | 3755 |
3756 void WebContentsImpl::OnUserGesture() { | 3756 void WebContentsImpl::OnUserGesture() { |
3757 // Notify observers. | 3757 // Notify observers. |
3758 FOR_EACH_OBSERVER(WebContentsObserver, observers_, DidGetUserGesture()); | 3758 FOR_EACH_OBSERVER(WebContentsObserver, observers_, DidGetUserGesture()); |
3759 | 3759 |
3760 ResourceDispatcherHostImpl* rdh = ResourceDispatcherHostImpl::Get(); | 3760 ResourceDispatcherHostImpl* rdh = ResourceDispatcherHostImpl::Get(); |
3761 if (rdh) // NULL in unittests. | 3761 if (rdh) // NULL in unittests. |
3762 rdh->OnUserGesture(this); | 3762 rdh->OnUserGesture(this); |
3763 } | 3763 } |
(...skipping 149 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3913 instance) | 3913 instance) |
3914 return GetRenderManager()->pending_render_view_host()->GetRoutingID(); | 3914 return GetRenderManager()->pending_render_view_host()->GetRoutingID(); |
3915 | 3915 |
3916 RenderViewHostImpl* rvh = GetRenderManager()->GetSwappedOutRenderViewHost( | 3916 RenderViewHostImpl* rvh = GetRenderManager()->GetSwappedOutRenderViewHost( |
3917 instance); | 3917 instance); |
3918 if (rvh) | 3918 if (rvh) |
3919 return rvh->GetRoutingID(); | 3919 return rvh->GetRoutingID(); |
3920 | 3920 |
3921 // Create a swapped out RenderView in the given SiteInstance if none exists, | 3921 // Create a swapped out RenderView in the given SiteInstance if none exists, |
3922 // setting its opener to the given route_id. Return the new view's route_id. | 3922 // setting its opener to the given route_id. Return the new view's route_id. |
3923 return GetRenderManager()->CreateRenderFrame(instance, opener_route_id, | 3923 return GetRenderManager()->CreateRenderFrame( |
3924 true, true); | 3924 instance, opener_route_id, true, true, true); |
3925 } | 3925 } |
3926 | 3926 |
3927 NavigationControllerImpl& WebContentsImpl::GetControllerForRenderManager() { | 3927 NavigationControllerImpl& WebContentsImpl::GetControllerForRenderManager() { |
3928 return GetController(); | 3928 return GetController(); |
3929 } | 3929 } |
3930 | 3930 |
3931 WebUIImpl* WebContentsImpl::CreateWebUIForRenderManager(const GURL& url) { | 3931 WebUIImpl* WebContentsImpl::CreateWebUIForRenderManager(const GURL& url) { |
3932 return static_cast<WebUIImpl*>(CreateWebUI(url)); | 3932 return static_cast<WebUIImpl*>(CreateWebUI(url)); |
3933 } | 3933 } |
3934 | 3934 |
(...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3980 // linux. See crbug.com/83941. | 3980 // linux. See crbug.com/83941. |
3981 if (rwh_view) { | 3981 if (rwh_view) { |
3982 if (RenderWidgetHost* render_widget_host = rwh_view->GetRenderWidgetHost()) | 3982 if (RenderWidgetHost* render_widget_host = rwh_view->GetRenderWidgetHost()) |
3983 render_widget_host->WasResized(); | 3983 render_widget_host->WasResized(); |
3984 } | 3984 } |
3985 #endif | 3985 #endif |
3986 | 3986 |
3987 return true; | 3987 return true; |
3988 } | 3988 } |
3989 | 3989 |
| 3990 bool WebContentsImpl::CreateRenderFrameForRenderManager( |
| 3991 RenderFrameHost* render_frame_host, |
| 3992 int parent_routing_id) { |
| 3993 TRACE_EVENT0("browser", "WebContentsImpl::CreateRenderFrameForRenderManager"); |
| 3994 |
| 3995 RenderFrameHostImpl* rfh = |
| 3996 static_cast<RenderFrameHostImpl*>(render_frame_host); |
| 3997 if (!rfh->CreateRenderFrame(parent_routing_id)) |
| 3998 return false; |
| 3999 |
| 4000 // TODO(nasko): When RenderWidgetHost is owned by RenderFrameHost, the passed |
| 4001 // RenderFrameHost will have to be associated with the appropriate |
| 4002 // RenderWidgetHostView or a new one should be created here. |
| 4003 |
| 4004 return true; |
| 4005 } |
| 4006 |
3990 #if defined(OS_ANDROID) | 4007 #if defined(OS_ANDROID) |
3991 | 4008 |
3992 base::android::ScopedJavaLocalRef<jobject> | 4009 base::android::ScopedJavaLocalRef<jobject> |
3993 WebContentsImpl::GetJavaWebContents() { | 4010 WebContentsImpl::GetJavaWebContents() { |
3994 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); | 4011 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); |
3995 | 4012 |
3996 WebContentsAndroid* web_contents_android = | 4013 WebContentsAndroid* web_contents_android = |
3997 static_cast<WebContentsAndroid*>(GetUserData(kWebContentsAndroidKey)); | 4014 static_cast<WebContentsAndroid*>(GetUserData(kWebContentsAndroidKey)); |
3998 if (!web_contents_android) { | 4015 if (!web_contents_android) { |
3999 web_contents_android = new WebContentsAndroid(this); | 4016 web_contents_android = new WebContentsAndroid(this); |
(...skipping 135 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
4135 if (new_size != old_size) | 4152 if (new_size != old_size) |
4136 delegate_->UpdatePreferredSize(this, new_size); | 4153 delegate_->UpdatePreferredSize(this, new_size); |
4137 } | 4154 } |
4138 | 4155 |
4139 void WebContentsImpl::ResumeResponseDeferredAtStart() { | 4156 void WebContentsImpl::ResumeResponseDeferredAtStart() { |
4140 FrameTreeNode* node = frame_tree_.root(); | 4157 FrameTreeNode* node = frame_tree_.root(); |
4141 node->render_manager()->ResumeResponseDeferredAtStart(); | 4158 node->render_manager()->ResumeResponseDeferredAtStart(); |
4142 } | 4159 } |
4143 | 4160 |
4144 } // namespace content | 4161 } // namespace content |
OLD | NEW |