| Index: cc/layer_animation_controller.h
|
| diff --git a/cc/layer_animation_controller.h b/cc/layer_animation_controller.h
|
| index 786887be39e9f1881479fa896df7bc5bf300b2f5..5ffe12371cd360f8ecc063786467d7f442e33972 100644
|
| --- a/cc/layer_animation_controller.h
|
| +++ b/cc/layer_animation_controller.h
|
| @@ -32,6 +32,16 @@ class CC_EXPORT LayerAnimationController
|
| : public base::RefCounted<LayerAnimationController>,
|
| public LayerAnimationEventObserver {
|
| public:
|
| + // Controllers belonging to orphan layers begin in the
|
| + // NeverWaitedForLayout state. Once an animation is added to such
|
| + // a controller, it moves into the WaitingForLayout state, and then moves
|
| + // into the WaitedForLayout state after the next layout.
|
| + enum OrphanWaitStatus {
|
| + NeverWaitedForLayout = 0,
|
| + WaitingForLayout,
|
| + WaitedForLayout
|
| + };
|
| +
|
| static scoped_refptr<LayerAnimationController> create(int id);
|
|
|
| int id() const { return m_id; }
|
| @@ -77,10 +87,16 @@ public:
|
| void setForceSync() { m_forceSync = true; }
|
|
|
| void setAnimationRegistrar(AnimationRegistrar*);
|
| + AnimationRegistrar* animationRegistrar() { return m_registrar; }
|
|
|
| void addObserver(LayerAnimationValueObserver*);
|
| void removeObserver(LayerAnimationValueObserver*);
|
|
|
| + bool hasNonOrphanedObserver();
|
| +
|
| + void setOrphanWaitStatus(OrphanWaitStatus status) { m_orphanWaitStatus = status; }
|
| + OrphanWaitStatus orphanWaitStatus() const { return m_orphanWaitStatus; }
|
| +
|
| protected:
|
| friend class base::RefCounted<LayerAnimationController>;
|
|
|
| @@ -123,6 +139,8 @@ private:
|
|
|
| ObserverList<LayerAnimationValueObserver> m_observers;
|
|
|
| + OrphanWaitStatus m_orphanWaitStatus;
|
| +
|
| DISALLOW_COPY_AND_ASSIGN(LayerAnimationController);
|
| };
|
|
|
|
|