Index: cc/trees/layer_tree_host_impl.h |
diff --git a/cc/trees/layer_tree_host_impl.h b/cc/trees/layer_tree_host_impl.h |
index 0d64124649b71cb47d288fea1fda5af5a59df3cd..8e2a5cc3aa730a55b6bf13b2a6b5587b64f256f1 100644 |
--- a/cc/trees/layer_tree_host_impl.h |
+++ b/cc/trees/layer_tree_host_impl.h |
@@ -36,6 +36,7 @@ |
#include "cc/scheduler/commit_earlyout_reason.h" |
#include "cc/scheduler/draw_result.h" |
#include "cc/scheduler/video_frame_controller.h" |
+#include "cc/trees/layer_tree_mutators_client.h" |
#include "cc/trees/layer_tree_settings.h" |
#include "cc/trees/proxy.h" |
#include "skia/ext/refptr.h" |
@@ -48,6 +49,7 @@ class ScrollOffset; |
namespace cc { |
+class AnimationHost; |
class CompletionEvent; |
class CompositorFrameMetadata; |
class DebugRectHistory; |
@@ -139,6 +141,7 @@ class CC_EXPORT LayerTreeHostImpl |
public TopControlsManagerClient, |
public ScrollbarAnimationControllerClient, |
public VideoFrameControllerClient, |
+ public LayerTreeMutatorsClient, |
public base::SupportsWeakPtr<LayerTreeHostImpl> { |
public: |
static scoped_ptr<LayerTreeHostImpl> Create( |
@@ -225,6 +228,37 @@ class CC_EXPORT LayerTreeHostImpl |
void DidAnimateScrollOffset(); |
void SetViewportDamage(const gfx::Rect& damage_rect); |
+ void SetTreeLayerFilterMutated(int layer_id, |
+ LayerTreeImpl* tree, |
+ const FilterOperations& filters); |
+ void SetTreeLayerOpacityMutated(int layer_id, |
+ LayerTreeImpl* tree, |
+ float opacity); |
+ void SetTreeLayerTransformMutated(int layer_id, |
+ LayerTreeImpl* tree, |
+ const gfx::Transform& transform); |
+ void SetTreeLayerScrollOffsetMutated(int layer_id, |
+ LayerTreeImpl* tree, |
+ const gfx::ScrollOffset& scroll_offset); |
+ |
+ // LayerTreeMutatorsClient implementation. |
+ bool IsLayerInActiveTree(int layer_id) const override; |
+ bool IsLayerInPendingTree(int layer_id) const override; |
+ void SetMutatorsNeedCommit() override; |
+ void SetLayerFilterMutated(int layer_id, |
+ bool affects_active_tree, |
+ const FilterOperations& filters) override; |
+ void SetLayerOpacityMutated(int layer_id, |
+ bool affects_active_tree, |
+ float opacity) override; |
+ void SetLayerTransformMutated(int layer_id, |
+ bool affects_active_tree, |
+ const gfx::Transform& transform) override; |
+ void SetLayerScrollOffsetMutated( |
+ int layer_id, |
+ bool active_tree, |
+ const gfx::ScrollOffset& scroll_offset) override; |
+ |
virtual void PrepareTiles(); |
// Returns DRAW_SUCCESS unless problems occured preparing the frame, and we |
@@ -429,6 +463,7 @@ class CC_EXPORT LayerTreeHostImpl |
AnimationRegistrar* animation_registrar() const { |
return animation_registrar_.get(); |
} |
+ AnimationHost* animation_host() const { return animation_host_.get(); } |
void SetDebugState(const LayerTreeDebugState& new_debug_state); |
const LayerTreeDebugState& debug_state() const { return debug_state_; } |
@@ -733,6 +768,7 @@ class CC_EXPORT LayerTreeHostImpl |
base::TimeDelta begin_impl_frame_interval_; |
scoped_ptr<AnimationRegistrar> animation_registrar_; |
+ scoped_ptr<AnimationHost> animation_host_; |
std::set<ScrollbarAnimationController*> scrollbar_animation_controllers_; |
std::set<VideoFrameController*> video_frame_controllers_; |