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 #ifndef CC_LAYERS_LAYER_H_ | 5 #ifndef CC_LAYERS_LAYER_H_ |
6 #define CC_LAYERS_LAYER_H_ | 6 #define CC_LAYERS_LAYER_H_ |
7 | 7 |
8 #include <stddef.h> | 8 #include <stddef.h> |
9 #include <stdint.h> | 9 #include <stdint.h> |
10 | 10 |
11 #include <set> | 11 #include <set> |
12 #include <string> | 12 #include <string> |
13 #include <unordered_map> | 13 #include <unordered_map> |
14 #include <vector> | 14 #include <vector> |
15 | 15 |
16 #include "base/callback.h" | 16 #include "base/callback.h" |
17 #include "base/macros.h" | 17 #include "base/macros.h" |
18 #include "base/memory/ref_counted.h" | 18 #include "base/memory/ref_counted.h" |
19 #include "base/observer_list.h" | 19 #include "base/observer_list.h" |
20 #include "cc/animation/target_property.h" | 20 #include "cc/animation/target_property.h" |
21 #include "cc/base/cc_export.h" | 21 #include "cc/base/cc_export.h" |
22 #include "cc/base/region.h" | 22 #include "cc/base/region.h" |
23 #include "cc/debug/micro_benchmark.h" | 23 #include "cc/debug/micro_benchmark.h" |
24 #include "cc/input/input_handler.h" | 24 #include "cc/input/input_handler.h" |
25 #include "cc/layers/layer_collections.h" | 25 #include "cc/layers/layer_collections.h" |
26 #include "cc/layers/layer_position_constraint.h" | 26 #include "cc/layers/layer_position_constraint.h" |
27 #include "cc/layers/paint_properties.h" | 27 #include "cc/layers/paint_properties.h" |
28 #include "cc/output/filter_operations.h" | 28 #include "cc/output/filter_operations.h" |
| 29 #include "cc/trees/element_id.h" |
29 #include "cc/trees/property_tree.h" | 30 #include "cc/trees/property_tree.h" |
30 #include "third_party/skia/include/core/SkColor.h" | 31 #include "third_party/skia/include/core/SkColor.h" |
31 #include "third_party/skia/include/core/SkImageFilter.h" | 32 #include "third_party/skia/include/core/SkImageFilter.h" |
32 #include "third_party/skia/include/core/SkPicture.h" | 33 #include "third_party/skia/include/core/SkPicture.h" |
33 #include "third_party/skia/include/core/SkXfermode.h" | 34 #include "third_party/skia/include/core/SkXfermode.h" |
34 #include "ui/gfx/geometry/point3_f.h" | 35 #include "ui/gfx/geometry/point3_f.h" |
35 #include "ui/gfx/geometry/rect.h" | 36 #include "ui/gfx/geometry/rect.h" |
36 #include "ui/gfx/geometry/rect_f.h" | 37 #include "ui/gfx/geometry/rect_f.h" |
37 #include "ui/gfx/geometry/scroll_offset.h" | 38 #include "ui/gfx/geometry/scroll_offset.h" |
38 #include "ui/gfx/transform.h" | 39 #include "ui/gfx/transform.h" |
(...skipping 446 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
485 return has_render_surface_; | 486 return has_render_surface_; |
486 } | 487 } |
487 | 488 |
488 void SetSubtreePropertyChanged(); | 489 void SetSubtreePropertyChanged(); |
489 bool subtree_property_changed() const { return subtree_property_changed_; } | 490 bool subtree_property_changed() const { return subtree_property_changed_; } |
490 | 491 |
491 void DidBeginTracing(); | 492 void DidBeginTracing(); |
492 | 493 |
493 int num_copy_requests_in_target_subtree(); | 494 int num_copy_requests_in_target_subtree(); |
494 | 495 |
495 void SetElementId(uint64_t id); | 496 void SetElementId(ElementId id); |
496 uint64_t element_id() const { return element_id_; } | 497 ElementId element_id() const { return element_id_; } |
497 | 498 |
498 void SetMutableProperties(uint32_t properties); | 499 void SetMutableProperties(uint32_t properties); |
499 uint32_t mutable_properties() const { return mutable_properties_; } | 500 uint32_t mutable_properties() const { return mutable_properties_; } |
500 | 501 |
501 // Interactions with attached animations. | 502 // Interactions with attached animations. |
502 gfx::ScrollOffset ScrollOffsetForAnimation() const; | 503 gfx::ScrollOffset ScrollOffsetForAnimation() const; |
503 void OnFilterAnimated(const FilterOperations& filters); | 504 void OnFilterAnimated(const FilterOperations& filters); |
504 void OnOpacityAnimated(float opacity); | 505 void OnOpacityAnimated(float opacity); |
505 void OnTransformAnimated(const gfx::Transform& transform); | 506 void OnTransformAnimated(const gfx::Transform& transform); |
506 void OnScrollOffsetAnimated(const gfx::ScrollOffset& scroll_offset); | 507 void OnScrollOffsetAnimated(const gfx::ScrollOffset& scroll_offset); |
(...skipping 107 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
614 // This variable indicates which ancestor layer (if any) whose size, | 615 // This variable indicates which ancestor layer (if any) whose size, |
615 // transformed relative to this layer, defines the maximum scroll offset for | 616 // transformed relative to this layer, defines the maximum scroll offset for |
616 // this layer. | 617 // this layer. |
617 int scroll_clip_layer_id_; | 618 int scroll_clip_layer_id_; |
618 int num_descendants_that_draw_content_; | 619 int num_descendants_that_draw_content_; |
619 int transform_tree_index_; | 620 int transform_tree_index_; |
620 int effect_tree_index_; | 621 int effect_tree_index_; |
621 int clip_tree_index_; | 622 int clip_tree_index_; |
622 int scroll_tree_index_; | 623 int scroll_tree_index_; |
623 int property_tree_sequence_number_; | 624 int property_tree_sequence_number_; |
624 uint64_t element_id_; | 625 ElementId element_id_; |
625 uint32_t mutable_properties_; | 626 uint32_t mutable_properties_; |
626 gfx::Vector2dF offset_to_transform_parent_; | 627 gfx::Vector2dF offset_to_transform_parent_; |
627 uint32_t main_thread_scrolling_reasons_; | 628 uint32_t main_thread_scrolling_reasons_; |
628 bool should_flatten_transform_from_property_tree_ : 1; | 629 bool should_flatten_transform_from_property_tree_ : 1; |
629 bool user_scrollable_horizontal_ : 1; | 630 bool user_scrollable_horizontal_ : 1; |
630 bool user_scrollable_vertical_ : 1; | 631 bool user_scrollable_vertical_ : 1; |
631 bool is_root_for_isolated_group_ : 1; | 632 bool is_root_for_isolated_group_ : 1; |
632 bool is_container_for_fixed_position_layers_ : 1; | 633 bool is_container_for_fixed_position_layers_ : 1; |
633 bool is_drawable_ : 1; | 634 bool is_drawable_ : 1; |
634 bool draws_content_ : 1; | 635 bool draws_content_ : 1; |
(...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
679 // These all act like draw properties, so don't need push properties. | 680 // These all act like draw properties, so don't need push properties. |
680 gfx::Rect visible_layer_rect_; | 681 gfx::Rect visible_layer_rect_; |
681 size_t num_unclipped_descendants_; | 682 size_t num_unclipped_descendants_; |
682 | 683 |
683 DISALLOW_COPY_AND_ASSIGN(Layer); | 684 DISALLOW_COPY_AND_ASSIGN(Layer); |
684 }; | 685 }; |
685 | 686 |
686 } // namespace cc | 687 } // namespace cc |
687 | 688 |
688 #endif // CC_LAYERS_LAYER_H_ | 689 #endif // CC_LAYERS_LAYER_H_ |
OLD | NEW |