12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758 |
- // Copyright 2016 The Chromium Authors. All rights reserved.
- // Use of this source code is governed by a BSD-style license that can be
- // found in the LICENSE file.
- #ifndef UI_COMPOSITOR_TEST_MULTI_LAYER_ANIMATOR_TEST_CONTROLLER_H_
- #define UI_COMPOSITOR_TEST_MULTI_LAYER_ANIMATOR_TEST_CONTROLLER_H_
- #include <vector>
- #include "base/memory/raw_ptr.h"
- #include "base/time/time.h"
- namespace ui {
- class LayerAnimator;
- namespace test {
- class MultiLayerAnimatorTestControllerDelegate;
- // Test API class to control multiple LayerAnimators.
- class MultiLayerAnimatorTestController {
- public:
- explicit MultiLayerAnimatorTestController(
- MultiLayerAnimatorTestControllerDelegate* delegate);
- MultiLayerAnimatorTestController(const MultiLayerAnimatorTestController&) =
- delete;
- MultiLayerAnimatorTestController& operator=(
- const MultiLayerAnimatorTestController&) = delete;
- virtual ~MultiLayerAnimatorTestController();
- // Disables the animation timers when |disable_timers| is true.
- void SetDisableAnimationTimers(bool disable_timers);
- // Returns true if any animations are active.
- bool HasActiveAnimations() const;
- // Completes all running animations.
- void CompleteAnimations();
- private:
- // Get a list of all the LayerAnimator's used. Delegates to |delegate_|.
- std::vector<LayerAnimator*> GetLayerAnimators();
- std::vector<LayerAnimator*> GetLayerAnimators() const;
- // Progresses all running LayerAnimationSequences by the given |duration|.
- //
- // NOTE: This function will NOT progress LayerAnimationSequences that are
- // queued, only the running ones will be progressed.
- void StepAnimations(const base::TimeDelta& duration);
- raw_ptr<MultiLayerAnimatorTestControllerDelegate> delegate_;
- };
- } // namespace test
- } // namespace ui
- #endif // UI_COMPOSITOR_TEST_MULTI_LAYER_ANIMATOR_TEST_CONTROLLER_H_
|