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 #include "cc/layers/surface_layer_impl.h" | 5 #include "cc/layers/surface_layer_impl.h" |
6 | 6 |
7 #include <stdint.h> | 7 #include <stdint.h> |
8 | 8 |
9 #include "base/trace_event/trace_event_argument.h" | 9 #include "base/trace_event/trace_event_argument.h" |
10 #include "cc/debug/debug_colors.h" | 10 #include "cc/debug/debug_colors.h" |
(...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
59 layer_impl->SetPrimarySurfaceInfo(primary_surface_info_); | 59 layer_impl->SetPrimarySurfaceInfo(primary_surface_info_); |
60 layer_impl->SetFallbackSurfaceInfo(fallback_surface_info_); | 60 layer_impl->SetFallbackSurfaceInfo(fallback_surface_info_); |
61 layer_impl->SetStretchContentToFillBounds(stretch_content_to_fill_bounds_); | 61 layer_impl->SetStretchContentToFillBounds(stretch_content_to_fill_bounds_); |
62 } | 62 } |
63 | 63 |
64 void SurfaceLayerImpl::AppendQuads(RenderPass* render_pass, | 64 void SurfaceLayerImpl::AppendQuads(RenderPass* render_pass, |
65 AppendQuadsData* append_quads_data) { | 65 AppendQuadsData* append_quads_data) { |
66 AppendRainbowDebugBorder(render_pass); | 66 AppendRainbowDebugBorder(render_pass); |
67 auto* primary = CreateSurfaceDrawQuad( | 67 auto* primary = CreateSurfaceDrawQuad( |
68 render_pass, SurfaceDrawQuadType::PRIMARY, primary_surface_info_); | 68 render_pass, SurfaceDrawQuadType::PRIMARY, primary_surface_info_); |
69 if (primary) { | 69 // Emitting a fallback SurfaceDrawQuad is unnecessary if the primary and |
70 // fallback surface Ids match. | |
71 if (primary && fallback_surface_info_.id() != primary_surface_info_.id()) { | |
vmpstr
2017/02/16 00:52:12
I'm guessing this comparison takes into account th
Fady Samuel
2017/02/16 01:16:10
If the fallback SurfaceId is invalid then CreateS
| |
70 primary->fallback_quad = CreateSurfaceDrawQuad( | 72 primary->fallback_quad = CreateSurfaceDrawQuad( |
71 render_pass, SurfaceDrawQuadType::FALLBACK, fallback_surface_info_); | 73 render_pass, SurfaceDrawQuadType::FALLBACK, fallback_surface_info_); |
72 } | 74 } |
73 } | 75 } |
74 | 76 |
75 SurfaceDrawQuad* SurfaceLayerImpl::CreateSurfaceDrawQuad( | 77 SurfaceDrawQuad* SurfaceLayerImpl::CreateSurfaceDrawQuad( |
76 RenderPass* render_pass, | 78 RenderPass* render_pass, |
77 SurfaceDrawQuadType surface_draw_quad_type, | 79 SurfaceDrawQuadType surface_draw_quad_type, |
78 const SurfaceInfo& surface_info) { | 80 const SurfaceInfo& surface_info) { |
79 if (!surface_info.id().is_valid()) | 81 if (!surface_info.id().is_valid()) |
(...skipping 136 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
216 dict->SetString("surface_id", primary_surface_info_.id().ToString()); | 218 dict->SetString("surface_id", primary_surface_info_.id().ToString()); |
217 dict->SetString("fallback_surface_id", | 219 dict->SetString("fallback_surface_id", |
218 fallback_surface_info_.id().ToString()); | 220 fallback_surface_info_.id().ToString()); |
219 } | 221 } |
220 | 222 |
221 const char* SurfaceLayerImpl::LayerTypeAsString() const { | 223 const char* SurfaceLayerImpl::LayerTypeAsString() const { |
222 return "cc::SurfaceLayerImpl"; | 224 return "cc::SurfaceLayerImpl"; |
223 } | 225 } |
224 | 226 |
225 } // namespace cc | 227 } // namespace cc |
OLD | NEW |