OLD | NEW |
1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 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 #include "cc/output/overlay_strategy_fullscreen.h" | 5 #include "cc/output/overlay_strategy_fullscreen.h" |
6 | 6 |
7 #include "cc/base/math_util.h" | 7 #include "cc/base/math_util.h" |
8 #include "cc/output/overlay_candidate_validator.h" | 8 #include "cc/output/overlay_candidate_validator.h" |
9 #include "cc/quads/draw_quad.h" | 9 #include "cc/quads/draw_quad.h" |
10 #include "cc/quads/solid_color_draw_quad.h" | 10 #include "cc/quads/solid_color_draw_quad.h" |
11 #include "ui/gfx/geometry/rect_conversions.h" | 11 #include "ui/gfx/geometry/rect_conversions.h" |
12 #include "ui/gfx/geometry/size_conversions.h" | 12 #include "ui/gfx/geometry/size_conversions.h" |
13 | 13 |
14 namespace cc { | 14 namespace cc { |
15 | 15 |
16 OverlayStrategyFullscreen::OverlayStrategyFullscreen( | 16 OverlayStrategyFullscreen::OverlayStrategyFullscreen( |
17 OverlayCandidateValidator* capability_checker) | 17 OverlayCandidateValidator* capability_checker) |
18 : capability_checker_(capability_checker) { | 18 : capability_checker_(capability_checker) { |
19 DCHECK(capability_checker); | 19 DCHECK(capability_checker); |
20 } | 20 } |
21 | 21 |
22 OverlayStrategyFullscreen::~OverlayStrategyFullscreen() {} | 22 OverlayStrategyFullscreen::~OverlayStrategyFullscreen() {} |
23 | 23 |
24 bool OverlayStrategyFullscreen::Attempt(ResourceProvider* resource_provider, | 24 bool OverlayStrategyFullscreen::Attempt( |
25 RenderPass* render_pass, | 25 ResourceProvider* resource_provider, |
26 OverlayCandidateList* candidate_list) { | 26 RenderPass* render_pass, |
| 27 OverlayCandidateList* candidate_list, |
| 28 std::vector<gfx::Rect>* content_bounds) { |
27 QuadList* quad_list = &render_pass->quad_list; | 29 QuadList* quad_list = &render_pass->quad_list; |
28 // First quad of quad_list is the top most quad. | 30 // First quad of quad_list is the top most quad. |
29 auto front = quad_list->begin(); | 31 auto front = quad_list->begin(); |
30 while (front != quad_list->end()) { | 32 while (front != quad_list->end()) { |
31 if (!OverlayCandidate::IsInvisibleQuad(*front)) | 33 if (!OverlayCandidate::IsInvisibleQuad(*front)) |
32 break; | 34 break; |
33 front++; | 35 front++; |
34 } | 36 } |
35 | 37 |
36 if (front == quad_list->end()) | 38 if (front == quad_list->end()) |
(...skipping 23 matching lines...) Expand all Loading... |
60 if (!new_candidate_list.front().overlay_handled) | 62 if (!new_candidate_list.front().overlay_handled) |
61 return false; | 63 return false; |
62 | 64 |
63 candidate_list->swap(new_candidate_list); | 65 candidate_list->swap(new_candidate_list); |
64 | 66 |
65 render_pass->quad_list = QuadList(); // Remove all the quads | 67 render_pass->quad_list = QuadList(); // Remove all the quads |
66 return true; | 68 return true; |
67 } | 69 } |
68 | 70 |
69 } // namespace cc | 71 } // namespace cc |
OLD | NEW |