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 935f4f01a92a60492d2c87cea6345e3e28ab10c3..597f8772fe1836fd42c48685a8601f5016c20676 100644 |
--- a/cc/trees/layer_tree_host_impl.h |
+++ b/cc/trees/layer_tree_host_impl.h |
@@ -146,6 +146,7 @@ class CC_EXPORT LayerTreeHostImpl |
public TopControlsManagerClient, |
public ScrollbarAnimationControllerClient, |
public VideoFrameControllerClient, |
+ public LayerTreeMutatorClient, |
public MutatorHostClient, |
public base::SupportsWeakPtr<LayerTreeHostImpl> { |
public: |
@@ -234,6 +235,7 @@ class CC_EXPORT LayerTreeHostImpl |
virtual void BeginCommit(); |
virtual void CommitComplete(); |
virtual void UpdateAnimationState(bool start_ready_animations); |
+ bool Mutate(base::TimeTicks monotonic_time); |
void ActivateAnimations(); |
void Animate(); |
void AnimatePendingTreeAfterCommit(); |
@@ -369,6 +371,9 @@ class CC_EXPORT LayerTreeHostImpl |
const gfx::Rect& clip, |
bool resourceless_software_draw) override; |
+ // LayerTreeMutatorClient. |
+ void SetNeedsMutate() override; |
+ |
// Called from LayerTreeImpl. |
void OnCanDrawStateChangedForTree(); |
@@ -611,8 +616,8 @@ class CC_EXPORT LayerTreeHostImpl |
bool ScrollAnimationCreate(ScrollNode* scroll_node, |
const gfx::Vector2dF& scroll_amount); |
- void SetLayerTreeMutator(LayerTreeMutator* mutator); |
- LayerTreeMutator* mutator() { return mutator_; } |
+ void SetLayerTreeMutator(std::unique_ptr<LayerTreeMutator> mutator); |
+ LayerTreeMutator* mutator() { return mutator_.get(); } |
protected: |
LayerTreeHostImpl( |
@@ -842,7 +847,7 @@ class CC_EXPORT LayerTreeHostImpl |
std::unique_ptr<Viewport> viewport_; |
- LayerTreeMutator* mutator_; |
+ std::unique_ptr<LayerTreeMutator> mutator_; |
DISALLOW_COPY_AND_ASSIGN(LayerTreeHostImpl); |
}; |