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

Unified Diff: content/renderer/render_frame_impl.cc

Issue 345823002: Move ownership of ChildFrameCompositingHelper from frame to proxy. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Fixes based on Ken's review and fix for Android. Created 6 years, 6 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 side-by-side diff with in-line comments
Download patch
Index: content/renderer/render_frame_impl.cc
diff --git a/content/renderer/render_frame_impl.cc b/content/renderer/render_frame_impl.cc
index 55c599422304f84dbb678b233788e4d3591acad8..b29c41a170f072a77d936723d79d25fc7092bb73 100644
--- a/content/renderer/render_frame_impl.cc
+++ b/content/renderer/render_frame_impl.cc
@@ -683,10 +683,6 @@ bool RenderFrameImpl::OnMessageReceived(const IPC::Message& msg) {
IPC_MESSAGE_HANDLER(FrameMsg_Navigate, OnNavigate)
IPC_MESSAGE_HANDLER(FrameMsg_BeforeUnload, OnBeforeUnload)
IPC_MESSAGE_HANDLER(FrameMsg_SwapOut, OnSwapOut)
- IPC_MESSAGE_HANDLER(FrameMsg_BuffersSwapped, OnBuffersSwapped)
- IPC_MESSAGE_HANDLER_GENERIC(FrameMsg_CompositorFrameSwapped,
- OnCompositorFrameSwapped(msg))
- IPC_MESSAGE_HANDLER(FrameMsg_ChildFrameProcessGone, OnChildFrameProcessGone)
IPC_MESSAGE_HANDLER(FrameMsg_ContextMenuClosed, OnContextMenuClosed)
IPC_MESSAGE_HANDLER(FrameMsg_CustomContextMenuAction,
OnCustomContextMenuAction)
@@ -969,9 +965,6 @@ void RenderFrameImpl::OnSwapOut(int proxy_routing_id) {
// beforeunload handler. For now, we just run it a second time silently.
render_view_->NavigateToSwappedOutURL(frame_);
- if (frame_->parent())
- render_view_->RegisterSwappedOutChildFrame(this);
-
// Let WebKit know that this view is hidden so it can drop resources and
// stop compositing.
// TODO(creis): Support this for subframes as well.
@@ -994,42 +987,6 @@ void RenderFrameImpl::OnSwapOut(int proxy_routing_id) {
set_render_frame_proxy(proxy);
}
-void RenderFrameImpl::OnBuffersSwapped(
- const FrameMsg_BuffersSwapped_Params& params) {
- if (!compositing_helper_.get()) {
- compositing_helper_ =
- ChildFrameCompositingHelper::CreateCompositingHelperForRenderFrame(
- frame_, this, routing_id_);
- compositing_helper_->EnableCompositing(true);
- }
- compositing_helper_->OnBuffersSwapped(
- params.size,
- params.mailbox,
- params.gpu_route_id,
- params.gpu_host_id,
- render_view_->GetWebView()->deviceScaleFactor());
-}
-
-void RenderFrameImpl::OnCompositorFrameSwapped(const IPC::Message& message) {
- FrameMsg_CompositorFrameSwapped::Param param;
- if (!FrameMsg_CompositorFrameSwapped::Read(&message, &param))
- return;
- scoped_ptr<cc::CompositorFrame> frame(new cc::CompositorFrame);
- param.a.frame.AssignTo(frame.get());
-
- if (!compositing_helper_.get()) {
- compositing_helper_ =
- ChildFrameCompositingHelper::CreateCompositingHelperForRenderFrame(
- frame_, this, routing_id_);
- compositing_helper_->EnableCompositing(true);
- }
- compositing_helper_->OnCompositorFrameSwapped(frame.Pass(),
- param.a.producing_route_id,
- param.a.output_surface_id,
- param.a.producing_host_id,
- param.a.shared_memory_handle);
-}
-
void RenderFrameImpl::OnContextMenuClosed(
const CustomContextMenuContext& custom_context) {
if (custom_context.request_id) {
@@ -1277,8 +1234,6 @@ void RenderFrameImpl::LoadNavigationErrorPage(
}
void RenderFrameImpl::DidCommitCompositorFrame() {
- if (compositing_helper_)
- compositing_helper_->DidCommitCompositorFrame();
FOR_EACH_OBSERVER(
RenderFrameObserver, observers_, DidCommitCompositorFrame());
}
@@ -1355,11 +1310,6 @@ void RenderFrameImpl::ExecuteJavaScript(const base::string16& javascript) {
OnJavaScriptExecuteRequest(javascript, 0, false);
}
-void RenderFrameImpl::OnChildFrameProcessGone() {
- if (compositing_helper_)
- compositing_helper_->ChildFrameGone();
-}
-
// blink::WebFrameClient implementation ----------------------------------------
blink::WebPlugin* RenderFrameImpl::createPlugin(
@@ -1554,8 +1504,6 @@ void RenderFrameImpl::frameDetached(blink::WebFrame* frame) {
Send(new FrameHostMsg_Detach(routing_id_));
- render_view_->UnregisterSwappedOutChildFrame(this);
-
// The |is_detaching_| flag disables Send(). FrameHostMsg_Detach must be
// sent before setting |is_detaching_| to true. In contrast, Observers
// should only be notified afterwards so they cannot call back into here and

Powered by Google App Engine
This is Rietveld 408576698