Index: content/common/gpu/client/command_buffer_proxy_impl.cc |
diff --git a/content/common/gpu/client/command_buffer_proxy_impl.cc b/content/common/gpu/client/command_buffer_proxy_impl.cc |
index 336488373490b19452fc9b5372bd2b3f07e6443c..fd452f1ebb6666d8be3bd84ec25b10159be35f44 100644 |
--- a/content/common/gpu/client/command_buffer_proxy_impl.cc |
+++ b/content/common/gpu/client/command_buffer_proxy_impl.cc |
@@ -52,6 +52,8 @@ bool CommandBufferProxyImpl::OnMessageReceived(const IPC::Message& message) { |
OnSignalSyncPointAck); |
IPC_MESSAGE_HANDLER(GpuCommandBufferMsg_SwapBuffersCompleted, |
OnSwapBuffersCompleted); |
+ IPC_MESSAGE_HANDLER(GpuCommandBufferMsg_PageFlipCompleted, |
+ OnPageFlipCompleted); |
IPC_MESSAGE_UNHANDLED(handled = false) |
IPC_END_MESSAGE_MAP() |
@@ -202,6 +204,11 @@ void CommandBufferProxyImpl::SetSwapBuffersCompletionCallback( |
swap_buffers_completion_callback_ = callback; |
} |
+void CommandBufferProxyImpl::SetPageFlipCompletionCallback( |
+ const PageFlipCompletionCallback& callback) { |
+ page_flip_completion_callback_ = callback; |
+} |
+ |
void CommandBufferProxyImpl::WaitForTokenInRange(int32 start, int32 end) { |
TRACE_EVENT2("gpu", |
"CommandBufferProxyImpl::WaitForToken", |
@@ -538,4 +545,10 @@ void CommandBufferProxyImpl::OnSwapBuffersCompleted( |
} |
} |
+void CommandBufferProxyImpl::OnPageFlipCompleted() { |
+ if (!page_flip_completion_callback_.is_null()) { |
+ page_flip_completion_callback_.Run(); |
brianderson
2014/12/10 22:48:05
It would be really nice to pipe latency_info along
|
+ } |
+} |
+ |
} // namespace content |