OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef CONTENT_BROWSER_COMPOSITOR_GPU_BROWSER_COMPOSITOR_OUTPUT_SURFACE_H_ | 5 #ifndef CONTENT_BROWSER_COMPOSITOR_GPU_BROWSER_COMPOSITOR_OUTPUT_SURFACE_H_ |
6 #define CONTENT_BROWSER_COMPOSITOR_GPU_BROWSER_COMPOSITOR_OUTPUT_SURFACE_H_ | 6 #define CONTENT_BROWSER_COMPOSITOR_GPU_BROWSER_COMPOSITOR_OUTPUT_SURFACE_H_ |
7 | 7 |
8 #include "base/cancelable_callback.h" | 8 #include "base/cancelable_callback.h" |
9 #include "content/browser/compositor/browser_compositor_output_surface.h" | 9 #include "content/browser/compositor/browser_compositor_output_surface.h" |
| 10 #include "ui/gfx/swap_result.h" |
10 | 11 |
11 namespace ui { | 12 namespace ui { |
12 class CompositorVSyncManager; | 13 class CompositorVSyncManager; |
13 } | 14 } |
14 | 15 |
15 namespace content { | 16 namespace content { |
16 class CommandBufferProxyImpl; | 17 class CommandBufferProxyImpl; |
17 class BrowserCompositorOverlayCandidateValidator; | 18 class BrowserCompositorOverlayCandidateValidator; |
18 | 19 |
19 // Adapts a WebGraphicsContext3DCommandBufferImpl into a | 20 // Adapts a WebGraphicsContext3DCommandBufferImpl into a |
(...skipping 27 matching lines...) Expand all Loading... |
47 SHOULD_NOT_SHOW_FRAMES_SUSPENDED, | 48 SHOULD_NOT_SHOW_FRAMES_SUSPENDED, |
48 // The compositor has been un-suspended, but has not yet issued a swap | 49 // The compositor has been un-suspended, but has not yet issued a swap |
49 // since being un-suspended, so any frames that come from the GPU process | 50 // since being un-suspended, so any frames that come from the GPU process |
50 // are for pre-suspend content and should not be displayed. | 51 // are for pre-suspend content and should not be displayed. |
51 SHOULD_NOT_SHOW_FRAMES_NO_SWAP_AFTER_SUSPENDED, | 52 SHOULD_NOT_SHOW_FRAMES_NO_SWAP_AFTER_SUSPENDED, |
52 }; | 53 }; |
53 ShouldShowFramesState should_show_frames_state_; | 54 ShouldShowFramesState should_show_frames_state_; |
54 #endif | 55 #endif |
55 | 56 |
56 CommandBufferProxyImpl* GetCommandBufferProxy(); | 57 CommandBufferProxyImpl* GetCommandBufferProxy(); |
57 void OnSwapBuffersCompleted(const std::vector<ui::LatencyInfo>& latency_info); | 58 void OnSwapBuffersCompleted(const std::vector<ui::LatencyInfo>& latency_info, |
| 59 gfx::SwapResult result); |
58 | 60 |
59 base::CancelableCallback<void(const std::vector<ui::LatencyInfo>&)> | 61 base::CancelableCallback<void(const std::vector<ui::LatencyInfo>&, |
| 62 gfx::SwapResult)> |
60 swap_buffers_completion_callback_; | 63 swap_buffers_completion_callback_; |
61 base::CancelableCallback<void(base::TimeTicks timebase, | 64 base::CancelableCallback<void(base::TimeTicks timebase, |
62 base::TimeDelta interval)> | 65 base::TimeDelta interval)> |
63 update_vsync_parameters_callback_; | 66 update_vsync_parameters_callback_; |
64 | 67 |
65 DISALLOW_COPY_AND_ASSIGN(GpuBrowserCompositorOutputSurface); | 68 DISALLOW_COPY_AND_ASSIGN(GpuBrowserCompositorOutputSurface); |
66 }; | 69 }; |
67 | 70 |
68 } // namespace content | 71 } // namespace content |
69 | 72 |
70 #endif // CONTENT_BROWSER_COMPOSITOR_GPU_BROWSER_COMPOSITOR_OUTPUT_SURFACE_H_ | 73 #endif // CONTENT_BROWSER_COMPOSITOR_GPU_BROWSER_COMPOSITOR_OUTPUT_SURFACE_H_ |
OLD | NEW |