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

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

Issue 474783002: HUD: Show first paint invalidation in red (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: export info for frameviewer too Created 6 years, 4 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/layer.h ('k') | cc/layers/layer_impl.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 2010 The Chromium Authors. All rights reserved. 1 // Copyright 2010 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/layer.h" 5 #include "cc/layers/layer.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 8
9 #include "base/atomic_sequence_num.h" 9 #include "base/atomic_sequence_num.h"
10 #include "base/debug/trace_event.h" 10 #include "base/debug/trace_event.h"
(...skipping 22 matching lines...) Expand all
33 base::StaticAtomicSequenceNumber g_next_layer_id; 33 base::StaticAtomicSequenceNumber g_next_layer_id;
34 34
35 scoped_refptr<Layer> Layer::Create() { 35 scoped_refptr<Layer> Layer::Create() {
36 return make_scoped_refptr(new Layer()); 36 return make_scoped_refptr(new Layer());
37 } 37 }
38 38
39 Layer::Layer() 39 Layer::Layer()
40 : needs_push_properties_(false), 40 : needs_push_properties_(false),
41 num_dependents_need_push_properties_(false), 41 num_dependents_need_push_properties_(false),
42 stacking_order_changed_(false), 42 stacking_order_changed_(false),
43 includes_first_paint_invalidation_(false),
43 // Layer IDs start from 1. 44 // Layer IDs start from 1.
44 layer_id_(g_next_layer_id.GetNext() + 1), 45 layer_id_(g_next_layer_id.GetNext() + 1),
45 ignore_set_needs_commit_(false), 46 ignore_set_needs_commit_(false),
46 sorting_context_id_(0), 47 sorting_context_id_(0),
47 parent_(NULL), 48 parent_(NULL),
48 layer_tree_host_(NULL), 49 layer_tree_host_(NULL),
49 scroll_clip_layer_id_(INVALID_ID), 50 scroll_clip_layer_id_(INVALID_ID),
50 num_descendants_that_draw_content_(0), 51 num_descendants_that_draw_content_(0),
51 should_scroll_on_main_thread_(false), 52 should_scroll_on_main_thread_(false),
52 have_wheel_event_handlers_(false), 53 have_wheel_event_handlers_(false),
(...skipping 810 matching lines...) Expand 10 before | Expand all | Expand 10 after
863 : bounds_); 864 : bounds_);
864 layer->SetContentBounds(content_bounds()); 865 layer->SetContentBounds(content_bounds());
865 layer->SetContentsScale(contents_scale_x(), contents_scale_y()); 866 layer->SetContentsScale(contents_scale_x(), contents_scale_y());
866 867
867 bool is_tracing; 868 bool is_tracing;
868 TRACE_EVENT_CATEGORY_GROUP_ENABLED( 869 TRACE_EVENT_CATEGORY_GROUP_ENABLED(
869 TRACE_DISABLED_BY_DEFAULT("cc.debug") "," TRACE_DISABLED_BY_DEFAULT( 870 TRACE_DISABLED_BY_DEFAULT("cc.debug") "," TRACE_DISABLED_BY_DEFAULT(
870 "devtools.timeline.layers"), 871 "devtools.timeline.layers"),
871 &is_tracing); 872 &is_tracing);
872 if (is_tracing) 873 if (is_tracing)
873 layer->SetDebugInfo(TakeDebugInfo()); 874 layer->SetDebugInfo(TakeDebugInfo());
chrishtr 2014/08/20 04:28:56 Let's extend the GraphicsLayerDebugInfo struct to
874 875
875 layer->SetDoubleSided(double_sided_); 876 layer->SetDoubleSided(double_sided_);
876 layer->SetDrawCheckerboardForMissingTiles( 877 layer->SetDrawCheckerboardForMissingTiles(
877 draw_checkerboard_for_missing_tiles_); 878 draw_checkerboard_for_missing_tiles_);
878 layer->SetForceRenderSurface(force_render_surface_); 879 layer->SetForceRenderSurface(force_render_surface_);
879 layer->SetDrawsContent(DrawsContent()); 880 layer->SetDrawsContent(DrawsContent());
880 layer->SetHideLayerAndSubtree(hide_layer_and_subtree_); 881 layer->SetHideLayerAndSubtree(hide_layer_and_subtree_);
881 if (!layer->FilterIsAnimatingOnImplOnly() && !FilterIsAnimating()) 882 if (!layer->FilterIsAnimatingOnImplOnly() && !FilterIsAnimating())
882 layer->SetFilters(filters_); 883 layer->SetFilters(filters_);
883 DCHECK(!(FilterIsAnimating() && layer->FilterIsAnimatingOnImplOnly())); 884 DCHECK(!(FilterIsAnimating() && layer->FilterIsAnimatingOnImplOnly()));
(...skipping 101 matching lines...) Expand 10 before | Expand all | Expand 10 after
985 } 986 }
986 copy_requests_.clear(); 987 copy_requests_.clear();
987 layer->PassCopyRequests(&main_thread_copy_requests); 988 layer->PassCopyRequests(&main_thread_copy_requests);
988 989
989 // If the main thread commits multiple times before the impl thread actually 990 // If the main thread commits multiple times before the impl thread actually
990 // draws, then damage tracking will become incorrect if we simply clobber the 991 // draws, then damage tracking will become incorrect if we simply clobber the
991 // update_rect here. The LayerImpl's update_rect needs to accumulate (i.e. 992 // update_rect here. The LayerImpl's update_rect needs to accumulate (i.e.
992 // union) any update changes that have occurred on the main thread. 993 // union) any update changes that have occurred on the main thread.
993 update_rect_.Union(layer->update_rect()); 994 update_rect_.Union(layer->update_rect());
994 layer->SetUpdateRect(update_rect_); 995 layer->SetUpdateRect(update_rect_);
996 layer->SetIncludesFirstPaintInvalidation(includes_first_paint_invalidation_);
997 includes_first_paint_invalidation_ = false;
995 998
996 layer->SetStackingOrderChanged(stacking_order_changed_); 999 layer->SetStackingOrderChanged(stacking_order_changed_);
997 1000
998 layer_animation_controller_->PushAnimationUpdatesTo( 1001 layer_animation_controller_->PushAnimationUpdatesTo(
999 layer->layer_animation_controller()); 1002 layer->layer_animation_controller());
1000 1003
1001 // Reset any state that should be cleared for the next update. 1004 // Reset any state that should be cleared for the next update.
1002 stacking_order_changed_ = false; 1005 stacking_order_changed_ = false;
1003 update_rect_ = gfx::RectF(); 1006 update_rect_ = gfx::RectF();
1004 1007
(...skipping 231 matching lines...) Expand 10 before | Expand all | Expand 10 after
1236 1239
1237 void Layer::RunMicroBenchmark(MicroBenchmark* benchmark) { 1240 void Layer::RunMicroBenchmark(MicroBenchmark* benchmark) {
1238 benchmark->RunOnLayer(this); 1241 benchmark->RunOnLayer(this);
1239 } 1242 }
1240 1243
1241 bool Layer::HasDelegatedContent() const { 1244 bool Layer::HasDelegatedContent() const {
1242 return false; 1245 return false;
1243 } 1246 }
1244 1247
1245 } // namespace cc 1248 } // namespace cc
OLDNEW
« no previous file with comments | « cc/layers/layer.h ('k') | cc/layers/layer_impl.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698