| Index: cc/trees/single_thread_proxy.cc
|
| diff --git a/cc/trees/single_thread_proxy.cc b/cc/trees/single_thread_proxy.cc
|
| index 344dfb97f66df586e94ef01a0717426831627db9..1af657a3d0ead51ef2076e2a3133121699e800f1 100644
|
| --- a/cc/trees/single_thread_proxy.cc
|
| +++ b/cc/trees/single_thread_proxy.cc
|
| @@ -467,8 +467,6 @@ void SingleThreadProxy::DidSwapBuffersCompleteOnImplThread() {
|
| void SingleThreadProxy::CompositeImmediately(base::TimeTicks frame_begin_time) {
|
| TRACE_EVENT0("cc", "SingleThreadProxy::CompositeImmediately");
|
| DCHECK(Proxy::IsMainThread());
|
| - DCHECK(!layer_tree_host_impl_->settings().impl_side_painting)
|
| - << "Impl-side painting and synchronous compositing are not supported.";
|
| base::AutoReset<bool> inside_composite(&inside_synchronous_composite_, true);
|
|
|
| if (layer_tree_host_->output_surface_lost()) {
|
| @@ -493,6 +491,13 @@ void SingleThreadProxy::CompositeImmediately(base::TimeTicks frame_begin_time) {
|
|
|
| {
|
| DebugScopedSetImplThread impl(const_cast<SingleThreadProxy*>(this));
|
| + if (layer_tree_host_impl_->settings().impl_side_painting) {
|
| + layer_tree_host_impl_->ActivateSyncTree();
|
| + layer_tree_host_impl_->active_tree()->UpdateDrawProperties();
|
| + layer_tree_host_impl_->ManageTiles();
|
| + layer_tree_host_impl_->SynchronouslyInitializeAllTiles();
|
| + }
|
| +
|
| LayerTreeHostImpl::FrameData frame;
|
| DoComposite(frame_begin_time, &frame);
|
|
|
|
|