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

Side by Side Diff: cc/proto/property_tree.proto

Issue 2493853002: cc/blimp: Proto Cleanup. (Closed)
Patch Set: Rebase Created 4 years, 1 month 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
« no previous file with comments | « cc/proto/memory_allocation.proto ('k') | cc/proto/recording_source.proto » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
(Empty)
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
3 // found in the LICENSE file.
4
5 syntax = "proto2";
6
7 import "element_id.proto";
8 import "layer_sticky_position_constraint.proto";
9 import "rectf.proto";
10 import "scroll_offset.proto";
11 import "size.proto";
12 import "skxfermode.proto";
13 import "synced_property.proto";
14 import "transform.proto";
15 import "vector2df.proto";
16
17 option optimize_for = LITE_RUNTIME;
18
19 package cc.proto;
20
21 // The messages declared in this file correspond to the classes declared in
22 // cc/trees/property_tree.h
23
24 // Proto for struct TransformNodeData.
25 // NEXT ID: 44
26 message TranformNodeData {
27 optional Transform pre_local = 1;
28 optional Transform local = 2;
29 optional Transform post_local = 3;
30 optional Transform to_parent = 4;
31
32 optional int64 source_node_id = 11;
33 optional bool needs_local_transform_update = 12;
34 optional bool node_and_ancestors_are_animated_or_invertible = 41;
35 optional bool is_invertible = 13;
36 optional bool ancestors_are_invertible = 14;
37 optional bool has_potential_animation = 15;
38 optional bool is_currently_animating = 42;
39 optional bool to_screen_is_potentially_animated = 16;
40 optional bool has_only_translation_animations = 17;
41 optional bool flattens_inherited_transform = 19;
42 optional bool node_and_ancestors_are_flat = 20;
43 optional bool node_and_ancestors_have_only_integer_translation = 21;
44 optional bool scrolls = 22;
45 optional bool should_be_snapped = 43;
46 optional bool moved_by_inner_viewport_bounds_delta_x = 24;
47 optional bool moved_by_inner_viewport_bounds_delta_y = 25;
48 optional bool moved_by_outer_viewport_bounds_delta_x = 26;
49 optional bool moved_by_outer_viewport_bounds_delta_y = 27;
50 optional bool in_subtree_of_page_scale_layer = 28;
51 optional bool transform_changed = 40;
52 optional float post_local_scale_factor = 29;
53
54 optional ScrollOffset scroll_offset = 35;
55 optional Vector2dF snap_amount = 36;
56 optional Vector2dF source_offset = 37;
57 optional Vector2dF source_to_parent = 38;
58 optional int64 sorting_context_id = 39;
59 }
60
61 // Proto for TransformCachedNodeData
62 message TransformCachedNodeData {
63 optional Transform from_screen = 3;
64 optional Transform to_screen = 4;
65 optional int64 target_id = 5;
66 optional int64 content_target_id = 6;
67 optional bool is_showing_backface = 7;
68 }
69
70 // Proto for StickyPositionNodeData
71 message StickyPositionNodeData {
72 optional int64 scroll_ancestor = 1;
73 optional LayerStickyPositionConstraint constraints = 2;
74 optional Vector2dF main_thread_offset = 3;
75 }
76
77 // Proto for struct ClipNodeData.
78 // NEXT ID: 14
79 message ClipNodeData {
80 enum ClipType {
81 NONE = 1;
82 APPLIES_LOCAL_CLIP = 2;
83 }
84 optional ClipType clip_type = 13;
85 optional RectF clip = 1;
86 optional RectF combined_clip_in_target_space = 2;
87 optional RectF clip_in_target_space = 3;
88
89 optional int64 transform_id = 4;
90 optional int64 target_transform_id = 5;
91 optional int64 target_effect_id = 12;
92 optional bool applies_local_clip = 6;
93 optional bool layer_clipping_uses_only_local_clip = 7;
94 optional bool target_is_clipped = 8;
95 optional bool layers_are_clipped = 9;
96 optional bool layers_are_clipped_when_surfaces_disabled = 10;
97 optional bool resets_clip = 11;
98 }
99
100 // Proto for struct EffectNodeData.
101 // NEXT ID: 27
102 message EffectNodeData {
103 optional float opacity = 1;
104 optional float screen_space_opacity = 2;
105 optional SkXfermode.Mode blend_mode = 25;
106 optional Size unscaled_mask_target_size = 26;
107 optional bool has_render_surface = 3;
108 optional bool has_copy_request = 4;
109 optional bool hidden_by_backface_visibility = 14;
110 optional bool double_sided = 13;
111 optional bool is_drawn = 6;
112 optional bool subtree_hidden = 15;
113 optional bool has_potential_filter_animation = 21;
114 optional bool has_potential_opacity_animation = 7;
115 optional bool is_currently_animating_filter = 22;
116 optional bool is_currently_animating_opacity = 16;
117 optional bool effect_changed = 11;
118 optional int64 num_copy_requests_in_subtree = 8;
119 optional int64 transform_id = 9;
120 optional int64 clip_id = 10;
121 optional int64 target_id = 12;
122 optional int64 mask_layer_id = 17;
123 optional Vector2dF surface_contents_scale = 20;
124 // TODO(nyquist): Add support for FilterOperation. See crbug.com/541321.
125 // repeated FilterOperation filters = 23;
126 // repeated FilterOperation background_filters = 24;
127 }
128
129 // Proto for struct ScrollNodeData
130 // NEXT ID: 16
131 message ScrollNodeData {
132 optional bool scrollable = 1;
133 optional int32 main_thread_scrolling_reasons = 2;
134 optional bool contains_non_fast_scrollable_region = 3;
135 optional Size scroll_clip_layer_bounds = 4;
136 optional Size bounds = 5;
137 optional bool max_scroll_offset_affected_by_page_scale = 6;
138 optional bool is_inner_viewport_scroll_layer = 7;
139 optional bool is_outer_viewport_scroll_layer = 8;
140 optional Vector2dF offset_to_transform_parent = 9;
141 optional bool should_flatten = 10;
142 optional bool user_scrollable_horizontal = 13;
143 optional bool user_scrollable_vertical = 14;
144 optional ElementId element_id = 15;
145 optional int64 transform_id = 11;
146 }
147
148 // This defines the proto used for all types of struct TreeNode.
149 message TreeNode {
150 // The following fields are the base TreeNode properties. This list
151 // corresponds to the data members from struct TreeNode.
152 optional int64 id = 1;
153 optional int64 parent_id = 2;
154 optional int64 owner_id = 3;
155
156 // The following fields correspond to the possible values for TreeNode::data.
157 // Only one of these fields should be set, based on the type of property tree
158 // this node belongs to.
159 optional TranformNodeData transform_node_data = 1000;
160 optional ClipNodeData clip_node_data = 1001;
161 optional EffectNodeData effect_node_data = 1002;
162 optional ScrollNodeData scroll_node_data = 1003;
163 }
164
165 // This defines the proto used for all property trees. PropertyType denotes the
166 // type of this tree.
167 message PropertyTree {
168 enum PropertyType {
169 Transform = 1;
170 Clip = 2;
171 Effect = 3;
172 Scroll = 4;
173 }
174
175 // The following fields are the base PropertyTree properties. This list
176 // corresponds to the data members from class PropertyTree.
177 optional PropertyType property_type = 1;
178 repeated TreeNode nodes = 2;
179 optional bool needs_update = 3;
180
181 // The following fields denote the data members for each subclass of
182 // PropertyTree. Only one of these fields should be set, depending on the type
183 // of this property tree.
184 optional TransformTreeData transform_tree_data = 1000;
185 optional ScrollTreeData scroll_tree_data = 1001;
186 optional EffectTreeData effect_tree_data = 1002;
187 }
188
189 message ScrollOffsetMapEntry {
190 required int64 layer_id = 1;
191 optional SyncedProperty scroll_offset = 2;
192 }
193
194 // Proto for data members of class ScrollTree
195 message ScrollTreeData {
196 optional int64 currently_scrolling_node_id = 1;
197 repeated ScrollOffsetMapEntry layer_id_to_scroll_offset_map = 2;
198 }
199
200 // Proto for data members of class TransformTree.
201 message TransformTreeData {
202 optional bool source_to_parent_updates_allowed = 1;
203 optional float page_scale_factor = 2;
204 optional float device_scale_factor = 3;
205 optional float device_transform_scale_factor = 4;
206 repeated int64 nodes_affected_by_inner_viewport_bounds_delta = 7
207 [packed = true];
208 repeated int64 nodes_affected_by_outer_viewport_bounds_delta = 8
209 [packed = true];
210 repeated TransformCachedNodeData cached_data = 9;
211 repeated StickyPositionNodeData sticky_position_data = 10;
212 }
213
214 // Proto for data members of class EffectTree.
215 message EffectTreeData {
216 repeated int64 mask_layer_ids = 1 [packed = true];
217 }
218
219 // Proto for class PropertyTrees.
220 // NEXT ID: 17
221 message PropertyTrees {
222 optional PropertyTree transform_tree = 1;
223 optional PropertyTree effect_tree = 2;
224 optional PropertyTree clip_tree = 3;
225 optional PropertyTree scroll_tree = 7;
226
227 optional bool needs_rebuild = 4;
228 optional bool non_root_surfaces_enabled = 5;
229 optional bool changed = 11;
230 optional bool full_tree_damaged = 12;
231 optional int64 sequence_number = 6;
232 optional bool is_main_thread = 13;
233 optional bool is_active = 14;
234
235 optional Vector2dF inner_viewport_container_bounds_delta = 8;
236 optional Vector2dF outer_viewport_container_bounds_delta = 9;
237 optional Vector2dF inner_viewport_scroll_bounds_delta = 10;
238 repeated int64 always_use_active_tree_opacity_effect_ids = 15 [packed = true];
239 }
OLDNEW
« no previous file with comments | « cc/proto/memory_allocation.proto ('k') | cc/proto/recording_source.proto » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698