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

Unified Diff: trunk/src/content/browser/renderer_host/render_widget_host_view_mac.mm

Issue 172633002: Revert 251918 "Do not send a frame swap ack from the browser unt..." (Closed) Base URL: svn://svn.chromium.org/chrome/
Patch Set: Created 6 years, 10 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
« no previous file with comments | « trunk/src/content/browser/renderer_host/render_widget_host_view_mac.h ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: trunk/src/content/browser/renderer_host/render_widget_host_view_mac.mm
===================================================================
--- trunk/src/content/browser/renderer_host/render_widget_host_view_mac.mm (revision 252030)
+++ trunk/src/content/browser/renderer_host/render_widget_host_view_mac.mm (working copy)
@@ -437,10 +437,6 @@
}
RenderWidgetHostViewMac::~RenderWidgetHostViewMac() {
- // If a caller has set this, then when the caller tries to re-set it sometime
- // in the future, we will crash.
- DCHECK(!about_to_validate_and_paint_);
-
// This is being called from |cocoa_view_|'s destructor, so invalidate the
// pointer.
cocoa_view_ = nil;
@@ -568,9 +564,6 @@
void RenderWidgetHostViewMac::DestroyCompositedIOSurfaceAndLayer(
DestroyContextBehavior destroy_context_behavior) {
- // Any pending frames will not be displayed, so ack them now.
- SendPendingSwapAck();
-
ScopedCAActionDisabler disabler;
compositing_iosurface_.reset();
@@ -777,10 +770,6 @@
if (render_widget_host_->is_hidden())
return;
- // Any pending frames will not be displayed until this is shown again. Ack
- // them now.
- SendPendingSwapAck();
-
// If we have a renderer, then inform it that we are being hidden so it can
// reduce its resource utilization.
render_widget_host_->WasHidden();
@@ -1354,7 +1343,6 @@
compositing_iosurface_->CopyToVideoFrame(
gfx::Rect(size), frame,
base::Bind(callback, present_time));
- SendPendingSwapAck();
return;
}
}
@@ -1474,7 +1462,6 @@
underlay_view_->compositing_iosurface_ &&
underlay_view_has_drawn_) {
[underlay_view_->cocoa_view() setNeedsDisplay:YES];
- SendPendingSwapAck();
return true;
}
@@ -1510,7 +1497,6 @@
}
SendPendingLatencyInfoToHost();
- SendPendingSwapAck();
return true;
}
@@ -1688,14 +1674,19 @@
"RenderWidgetHostViewMac::AcceleratedSurfaceBuffersSwapped");
DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
- AddPendingSwapAck(params.route_id,
- gpu_host_id,
- compositing_iosurface_ ?
- compositing_iosurface_->GetRendererID() : 0);
CompositorSwapBuffers(params.surface_handle,
params.size,
params.scale_factor,
params.latency_info);
+
+ AcceleratedSurfaceMsg_BufferPresented_Params ack_params;
+ ack_params.sync_point = 0;
+ ack_params.renderer_id = compositing_iosurface_ ?
+ compositing_iosurface_->GetRendererID() : 0;
+ RenderWidgetHostImpl::AcknowledgeBufferPresent(params.route_id,
+ gpu_host_id,
+ ack_params);
+ render_widget_host_->AcknowledgeSwapBuffersToRenderer();
}
void RenderWidgetHostViewMac::AcceleratedSurfacePostSubBuffer(
@@ -1705,14 +1696,19 @@
"RenderWidgetHostViewMac::AcceleratedSurfacePostSubBuffer");
DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
- AddPendingSwapAck(params.route_id,
- gpu_host_id,
- compositing_iosurface_ ?
- compositing_iosurface_->GetRendererID() : 0);
CompositorSwapBuffers(params.surface_handle,
params.surface_size,
params.surface_scale_factor,
params.latency_info);
+
+ AcceleratedSurfaceMsg_BufferPresented_Params ack_params;
+ ack_params.sync_point = 0;
+ ack_params.renderer_id = compositing_iosurface_ ?
+ compositing_iosurface_->GetRendererID() : 0;
+ RenderWidgetHostImpl::AcknowledgeBufferPresent(params.route_id,
+ gpu_host_id,
+ ack_params);
+ render_widget_host_->AcknowledgeSwapBuffersToRenderer();
}
void RenderWidgetHostViewMac::AcceleratedSurfaceSuspend() {
@@ -2082,32 +2078,6 @@
[compositing_iosurface_layer_ setNeedsDisplay];
}
-void RenderWidgetHostViewMac::AddPendingSwapAck(
- int32 route_id, int gpu_host_id, int32 renderer_id) {
- DCHECK(!pending_swap_ack_);
- pending_swap_ack_.reset(new PendingSwapAck(
- route_id, gpu_host_id, renderer_id));
- // If we're about to paint, ack this immediatley.
- if (about_to_validate_and_paint_)
- SendPendingSwapAck();
-}
-
-void RenderWidgetHostViewMac::SendPendingSwapAck() {
- if (!pending_swap_ack_)
- return;
-
- AcceleratedSurfaceMsg_BufferPresented_Params ack_params;
- ack_params.sync_point = 0;
- ack_params.renderer_id = pending_swap_ack_->renderer_id;
- RenderWidgetHostImpl::AcknowledgeBufferPresent(pending_swap_ack_->route_id,
- pending_swap_ack_->gpu_host_id,
- ack_params);
- if (render_widget_host_)
- render_widget_host_->AcknowledgeSwapBuffersToRenderer();
-
- pending_swap_ack_.reset();
-}
-
} // namespace content
// RenderWidgetHostViewCocoa ---------------------------------------------------
« no previous file with comments | « trunk/src/content/browser/renderer_host/render_widget_host_view_mac.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698