OLD | NEW |
---|---|
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 <stddef.h> | 7 #include <stddef.h> |
8 #include <stdint.h> | 8 #include <stdint.h> |
9 | 9 |
10 #include <algorithm> | 10 #include <algorithm> |
(...skipping 571 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
582 id())) { | 582 id())) { |
583 DCHECK_EQ(transform_tree_index(), | 583 DCHECK_EQ(transform_tree_index(), |
584 property_trees->layer_id_to_transform_node_index[id()]); | 584 property_trees->layer_id_to_transform_node_index[id()]); |
585 TransformNode* transform_node = | 585 TransformNode* transform_node = |
586 property_trees->transform_tree.Node(transform_tree_index()); | 586 property_trees->transform_tree.Node(transform_tree_index()); |
587 transform_node->update_post_local_transform(position, transform_origin()); | 587 transform_node->update_post_local_transform(position, transform_origin()); |
588 if (transform_node->sticky_position_constraint_id >= 0) { | 588 if (transform_node->sticky_position_constraint_id >= 0) { |
589 StickyPositionNodeData* sticky_data = | 589 StickyPositionNodeData* sticky_data = |
590 property_trees->transform_tree.StickyPositionData( | 590 property_trees->transform_tree.StickyPositionData( |
591 transform_tree_index()); | 591 transform_tree_index()); |
592 // TODO(smcgruer): Pass main thread sticky-shifting offsets of | |
593 // non-promoted ancestors, or promote all ancestor sticky elements. | |
flackr
2017/03/17 18:04:08
nit: Also bug link please?
smcgruer
2017/03/17 18:42:42
Done.
| |
592 sticky_data->main_thread_offset = | 594 sticky_data->main_thread_offset = |
593 position.OffsetFromOrigin() - | 595 position.OffsetFromOrigin() - |
594 sticky_data->constraints.parent_relative_sticky_box_offset | 596 sticky_data->constraints.parent_relative_sticky_box_offset |
595 .OffsetFromOrigin(); | 597 .OffsetFromOrigin(); |
596 } | 598 } |
597 transform_node->needs_local_transform_update = true; | 599 transform_node->needs_local_transform_update = true; |
598 transform_node->transform_changed = true; | 600 transform_node->transform_changed = true; |
599 layer_tree_host_->property_trees()->transform_tree.set_needs_update(true); | 601 layer_tree_host_->property_trees()->transform_tree.set_needs_update(true); |
600 SetNeedsCommitNoRebuild(); | 602 SetNeedsCommitNoRebuild(); |
601 return; | 603 return; |
(...skipping 905 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1507 ->num_copy_requests_in_subtree; | 1509 ->num_copy_requests_in_subtree; |
1508 } | 1510 } |
1509 | 1511 |
1510 gfx::Transform Layer::screen_space_transform() const { | 1512 gfx::Transform Layer::screen_space_transform() const { |
1511 DCHECK_NE(transform_tree_index_, TransformTree::kInvalidNodeId); | 1513 DCHECK_NE(transform_tree_index_, TransformTree::kInvalidNodeId); |
1512 return draw_property_utils::ScreenSpaceTransform( | 1514 return draw_property_utils::ScreenSpaceTransform( |
1513 this, layer_tree_host_->property_trees()->transform_tree); | 1515 this, layer_tree_host_->property_trees()->transform_tree); |
1514 } | 1516 } |
1515 | 1517 |
1516 } // namespace cc | 1518 } // namespace cc |
OLD | NEW |