Index: ui/compositor/compositor.h |
diff --git a/ui/compositor/compositor.h b/ui/compositor/compositor.h |
index e0606c1a8f47d541183c376b6d0a1c341c9a1daf..79bf691c41520057728284ab3f1d4ba9f165fc77 100644 |
--- a/ui/compositor/compositor.h |
+++ b/ui/compositor/compositor.h |
@@ -17,6 +17,7 @@ |
#include "third_party/skia/include/core/SkColor.h" |
#include "ui/compositor/compositor_export.h" |
#include "ui/compositor/compositor_observer.h" |
+#include "ui/compositor/layer_animator_collection.h" |
#include "ui/gfx/native_widget_types.h" |
#include "ui/gfx/size.h" |
#include "ui/gfx/vector2d.h" |
@@ -126,7 +127,8 @@ class COMPOSITOR_EXPORT CompositorLock |
// view hierarchy. |
class COMPOSITOR_EXPORT Compositor |
: NON_EXPORTED_BASE(public cc::LayerTreeHostClient), |
- NON_EXPORTED_BASE(public cc::LayerTreeHostSingleThreadClient) { |
+ NON_EXPORTED_BASE(public cc::LayerTreeHostSingleThreadClient), |
+ NON_EXPORTED_BASE(public LayerAnimatorCollectionDelegate) { |
public: |
Compositor(gfx::AcceleratedWidget widget, |
ui::ContextFactory* context_factory); |
@@ -213,7 +215,7 @@ class COMPOSITOR_EXPORT Compositor |
// LayerTreeHostClient implementation. |
virtual void WillBeginMainFrame(int frame_id) OVERRIDE {} |
virtual void DidBeginMainFrame() OVERRIDE {} |
- virtual void Animate(base::TimeTicks frame_begin_time) OVERRIDE {} |
+ virtual void Animate(base::TimeTicks frame_begin_time) OVERRIDE; |
virtual void Layout() OVERRIDE; |
virtual void ApplyScrollAndScale(const gfx::Vector2d& scroll_delta, |
float page_scale) OVERRIDE {} |
@@ -231,6 +233,9 @@ class COMPOSITOR_EXPORT Compositor |
virtual void DidPostSwapBuffers() OVERRIDE; |
virtual void DidAbortSwapBuffers() OVERRIDE; |
+ // LayerAnimatorCollectionDelegate implementation. |
+ virtual void ScheduleAnimationForLayerCollection() OVERRIDE; |
+ |
int last_started_frame() { return last_started_frame_; } |
int last_ended_frame() { return last_ended_frame_; } |
@@ -239,6 +244,10 @@ class COMPOSITOR_EXPORT Compositor |
const cc::LayerTreeDebugState& GetLayerTreeDebugState() const; |
void SetLayerTreeDebugState(const cc::LayerTreeDebugState& debug_state); |
+ LayerAnimatorCollection* layer_animator_collection() { |
+ return &layer_animator_collection_; |
+ } |
+ |
private: |
friend class base::RefCounted<Compositor>; |
friend class CompositorLock; |
@@ -289,6 +298,8 @@ class COMPOSITOR_EXPORT Compositor |
enum SwapState { SWAP_NONE, SWAP_POSTED, SWAP_COMPLETED }; |
SwapState swap_state_; |
+ LayerAnimatorCollection layer_animator_collection_; |
+ |
base::WeakPtrFactory<Compositor> schedule_draw_factory_; |
DISALLOW_COPY_AND_ASSIGN(Compositor); |