Index: content/renderer/gpu/compositor_external_begin_frame_source.cc |
diff --git a/content/renderer/gpu/compositor_external_begin_frame_source.cc b/content/renderer/gpu/compositor_external_begin_frame_source.cc |
index 90f5554ba3915d1deb71674f38f7eaaed7716598..279adbf9c390565dfb62784e5d2713926571f5c2 100644 |
--- a/content/renderer/gpu/compositor_external_begin_frame_source.cc |
+++ b/content/renderer/gpu/compositor_external_begin_frame_source.cc |
@@ -55,6 +55,12 @@ void CompositorExternalBeginFrameSource::RemoveObserver( |
external_begin_frame_source_.RemoveObserver(obs); |
} |
+void CompositorExternalBeginFrameSource::DidFinishFrame( |
+ cc::BeginFrameObserver* obs, |
+ const cc::BeginFrameAck& ack) { |
+ external_begin_frame_source_.DidFinishFrame(obs, ack); |
+} |
+ |
bool CompositorExternalBeginFrameSource::IsThrottled() const { |
return true; |
} |
@@ -66,7 +72,9 @@ void CompositorExternalBeginFrameSource::OnNeedsBeginFrames( |
void CompositorExternalBeginFrameSource::OnDidFinishFrame( |
const cc::BeginFrameAck& ack) { |
- // TODO(eseckler): Pass on the ack to the view host. |
+ // If there was damage, ViewHostMsg_SwapCompositorFrame includes the ack. |
+ if (!ack.has_damage) |
+ Send(new ViewHostMsg_BeginFrameDidNotDraw(routing_id_, ack)); |
} |
void CompositorExternalBeginFrameSource::OnMessageReceived( |