| Index: cc/surfaces/surface_aggregator.h
|
| diff --git a/cc/surfaces/surface_aggregator.h b/cc/surfaces/surface_aggregator.h
|
| index 015e5f45e8855b1ef85dac9e66dbfca95baa1f49..442ab1c7caefb94d0ef0240388ec1ba4b23d6283 100644
|
| --- a/cc/surfaces/surface_aggregator.h
|
| +++ b/cc/surfaces/surface_aggregator.h
|
| @@ -131,7 +131,7 @@ class CC_SURFACES_EXPORT SurfaceAggregator {
|
| // child surfaces.
|
| void ProcessAddedAndRemovedSurfaces();
|
|
|
| - void PropagateCopyRequestPasses();
|
| + void PropagatePasses(base::flat_set<RenderPassId>* passes);
|
|
|
| int ChildIdForSurface(Surface* surface);
|
| gfx::Rect DamageRectForSurface(const Surface* surface,
|
| @@ -181,6 +181,8 @@ class CC_SURFACES_EXPORT SurfaceAggregator {
|
|
|
| // This is the pass list for the aggregated frame.
|
| RenderPassList* dest_pass_list_;
|
| + // This maps pass id to itself.
|
| + base::flat_map<RenderPassId, RenderPass*> passes_id_map;
|
|
|
| // This is the set of aggregated pass ids that are affected by filters that
|
| // move pixels.
|
| @@ -190,6 +192,11 @@ class CC_SURFACES_EXPORT SurfaceAggregator {
|
| // should not have their damage rects clipped to the root damage rect.
|
| base::flat_set<RenderPassId> copy_request_passes_;
|
|
|
| + // This is the set of aggregated pass ids that are drawn by force render
|
| + // surface, so should not have their damage rects clipped to the root damage
|
| + // rect.
|
| + base::flat_set<RenderPassId> cache_render_surface_passes_;
|
| +
|
| // This maps each aggregated pass id to the set of (aggregated) pass ids
|
| // that its RenderPassDrawQuads depend on
|
| base::flat_map<RenderPassId, base::flat_set<RenderPassId>>
|
| @@ -202,6 +209,10 @@ class CC_SURFACES_EXPORT SurfaceAggregator {
|
| // This is valid during Aggregate after PrewalkTree is called.
|
| bool has_copy_requests_;
|
|
|
| + // True if the frame that's currently being aggregated has force render
|
| + // surface. This is valid during Aggregate after PrewalkTree is called.
|
| + bool has_cache_render_surfaces_;
|
| +
|
| // Tracks UMA stats for SurfaceDrawQuads during a call to Aggregate().
|
| SurfaceDrawQuadUmaStats uma_stats_;
|
|
|
|
|