| Index: cc/trees/single_thread_proxy.cc
|
| diff --git a/cc/trees/single_thread_proxy.cc b/cc/trees/single_thread_proxy.cc
|
| index 1e422cacb7f0e147d251af4429a5c93fa79fb446..720a19938175f96244ed935bb1e730c2fb623ffd 100644
|
| --- a/cc/trees/single_thread_proxy.cc
|
| +++ b/cc/trees/single_thread_proxy.cc
|
| @@ -465,8 +465,6 @@ void SingleThreadProxy::CompositeImmediately(base::TimeTicks frame_begin_time) {
|
| TRACE_EVENT0("cc", "SingleThreadProxy::CompositeImmediately");
|
| DCHECK(Proxy::IsMainThread());
|
| DCHECK(!layer_tree_host_->output_surface_lost());
|
| - DCHECK(!layer_tree_host_impl_->settings().impl_side_painting)
|
| - << "Impl-side painting and synchronous compositing are not supported.";
|
|
|
| {
|
| BeginFrameArgs begin_frame_args(
|
| @@ -482,6 +480,14 @@ void SingleThreadProxy::CompositeImmediately(base::TimeTicks frame_begin_time) {
|
|
|
| {
|
| DebugScopedSetImplThread impl(const_cast<SingleThreadProxy*>(this));
|
| + if (layer_tree_host_impl_->settings().impl_side_painting) {
|
| + DCHECK(layer_tree_host_impl_->settings().use_zero_copy);
|
| + layer_tree_host_impl_->ActivateSyncTree();
|
| + layer_tree_host_impl_->active_tree()->UpdateDrawProperties();
|
| + layer_tree_host_impl_->ManageTiles();
|
| + layer_tree_host_impl_->tile_manager()->WaitForTasksToFinishRunning();
|
| + }
|
| +
|
| LayerTreeHostImpl::FrameData frame;
|
| DoComposite(frame_begin_time, &frame);
|
|
|
|
|