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 #include "cc/test/animation_timelines_test_common.h" | 5 #include "cc/test/animation_timelines_test_common.h" |
6 | 6 |
7 #include "base/memory/ptr_util.h" | 7 #include "base/memory/ptr_util.h" |
8 #include "cc/animation/animation_events.h" | 8 #include "cc/animation/animation_events.h" |
9 #include "cc/animation/animation_id_provider.h" | 9 #include "cc/animation/animation_id_provider.h" |
10 #include "cc/animation/animation_player.h" | 10 #include "cc/animation/animation_player.h" |
(...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
67 host_->SetMutatorHostClient(nullptr); | 67 host_->SetMutatorHostClient(nullptr); |
68 } | 68 } |
69 | 69 |
70 void TestHostClient::ClearMutatedProperties() { | 70 void TestHostClient::ClearMutatedProperties() { |
71 for (auto& kv : layers_in_pending_tree_) | 71 for (auto& kv : layers_in_pending_tree_) |
72 kv.second->ClearMutatedProperties(); | 72 kv.second->ClearMutatedProperties(); |
73 for (auto& kv : layers_in_active_tree_) | 73 for (auto& kv : layers_in_active_tree_) |
74 kv.second->ClearMutatedProperties(); | 74 kv.second->ClearMutatedProperties(); |
75 } | 75 } |
76 | 76 |
77 bool TestHostClient::IsLayerInTree(int layer_id, | 77 bool TestHostClient::IsElementInList(ElementId element_id, |
78 LayerTreeType tree_type) const { | 78 ElementListType list_type) const { |
79 return tree_type == LayerTreeType::ACTIVE | 79 return list_type == ElementListType::ACTIVE |
80 ? layers_in_active_tree_.count(layer_id) | 80 ? layers_in_active_tree_.count(element_id) |
81 : layers_in_pending_tree_.count(layer_id); | 81 : layers_in_pending_tree_.count(element_id); |
82 } | 82 } |
83 | 83 |
84 void TestHostClient::SetMutatorsNeedCommit() { | 84 void TestHostClient::SetMutatorsNeedCommit() { |
85 mutators_need_commit_ = true; | 85 mutators_need_commit_ = true; |
86 } | 86 } |
87 | 87 |
88 void TestHostClient::SetMutatorsNeedRebuildPropertyTrees() {} | 88 void TestHostClient::SetMutatorsNeedRebuildPropertyTrees() {} |
89 | 89 |
90 void TestHostClient::SetLayerFilterMutated(int layer_id, | 90 void TestHostClient::SetElementFilterMutated(ElementId element_id, |
91 LayerTreeType tree_type, | 91 ElementListType list_type, |
92 const FilterOperations& filters) { | 92 const FilterOperations& filters) { |
93 TestLayer* layer = FindTestLayer(layer_id, tree_type); | 93 TestLayer* layer = FindTestLayer(element_id, list_type); |
94 if (layer) | 94 if (layer) |
95 layer->set_filters(filters); | 95 layer->set_filters(filters); |
96 } | 96 } |
97 | 97 |
98 void TestHostClient::SetLayerOpacityMutated(int layer_id, | 98 void TestHostClient::SetElementOpacityMutated(ElementId element_id, |
99 LayerTreeType tree_type, | 99 ElementListType list_type, |
100 float opacity) { | 100 float opacity) { |
101 TestLayer* layer = FindTestLayer(layer_id, tree_type); | 101 TestLayer* layer = FindTestLayer(element_id, list_type); |
102 if (layer) | 102 if (layer) |
103 layer->set_opacity(opacity); | 103 layer->set_opacity(opacity); |
104 } | 104 } |
105 | 105 |
106 void TestHostClient::SetLayerTransformMutated(int layer_id, | 106 void TestHostClient::SetElementTransformMutated( |
107 LayerTreeType tree_type, | 107 ElementId element_id, |
108 const gfx::Transform& transform) { | 108 ElementListType list_type, |
109 TestLayer* layer = FindTestLayer(layer_id, tree_type); | 109 const gfx::Transform& transform) { |
| 110 TestLayer* layer = FindTestLayer(element_id, list_type); |
110 if (layer) | 111 if (layer) |
111 layer->set_transform(transform); | 112 layer->set_transform(transform); |
112 } | 113 } |
113 | 114 |
114 void TestHostClient::SetLayerScrollOffsetMutated( | 115 void TestHostClient::SetElementScrollOffsetMutated( |
115 int layer_id, | 116 ElementId element_id, |
116 LayerTreeType tree_type, | 117 ElementListType list_type, |
117 const gfx::ScrollOffset& scroll_offset) { | 118 const gfx::ScrollOffset& scroll_offset) { |
118 TestLayer* layer = FindTestLayer(layer_id, tree_type); | 119 TestLayer* layer = FindTestLayer(element_id, list_type); |
119 if (layer) | 120 if (layer) |
120 layer->set_scroll_offset(scroll_offset); | 121 layer->set_scroll_offset(scroll_offset); |
121 } | 122 } |
122 | 123 |
123 void TestHostClient::LayerTransformIsPotentiallyAnimatingChanged( | 124 void TestHostClient::ElementTransformIsPotentiallyAnimatingChanged( |
124 int layer_id, | 125 ElementId element_id, |
125 LayerTreeType tree_type, | 126 ElementListType list_type, |
126 bool is_animating) { | 127 bool is_animating) { |
127 TestLayer* layer = FindTestLayer(layer_id, tree_type); | 128 TestLayer* layer = FindTestLayer(element_id, list_type); |
128 if (layer) | 129 if (layer) |
129 layer->set_transform_is_animating(is_animating); | 130 layer->set_transform_is_animating(is_animating); |
130 } | 131 } |
131 | 132 |
132 void TestHostClient::SetScrollOffsetForAnimation( | 133 void TestHostClient::SetScrollOffsetForAnimation( |
133 const gfx::ScrollOffset& scroll_offset) { | 134 const gfx::ScrollOffset& scroll_offset) { |
134 scroll_offset_ = scroll_offset; | 135 scroll_offset_ = scroll_offset; |
135 } | 136 } |
136 | 137 |
137 gfx::ScrollOffset TestHostClient::GetScrollOffsetForAnimation( | 138 gfx::ScrollOffset TestHostClient::GetScrollOffsetForAnimation( |
138 int layer_id) const { | 139 ElementId element_id) const { |
139 return scroll_offset_; | 140 return scroll_offset_; |
140 } | 141 } |
141 | 142 |
142 void TestHostClient::RegisterLayer(int layer_id, LayerTreeType tree_type) { | 143 void TestHostClient::RegisterElement(ElementId element_id, |
143 LayerIdToTestLayer& layers_in_tree = tree_type == LayerTreeType::ACTIVE | 144 ElementListType list_type) { |
| 145 LayerIdToTestLayer& layers_in_tree = list_type == ElementListType::ACTIVE |
144 ? layers_in_active_tree_ | 146 ? layers_in_active_tree_ |
145 : layers_in_pending_tree_; | 147 : layers_in_pending_tree_; |
146 DCHECK(layers_in_tree.find(layer_id) == layers_in_tree.end()); | 148 DCHECK(layers_in_tree.find(element_id) == layers_in_tree.end()); |
147 layers_in_tree[layer_id] = TestLayer::Create(); | 149 layers_in_tree[element_id] = TestLayer::Create(); |
148 | 150 |
149 DCHECK(host_); | 151 DCHECK(host_); |
150 host_->RegisterLayer(layer_id, tree_type); | 152 host_->RegisterElement(element_id, list_type); |
151 } | 153 } |
152 | 154 |
153 void TestHostClient::UnregisterLayer(int layer_id, LayerTreeType tree_type) { | 155 void TestHostClient::UnregisterElement(ElementId element_id, |
| 156 ElementListType list_type) { |
154 DCHECK(host_); | 157 DCHECK(host_); |
155 host_->UnregisterLayer(layer_id, tree_type); | 158 host_->UnregisterElement(element_id, list_type); |
156 | 159 |
157 LayerIdToTestLayer& layers_in_tree = tree_type == LayerTreeType::ACTIVE | 160 LayerIdToTestLayer& layers_in_tree = list_type == ElementListType::ACTIVE |
158 ? layers_in_active_tree_ | 161 ? layers_in_active_tree_ |
159 : layers_in_pending_tree_; | 162 : layers_in_pending_tree_; |
160 auto kv = layers_in_tree.find(layer_id); | 163 auto kv = layers_in_tree.find(element_id); |
161 DCHECK(kv != layers_in_tree.end()); | 164 DCHECK(kv != layers_in_tree.end()); |
162 layers_in_tree.erase(kv); | 165 layers_in_tree.erase(kv); |
163 } | 166 } |
164 | 167 |
165 bool TestHostClient::IsPropertyMutated(int layer_id, | 168 bool TestHostClient::IsPropertyMutated(ElementId element_id, |
166 LayerTreeType tree_type, | 169 ElementListType list_type, |
167 TargetProperty::Type property) const { | 170 TargetProperty::Type property) const { |
168 TestLayer* layer = FindTestLayer(layer_id, tree_type); | 171 TestLayer* layer = FindTestLayer(element_id, list_type); |
169 EXPECT_TRUE(layer); | 172 EXPECT_TRUE(layer); |
170 return layer->is_property_mutated(property); | 173 return layer->is_property_mutated(property); |
171 } | 174 } |
172 | 175 |
173 FilterOperations TestHostClient::GetFilters(int layer_id, | 176 FilterOperations TestHostClient::GetFilters(ElementId element_id, |
174 LayerTreeType tree_type) const { | 177 ElementListType list_type) const { |
175 TestLayer* layer = FindTestLayer(layer_id, tree_type); | 178 TestLayer* layer = FindTestLayer(element_id, list_type); |
176 EXPECT_TRUE(layer); | 179 EXPECT_TRUE(layer); |
177 return layer->filters(); | 180 return layer->filters(); |
178 } | 181 } |
179 | 182 |
180 float TestHostClient::GetOpacity(int layer_id, LayerTreeType tree_type) const { | 183 float TestHostClient::GetOpacity(ElementId element_id, |
181 TestLayer* layer = FindTestLayer(layer_id, tree_type); | 184 ElementListType list_type) const { |
| 185 TestLayer* layer = FindTestLayer(element_id, list_type); |
182 EXPECT_TRUE(layer); | 186 EXPECT_TRUE(layer); |
183 return layer->opacity(); | 187 return layer->opacity(); |
184 } | 188 } |
185 | 189 |
186 gfx::Transform TestHostClient::GetTransform(int layer_id, | 190 gfx::Transform TestHostClient::GetTransform(ElementId element_id, |
187 LayerTreeType tree_type) const { | 191 ElementListType list_type) const { |
188 TestLayer* layer = FindTestLayer(layer_id, tree_type); | 192 TestLayer* layer = FindTestLayer(element_id, list_type); |
189 EXPECT_TRUE(layer); | 193 EXPECT_TRUE(layer); |
190 return layer->transform(); | 194 return layer->transform(); |
191 } | 195 } |
192 | 196 |
193 gfx::ScrollOffset TestHostClient::GetScrollOffset( | 197 gfx::ScrollOffset TestHostClient::GetScrollOffset( |
194 int layer_id, | 198 ElementId element_id, |
195 LayerTreeType tree_type) const { | 199 ElementListType list_type) const { |
196 TestLayer* layer = FindTestLayer(layer_id, tree_type); | 200 TestLayer* layer = FindTestLayer(element_id, list_type); |
197 EXPECT_TRUE(layer); | 201 EXPECT_TRUE(layer); |
198 return layer->scroll_offset(); | 202 return layer->scroll_offset(); |
199 } | 203 } |
200 | 204 |
201 bool TestHostClient::GetTransformIsAnimating(int layer_id, | 205 bool TestHostClient::GetTransformIsAnimating(ElementId element_id, |
202 LayerTreeType tree_type) const { | 206 ElementListType list_type) const { |
203 TestLayer* layer = FindTestLayer(layer_id, tree_type); | 207 TestLayer* layer = FindTestLayer(element_id, list_type); |
204 EXPECT_TRUE(layer); | 208 EXPECT_TRUE(layer); |
205 return layer->transform_is_animating(); | 209 return layer->transform_is_animating(); |
206 } | 210 } |
207 | 211 |
208 void TestHostClient::ExpectFilterPropertyMutated(int layer_id, | 212 void TestHostClient::ExpectFilterPropertyMutated(ElementId element_id, |
209 LayerTreeType tree_type, | 213 ElementListType list_type, |
210 float brightness) const { | 214 float brightness) const { |
211 TestLayer* layer = FindTestLayer(layer_id, tree_type); | 215 TestLayer* layer = FindTestLayer(element_id, list_type); |
212 EXPECT_TRUE(layer); | 216 EXPECT_TRUE(layer); |
213 EXPECT_TRUE(layer->is_property_mutated(TargetProperty::FILTER)); | 217 EXPECT_TRUE(layer->is_property_mutated(TargetProperty::FILTER)); |
214 EXPECT_EQ(brightness, layer->brightness()); | 218 EXPECT_EQ(brightness, layer->brightness()); |
215 } | 219 } |
216 | 220 |
217 void TestHostClient::ExpectOpacityPropertyMutated(int layer_id, | 221 void TestHostClient::ExpectOpacityPropertyMutated(ElementId element_id, |
218 LayerTreeType tree_type, | 222 ElementListType list_type, |
219 float opacity) const { | 223 float opacity) const { |
220 TestLayer* layer = FindTestLayer(layer_id, tree_type); | 224 TestLayer* layer = FindTestLayer(element_id, list_type); |
221 EXPECT_TRUE(layer); | 225 EXPECT_TRUE(layer); |
222 EXPECT_TRUE(layer->is_property_mutated(TargetProperty::OPACITY)); | 226 EXPECT_TRUE(layer->is_property_mutated(TargetProperty::OPACITY)); |
223 EXPECT_EQ(opacity, layer->opacity()); | 227 EXPECT_EQ(opacity, layer->opacity()); |
224 } | 228 } |
225 | 229 |
226 void TestHostClient::ExpectTransformPropertyMutated(int layer_id, | 230 void TestHostClient::ExpectTransformPropertyMutated(ElementId element_id, |
227 LayerTreeType tree_type, | 231 ElementListType list_type, |
228 int transform_x, | 232 int transform_x, |
229 int transform_y) const { | 233 int transform_y) const { |
230 TestLayer* layer = FindTestLayer(layer_id, tree_type); | 234 TestLayer* layer = FindTestLayer(element_id, list_type); |
231 EXPECT_TRUE(layer); | 235 EXPECT_TRUE(layer); |
232 EXPECT_TRUE(layer->is_property_mutated(TargetProperty::TRANSFORM)); | 236 EXPECT_TRUE(layer->is_property_mutated(TargetProperty::TRANSFORM)); |
233 EXPECT_EQ(transform_x, layer->transform_x()); | 237 EXPECT_EQ(transform_x, layer->transform_x()); |
234 EXPECT_EQ(transform_y, layer->transform_y()); | 238 EXPECT_EQ(transform_y, layer->transform_y()); |
235 } | 239 } |
236 | 240 |
237 TestLayer* TestHostClient::FindTestLayer(int layer_id, | 241 TestLayer* TestHostClient::FindTestLayer(ElementId element_id, |
238 LayerTreeType tree_type) const { | 242 ElementListType list_type) const { |
239 const LayerIdToTestLayer& layers_in_tree = tree_type == LayerTreeType::ACTIVE | 243 const LayerIdToTestLayer& layers_in_tree = |
240 ? layers_in_active_tree_ | 244 list_type == ElementListType::ACTIVE ? layers_in_active_tree_ |
241 : layers_in_pending_tree_; | 245 : layers_in_pending_tree_; |
242 auto kv = layers_in_tree.find(layer_id); | 246 auto kv = layers_in_tree.find(element_id); |
243 if (kv == layers_in_tree.end()) | 247 if (kv == layers_in_tree.end()) |
244 return nullptr; | 248 return nullptr; |
245 | 249 |
246 DCHECK(kv->second); | 250 DCHECK(kv->second); |
247 return kv->second.get(); | 251 return kv->second.get(); |
248 } | 252 } |
249 | 253 |
250 TestAnimationDelegate::TestAnimationDelegate() | 254 TestAnimationDelegate::TestAnimationDelegate() |
251 : started_(false), | 255 : started_(false), |
252 finished_(false), | 256 finished_(false), |
(...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
310 host_impl_->ClearTimelines(); | 314 host_impl_->ClearTimelines(); |
311 host_->ClearTimelines(); | 315 host_->ClearTimelines(); |
312 } | 316 } |
313 | 317 |
314 void AnimationTimelinesTest::CreateTestLayer( | 318 void AnimationTimelinesTest::CreateTestLayer( |
315 bool needs_active_value_observations, | 319 bool needs_active_value_observations, |
316 bool needs_pending_value_observations) { | 320 bool needs_pending_value_observations) { |
317 CreateTestMainLayer(); | 321 CreateTestMainLayer(); |
318 | 322 |
319 if (needs_pending_value_observations) | 323 if (needs_pending_value_observations) |
320 CreateTestImplLayer(LayerTreeType::PENDING); | 324 CreateTestImplLayer(ElementListType::PENDING); |
321 if (needs_active_value_observations) | 325 if (needs_active_value_observations) |
322 CreateTestImplLayer(LayerTreeType::ACTIVE); | 326 CreateTestImplLayer(ElementListType::ACTIVE); |
323 } | 327 } |
324 | 328 |
325 void AnimationTimelinesTest::CreateTestMainLayer() { | 329 void AnimationTimelinesTest::CreateTestMainLayer() { |
326 client_.RegisterLayer(element_id_, LayerTreeType::ACTIVE); | 330 client_.RegisterElement(element_id_, ElementListType::ACTIVE); |
327 } | 331 } |
328 | 332 |
329 void AnimationTimelinesTest::CreateTestImplLayer( | 333 void AnimationTimelinesTest::CreateTestImplLayer( |
330 LayerTreeType layer_tree_type) { | 334 ElementListType layer_tree_type) { |
331 client_impl_.RegisterLayer(element_id_, layer_tree_type); | 335 client_impl_.RegisterElement(element_id_, layer_tree_type); |
332 } | 336 } |
333 | 337 |
334 void AnimationTimelinesTest::AttachTimelinePlayerLayer() { | 338 void AnimationTimelinesTest::AttachTimelinePlayerLayer() { |
335 host_->AddAnimationTimeline(timeline_); | 339 host_->AddAnimationTimeline(timeline_); |
336 timeline_->AttachPlayer(player_); | 340 timeline_->AttachPlayer(player_); |
337 player_->AttachLayer(element_id_); | 341 player_->AttachLayer(element_id_); |
338 } | 342 } |
339 | 343 |
340 void AnimationTimelinesTest::CreateImplTimelineAndPlayer() { | 344 void AnimationTimelinesTest::CreateImplTimelineAndPlayer() { |
341 host_->PushPropertiesTo(host_impl_); | 345 host_->PushPropertiesTo(host_impl_); |
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
377 | 381 |
378 host_impl_->AnimateLayers(time); | 382 host_impl_->AnimateLayers(time); |
379 host_impl_->UpdateAnimationState(true, events.get()); | 383 host_impl_->UpdateAnimationState(true, events.get()); |
380 EXPECT_EQ(expect_events, events->events_.size()); | 384 EXPECT_EQ(expect_events, events->events_.size()); |
381 | 385 |
382 host_->AnimateLayers(time); | 386 host_->AnimateLayers(time); |
383 host_->UpdateAnimationState(true, nullptr); | 387 host_->UpdateAnimationState(true, nullptr); |
384 host_->SetAnimationEvents(std::move(events)); | 388 host_->SetAnimationEvents(std::move(events)); |
385 } | 389 } |
386 | 390 |
387 AnimationPlayer* AnimationTimelinesTest::GetPlayerForLayerId(int layer_id) { | 391 AnimationPlayer* AnimationTimelinesTest::GetPlayerForLayerId( |
| 392 ElementId element_id) { |
388 const scoped_refptr<ElementAnimations> element_animations = | 393 const scoped_refptr<ElementAnimations> element_animations = |
389 host_->GetElementAnimationsForLayerId(layer_id); | 394 host_->GetElementAnimationsForElementId(element_id); |
390 return element_animations ? element_animations->players_list().head()->value() | 395 return element_animations ? element_animations->players_list().head()->value() |
391 : nullptr; | 396 : nullptr; |
392 } | 397 } |
393 | 398 |
394 AnimationPlayer* AnimationTimelinesTest::GetImplPlayerForLayerId(int layer_id) { | 399 AnimationPlayer* AnimationTimelinesTest::GetImplPlayerForLayerId( |
| 400 ElementId element_id) { |
395 const scoped_refptr<ElementAnimations> element_animations = | 401 const scoped_refptr<ElementAnimations> element_animations = |
396 host_impl_->GetElementAnimationsForLayerId(layer_id); | 402 host_impl_->GetElementAnimationsForElementId(element_id); |
397 return element_animations ? element_animations->players_list().head()->value() | 403 return element_animations ? element_animations->players_list().head()->value() |
398 : nullptr; | 404 : nullptr; |
399 } | 405 } |
400 | 406 |
401 int AnimationTimelinesTest::NextTestLayerId() { | 407 int AnimationTimelinesTest::NextTestLayerId() { |
402 next_test_layer_id_++; | 408 next_test_layer_id_++; |
403 return next_test_layer_id_; | 409 return next_test_layer_id_; |
404 } | 410 } |
405 | 411 |
406 } // namespace cc | 412 } // namespace cc |
OLD | NEW |