Index: content/browser/renderer_host/render_widget_host_view_mac.mm |
diff --git a/content/browser/renderer_host/render_widget_host_view_mac.mm b/content/browser/renderer_host/render_widget_host_view_mac.mm |
index 38fb4785fb3934000bd67efdf558b4e3c93e30d1..a89b93582fbf13dd8c752caab54044ef909488af 100644 |
--- a/content/browser/renderer_host/render_widget_host_view_mac.mm |
+++ b/content/browser/renderer_host/render_widget_host_view_mac.mm |
@@ -2069,6 +2069,12 @@ void RenderWidgetHostViewMac::AddPendingLatencyInfo( |
NULL)) { |
should_defer = true; |
} |
+ if (latency_info[i].FindLatency( |
+ ui::WINDOW_OLD_SNAPSHOT_FRAME_NUMBER_COMPONENT, |
+ render_widget_host_->GetLatencyComponentId(), |
+ NULL)) { |
+ should_defer = true; |
+ } |
} |
if (should_defer) { |
// Multiple pending screenshot requests will work, but if every frame |
@@ -2113,8 +2119,7 @@ void RenderWidgetHostViewMac::TickPendingLatencyInfoDelay() { |
base::Bind(&RenderWidgetHostViewMac::TickPendingLatencyInfoDelay, |
pending_latency_info_delay_weak_ptr_factory_.GetWeakPtr())); |
[compositing_iosurface_layer_ gotNewFrame]; |
- } |
- if (software_layer_) { |
+ } else { |
// In software mode there is not an explicit setNeedsDisplay/display loop, |
// so just wait a pretend-vsync at 60 Hz. |
base::MessageLoop::current()->PostDelayedTask( |