Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(433)

Side by Side Diff: cc/layers/picture_layer_impl.cc

Issue 474783002: HUD: Show first paint invalidation in red (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: compilefix Created 6 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « cc/layers/picture_layer_impl.h ('k') | ui/compositor/layer.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2012 The Chromium Authors. All rights reserved. 1 // Copyright 2012 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/picture_layer_impl.h" 5 #include "cc/layers/picture_layer_impl.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 #include <limits> 8 #include <limits>
9 #include <set> 9 #include <set>
10 10
11 #include "base/debug/trace_event_argument.h" 11 #include "base/debug/trace_event_argument.h"
12 #include "base/time/time.h" 12 #include "base/time/time.h"
13 #include "cc/base/math_util.h" 13 #include "cc/base/math_util.h"
14 #include "cc/base/util.h" 14 #include "cc/base/util.h"
15 #include "cc/debug/debug_colors.h" 15 #include "cc/debug/debug_colors.h"
16 #include "cc/debug/debug_rect_history.h"
16 #include "cc/debug/micro_benchmark_impl.h" 17 #include "cc/debug/micro_benchmark_impl.h"
17 #include "cc/debug/traced_value.h" 18 #include "cc/debug/traced_value.h"
18 #include "cc/layers/append_quads_data.h" 19 #include "cc/layers/append_quads_data.h"
19 #include "cc/layers/solid_color_layer_impl.h" 20 #include "cc/layers/solid_color_layer_impl.h"
20 #include "cc/output/begin_frame_args.h" 21 #include "cc/output/begin_frame_args.h"
21 #include "cc/quads/checkerboard_draw_quad.h" 22 #include "cc/quads/checkerboard_draw_quad.h"
22 #include "cc/quads/debug_border_draw_quad.h" 23 #include "cc/quads/debug_border_draw_quad.h"
23 #include "cc/quads/picture_draw_quad.h" 24 #include "cc/quads/picture_draw_quad.h"
24 #include "cc/quads/solid_color_draw_quad.h" 25 #include "cc/quads/solid_color_draw_quad.h"
25 #include "cc/quads/tile_draw_quad.h" 26 #include "cc/quads/tile_draw_quad.h"
(...skipping 110 matching lines...) Expand 10 before | Expand all | Expand 10 after
136 layer_impl->raster_source_scale_ = raster_source_scale_; 137 layer_impl->raster_source_scale_ = raster_source_scale_;
137 layer_impl->raster_contents_scale_ = raster_contents_scale_; 138 layer_impl->raster_contents_scale_ = raster_contents_scale_;
138 layer_impl->low_res_raster_contents_scale_ = low_res_raster_contents_scale_; 139 layer_impl->low_res_raster_contents_scale_ = low_res_raster_contents_scale_;
139 layer_impl->needs_post_commit_initialization_ = false; 140 layer_impl->needs_post_commit_initialization_ = false;
140 141
141 // The invalidation on this soon-to-be-recycled layer must be cleared to 142 // The invalidation on this soon-to-be-recycled layer must be cleared to
142 // mirror clearing the invalidation in PictureLayer's version of this function 143 // mirror clearing the invalidation in PictureLayer's version of this function
143 // in case push properties is skipped. 144 // in case push properties is skipped.
144 layer_impl->invalidation_.Swap(&invalidation_); 145 layer_impl->invalidation_.Swap(&invalidation_);
145 invalidation_.Clear(); 146 invalidation_.Clear();
147 layer_impl->debug_invalidation_.swap(debug_invalidation_);
148 debug_invalidation_.clear();
146 needs_post_commit_initialization_ = true; 149 needs_post_commit_initialization_ = true;
147 150
148 // We always need to push properties. 151 // We always need to push properties.
149 // See http://crbug.com/303943 152 // See http://crbug.com/303943
150 needs_push_properties_ = true; 153 needs_push_properties_ = true;
151 } 154 }
152 155
153 void PictureLayerImpl::AppendQuads( 156 void PictureLayerImpl::AppendQuads(
154 RenderPass* render_pass, 157 RenderPass* render_pass,
155 const OcclusionTracker<LayerImpl>& occlusion_tracker, 158 const OcclusionTracker<LayerImpl>& occlusion_tracker,
(...skipping 1630 matching lines...) Expand 10 before | Expand all | Expand 10 after
1786 case PictureLayerTilingSet::LOWER_THAN_LOW_RES: { 1789 case PictureLayerTilingSet::LOWER_THAN_LOW_RES: {
1787 PictureLayerTilingSet::TilingRange tiling_range = CurrentTilingRange(); 1790 PictureLayerTilingSet::TilingRange tiling_range = CurrentTilingRange();
1788 size_t current_tiling_range_offset = current_tiling_ - tiling_range.start; 1791 size_t current_tiling_range_offset = current_tiling_ - tiling_range.start;
1789 return tiling_range.end - 1 - current_tiling_range_offset; 1792 return tiling_range.end - 1 - current_tiling_range_offset;
1790 } 1793 }
1791 } 1794 }
1792 NOTREACHED(); 1795 NOTREACHED();
1793 return 0; 1796 return 0;
1794 } 1797 }
1795 1798
1799 bool PictureLayerImpl::GetDetailedPaintRects(std::vector<DebugRect>* rects) {
1800 rects->insert(
1801 rects->end(), debug_invalidation_.begin(), debug_invalidation_.end());
1802 debug_invalidation_.clear();
1803 return true;
1804 }
1805
1796 } // namespace cc 1806 } // namespace cc
OLDNEW
« no previous file with comments | « cc/layers/picture_layer_impl.h ('k') | ui/compositor/layer.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698