OLD | NEW |
1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 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 syntax = "proto2"; | 5 syntax = "proto2"; |
6 | 6 |
7 import "rectf.proto"; | 7 import "rectf.proto"; |
8 import "scroll_offset.proto"; | 8 import "scroll_offset.proto"; |
9 import "transform.proto"; | 9 import "transform.proto"; |
10 import "vector2df.proto"; | 10 import "vector2df.proto"; |
(...skipping 68 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
79 // Proto for struct EffectNodeData. | 79 // Proto for struct EffectNodeData. |
80 message EffectNodeData { | 80 message EffectNodeData { |
81 optional float opacity = 1; | 81 optional float opacity = 1; |
82 optional float screen_space_opacity = 2; | 82 optional float screen_space_opacity = 2; |
83 optional bool has_render_surface = 3; | 83 optional bool has_render_surface = 3; |
84 optional int64 num_copy_requests_in_subtree = 4; | 84 optional int64 num_copy_requests_in_subtree = 4; |
85 optional int64 transform_id = 5; | 85 optional int64 transform_id = 5; |
86 optional int64 clip_id = 6; | 86 optional int64 clip_id = 6; |
87 } | 87 } |
88 | 88 |
| 89 message ScrollNodeData { |
| 90 optional bool scrollable = 1; |
| 91 optional bool should_scroll_on_main_thread = 2; |
| 92 optional int32 scroll_blocks_on = 3; |
| 93 optional bool contains_non_fast_scrollable_region = 4; |
| 94 optional int64 transform_id = 5; |
| 95 } |
| 96 |
89 // This defines the proto used for all types of struct TreeNode. | 97 // This defines the proto used for all types of struct TreeNode. |
90 message TreeNode { | 98 message TreeNode { |
91 // The following fields are the base TreeNode properties. This list | 99 // The following fields are the base TreeNode properties. This list |
92 // corresponds to the data members from struct TreeNode. | 100 // corresponds to the data members from struct TreeNode. |
93 optional int64 id = 1; | 101 optional int64 id = 1; |
94 optional int64 parent_id = 2; | 102 optional int64 parent_id = 2; |
95 optional int64 owner_id = 3; | 103 optional int64 owner_id = 3; |
96 | 104 |
97 // The following fields correspond to the possible values for TreeNode::data. | 105 // The following fields correspond to the possible values for TreeNode::data. |
98 // Only one of these fields should be set, based on the type of property tree | 106 // Only one of these fields should be set, based on the type of property tree |
99 // this node belongs to. | 107 // this node belongs to. |
100 optional TranformNodeData transform_node_data = 1000; | 108 optional TranformNodeData transform_node_data = 1000; |
101 optional ClipNodeData clip_node_data = 1001; | 109 optional ClipNodeData clip_node_data = 1001; |
102 optional EffectNodeData effect_node_data = 1002; | 110 optional EffectNodeData effect_node_data = 1002; |
| 111 optional ScrollNodeData scroll_node_data = 1003; |
103 } | 112 } |
104 | 113 |
105 // This defines the proto used for all property trees. PropertyType denotes the | 114 // This defines the proto used for all property trees. PropertyType denotes the |
106 // type of this tree. | 115 // type of this tree. |
107 message PropertyTree { | 116 message PropertyTree { |
108 enum PropertyType { | 117 enum PropertyType { |
109 Transform = 1; | 118 Transform = 1; |
110 Clip = 2; | 119 Clip = 2; |
111 Effect = 3; | 120 Effect = 3; |
| 121 Scroll = 4; |
112 } | 122 } |
113 | 123 |
114 // The following fields are the base PropertyTree properties. This list | 124 // The following fields are the base PropertyTree properties. This list |
115 // corresponds to the data members from class PropertyTree. | 125 // corresponds to the data members from class PropertyTree. |
116 optional PropertyType property_type = 1; | 126 optional PropertyType property_type = 1; |
117 repeated TreeNode nodes = 2; | 127 repeated TreeNode nodes = 2; |
118 optional bool needs_update = 3; | 128 optional bool needs_update = 3; |
119 | 129 |
120 // The following fields denote the data members for each subclass of | 130 // The following fields denote the data members for each subclass of |
121 // PropertyTree. Only one of these fields should be set, depending on the type | 131 // PropertyTree. Only one of these fields should be set, depending on the type |
(...skipping 13 matching lines...) Expand all Loading... |
135 [packed = true]; | 145 [packed = true]; |
136 repeated int64 nodes_affected_by_outer_viewport_bounds_delta = 8 | 146 repeated int64 nodes_affected_by_outer_viewport_bounds_delta = 8 |
137 [packed = true]; | 147 [packed = true]; |
138 } | 148 } |
139 | 149 |
140 // Proto for class PropertyTrees. | 150 // Proto for class PropertyTrees. |
141 message PropertyTrees { | 151 message PropertyTrees { |
142 optional PropertyTree transform_tree = 1; | 152 optional PropertyTree transform_tree = 1; |
143 optional PropertyTree effect_tree = 2; | 153 optional PropertyTree effect_tree = 2; |
144 optional PropertyTree clip_tree = 3; | 154 optional PropertyTree clip_tree = 3; |
| 155 optional PropertyTree scroll_tree = 4; |
145 | 156 |
146 optional bool needs_rebuild = 4; | 157 optional bool needs_rebuild = 5; |
147 optional bool non_root_surfaces_enabled = 5; | 158 optional bool non_root_surfaces_enabled = 6; |
148 optional int64 sequence_number = 6; | 159 optional int64 sequence_number = 7; |
149 } | 160 } |
OLD | NEW |