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

Side by Side Diff: cc/trees/layer_tree_impl.cc

Issue 2762123004: cc: LayerTreeHostImpl uses element id to tick animations (Closed)
Patch Set: remove accidental debug print Created 3 years, 9 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
OLDNEW
1 // Copyright 2011 The Chromium Authors. All rights reserved. 1 // Copyright 2011 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/trees/layer_tree_impl.h" 5 #include "cc/trees/layer_tree_impl.h"
6 6
7 #include <stddef.h> 7 #include <stddef.h>
8 #include <stdint.h> 8 #include <stdint.h>
9 9
10 #include <algorithm> 10 #include <algorithm>
(...skipping 612 matching lines...) Expand 10 before | Expand all | Expand 10 after
623 IsActiveTree() ? ElementListType::ACTIVE : ElementListType::PENDING); 623 IsActiveTree() ? ElementListType::ACTIVE : ElementListType::PENDING);
624 624
625 element_layers_map_.erase(layer->element_id()); 625 element_layers_map_.erase(layer->element_id());
626 } 626 }
627 627
628 void LayerTreeImpl::AddToOpacityAnimationsMap(int id, float opacity) { 628 void LayerTreeImpl::AddToOpacityAnimationsMap(int id, float opacity) {
629 if (LayerImpl* layer = LayerById(id)) 629 if (LayerImpl* layer = LayerById(id))
630 element_id_to_opacity_animations_[layer->element_id()] = opacity; 630 element_id_to_opacity_animations_[layer->element_id()] = opacity;
631 } 631 }
632 632
633 void LayerTreeImpl::AddToTransformAnimationsMap(int id, 633 void LayerTreeImpl::SetTreeLayerTransformMutated(
634 gfx::Transform transform) { 634 ElementId element_id,
635 if (LayerImpl* layer = LayerById(id)) 635 const gfx::Transform& transform) {
636 element_id_to_transform_animations_[layer->element_id()] = transform; 636 DCHECK_EQ(1u, property_trees()->element_id_to_transform_node_index.count(
637 element_id));
638 element_id_to_transform_animations_[element_id] = transform;
639 property_trees()->transform_tree.OnTransformAnimated(element_id, transform);
640
641 if (LayerImpl* layer = LayerByElementId(element_id))
642 layer->set_was_ever_ready_since_last_transform_animation(false);
643
644 set_needs_update_draw_properties();
637 } 645 }
638 646
639 void LayerTreeImpl::AddToFilterAnimationsMap(int id, 647 void LayerTreeImpl::SetTreeLayerOpacityMutated(ElementId element_id,
640 const FilterOperations& filters) { 648 float opacity) {
641 if (LayerImpl* layer = LayerById(id)) 649 DCHECK_EQ(
642 element_id_to_filter_animations_[layer->element_id()] = filters; 650 1u, property_trees()->element_id_to_effect_node_index.count(element_id));
651 element_id_to_opacity_animations_[element_id] = opacity;
652 property_trees()->effect_tree.OnOpacityAnimated(element_id, opacity);
653 set_needs_update_draw_properties();
654 }
655
656 void LayerTreeImpl::SetTreeLayerFilterMutated(ElementId element_id,
657 const FilterOperations& filters) {
658 DCHECK_EQ(
659 1u, property_trees()->element_id_to_effect_node_index.count(element_id));
660 element_id_to_filter_animations_[element_id] = filters;
661 property_trees()->effect_tree.OnFilterAnimated(element_id, filters);
662 set_needs_update_draw_properties();
643 } 663 }
644 664
645 LayerImpl* LayerTreeImpl::InnerViewportContainerLayer() const { 665 LayerImpl* LayerTreeImpl::InnerViewportContainerLayer() const {
646 return InnerViewportScrollLayer() 666 return InnerViewportScrollLayer()
647 ? InnerViewportScrollLayer()->scroll_clip_layer() 667 ? InnerViewportScrollLayer()->scroll_clip_layer()
648 : NULL; 668 : NULL;
649 } 669 }
650 670
651 LayerImpl* LayerTreeImpl::OuterViewportContainerLayer() const { 671 LayerImpl* LayerTreeImpl::OuterViewportContainerLayer() const {
652 return OuterViewportScrollLayer() 672 return OuterViewportScrollLayer()
(...skipping 1500 matching lines...) Expand 10 before | Expand all | Expand 10 after
2153 2173
2154 void LayerTreeImpl::ResetAllChangeTracking() { 2174 void LayerTreeImpl::ResetAllChangeTracking() {
2155 layers_that_should_push_properties_.clear(); 2175 layers_that_should_push_properties_.clear();
2156 // Iterate over all layers, including masks. 2176 // Iterate over all layers, including masks.
2157 for (auto& layer : *layers_) 2177 for (auto& layer : *layers_)
2158 layer->ResetChangeTracking(); 2178 layer->ResetChangeTracking();
2159 property_trees_.ResetAllChangeTracking(); 2179 property_trees_.ResetAllChangeTracking();
2160 } 2180 }
2161 2181
2162 } // namespace cc 2182 } // namespace cc
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698