| OLD | NEW |
| 1 // Copyright 2012 The Chromium Authors. All rights reserved. | 1 // Copyright 2012 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/trees/layer_tree_host.h" | 5 #include "cc/trees/layer_tree_host.h" |
| 6 | 6 |
| 7 #include "cc/animation/animation_curve.h" | 7 #include "cc/animation/animation_curve.h" |
| 8 #include "cc/animation/layer_animation_controller.h" | 8 #include "cc/animation/layer_animation_controller.h" |
| 9 #include "cc/animation/scroll_offset_animation_curve.h" | 9 #include "cc/animation/scroll_offset_animation_curve.h" |
| 10 #include "cc/animation/timing_function.h" | 10 #include "cc/animation/timing_function.h" |
| (...skipping 1025 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1036 ScrollOffsetAnimationCurve::Create(gfx::ScrollOffset(6500.f, 7500.f), | 1036 ScrollOffsetAnimationCurve::Create(gfx::ScrollOffset(6500.f, 7500.f), |
| 1037 EaseInOutTimingFunction::Create())); | 1037 EaseInOutTimingFunction::Create())); |
| 1038 scoped_ptr<Animation> animation( | 1038 scoped_ptr<Animation> animation( |
| 1039 Animation::Create(curve.Pass(), 1, 0, Animation::ScrollOffset)); | 1039 Animation::Create(curve.Pass(), 1, 0, Animation::ScrollOffset)); |
| 1040 animation->set_needs_synchronized_start_time(true); | 1040 animation->set_needs_synchronized_start_time(true); |
| 1041 scroll_layer_->AddAnimation(animation.Pass()); | 1041 scroll_layer_->AddAnimation(animation.Pass()); |
| 1042 } | 1042 } |
| 1043 | 1043 |
| 1044 void BeginTest() override { PostSetNeedsCommitToMainThread(); } | 1044 void BeginTest() override { PostSetNeedsCommitToMainThread(); } |
| 1045 | 1045 |
| 1046 void DidCommit() override { | 1046 void BeginMainFrame(const BeginFrameArgs& args) override { |
| 1047 Animation* animation = | 1047 switch (layer_tree_host()->source_frame_number()) { |
| 1048 scroll_layer_->layer_animation_controller()->GetAnimation( | 1048 case 0: |
| 1049 Animation::ScrollOffset); | 1049 break; |
| 1050 if (animation) { | 1050 case 1: { |
| 1051 scroll_layer_->layer_animation_controller()->RemoveAnimation( | 1051 Animation* animation = |
| 1052 animation->id()); | 1052 scroll_layer_->layer_animation_controller()->GetAnimation( |
| 1053 scroll_layer_->SetScrollOffset(final_postion_); | 1053 Animation::ScrollOffset); |
| 1054 } else { | 1054 scroll_layer_->layer_animation_controller()->RemoveAnimation( |
| 1055 EXPECT_EQ(final_postion_, scroll_layer_->scroll_offset()); | 1055 animation->id()); |
| 1056 scroll_layer_->SetScrollOffset(final_postion_); |
| 1057 break; |
| 1058 } |
| 1059 default: |
| 1060 EXPECT_EQ(final_postion_, scroll_layer_->scroll_offset()); |
| 1056 } | 1061 } |
| 1057 } | 1062 } |
| 1058 | 1063 |
| 1059 void BeginCommitOnThread(LayerTreeHostImpl* host_impl) override { | 1064 void BeginCommitOnThread(LayerTreeHostImpl* host_impl) override { |
| 1060 if (host_impl->settings().impl_side_painting) | 1065 if (host_impl->settings().impl_side_painting) |
| 1061 host_impl->BlockNotifyReadyToActivateForTesting(true); | 1066 host_impl->BlockNotifyReadyToActivateForTesting(true); |
| 1062 } | 1067 } |
| 1063 | 1068 |
| 1064 void WillBeginImplFrameOnThread(LayerTreeHostImpl* host_impl, | 1069 void WillBeginImplFrameOnThread(LayerTreeHostImpl* host_impl, |
| 1065 const BeginFrameArgs& args) override { | 1070 const BeginFrameArgs& args) override { |
| (...skipping 194 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1260 private: | 1265 private: |
| 1261 scoped_refptr<Layer> content_; | 1266 scoped_refptr<Layer> content_; |
| 1262 int num_swap_buffers_; | 1267 int num_swap_buffers_; |
| 1263 }; | 1268 }; |
| 1264 | 1269 |
| 1265 SINGLE_AND_MULTI_THREAD_TEST_F( | 1270 SINGLE_AND_MULTI_THREAD_TEST_F( |
| 1266 LayerTreeHostAnimationTestAddAnimationAfterAnimating); | 1271 LayerTreeHostAnimationTestAddAnimationAfterAnimating); |
| 1267 | 1272 |
| 1268 } // namespace | 1273 } // namespace |
| 1269 } // namespace cc | 1274 } // namespace cc |
| OLD | NEW |