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 6d78c1663f361fb58ecf815f5c8845455aca63f7..00a1db087268079d378468de3451ef9bcf273fd8 100644 |
--- a/cc/trees/layer_tree_host_impl.h |
+++ b/cc/trees/layer_tree_host_impl.h |
@@ -16,6 +16,7 @@ |
#include "base/memory/scoped_ptr.h" |
#include "base/time/time.h" |
#include "cc/animation/animation_registrar.h" |
+#include "cc/animation/layer_tree_mutator.h" |
#include "cc/animation/scrollbar_animation_controller.h" |
#include "cc/base/cc_export.h" |
#include "cc/base/synced_property.h" |
@@ -37,6 +38,7 @@ |
#include "cc/scheduler/draw_result.h" |
#include "cc/scheduler/video_frame_controller.h" |
#include "cc/tiles/tile_manager.h" |
+#include "cc/trees/layer_tree_host_common.h" |
#include "cc/trees/layer_tree_settings.h" |
#include "cc/trees/mutator_host_client.h" |
#include "cc/trees/task_runner_provider.h" |
@@ -144,6 +146,7 @@ class CC_EXPORT LayerTreeHostImpl |
public TopControlsManagerClient, |
public ScrollbarAnimationControllerClient, |
public VideoFrameControllerClient, |
+ public LayerTreeMutatorClient, |
public MutatorHostClient, |
public base::SupportsWeakPtr<LayerTreeHostImpl> { |
public: |
@@ -231,6 +234,7 @@ class CC_EXPORT LayerTreeHostImpl |
virtual void BeginCommit(); |
virtual void CommitComplete(); |
virtual void UpdateAnimationState(bool start_ready_animations); |
+ bool Mutate(base::TimeTicks monotinic_time); |
void ActivateAnimations(); |
void Animate(); |
void AnimatePendingTreeAfterCommit(); |
@@ -362,6 +366,9 @@ class CC_EXPORT LayerTreeHostImpl |
const gfx::Rect& clip, |
bool resourceless_software_draw) override; |
+ // LayerTreeMutatorClient. |
+ void SetNeedsMutate() override; |
+ |
// Called from LayerTreeImpl. |
void OnCanDrawStateChangedForTree(); |
@@ -595,6 +602,9 @@ class CC_EXPORT LayerTreeHostImpl |
scoped_ptr<FrameTimingTracker::CompositeTimingSet> composite_events, |
scoped_ptr<FrameTimingTracker::MainFrameTimingSet> main_frame_events); |
+ void SetLayerTreeMutator(LayerTreeMutator* mutator); |
+ LayerTreeMutator* mutator() { return mutator_; } |
+ |
base::SingleThreadTaskRunner* GetTaskRunner() const { |
DCHECK(task_runner_provider_); |
return task_runner_provider_->HasImplThread() |
@@ -822,10 +832,13 @@ class CC_EXPORT LayerTreeHostImpl |
SharedBitmapManager* shared_bitmap_manager_; |
gpu::GpuMemoryBufferManager* gpu_memory_buffer_manager_; |
TaskGraphRunner* task_graph_runner_; |
+ LayerTreeMutator* mutator_; |
int id_; |
std::set<SwapPromiseMonitor*> swap_promise_monitor_; |
+ bool is_scrolling_; |
+ |
bool requires_high_res_to_draw_; |
bool is_likely_to_require_a_draw_; |