diff options
author | danakj@chromium.org <danakj@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-05-16 21:30:10 +0000 |
---|---|---|
committer | danakj@chromium.org <danakj@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-05-16 21:30:10 +0000 |
commit | aed3703d1355f2c70ea5521d23faf96f65f58534 (patch) | |
tree | 118a84b10ed2e374c700e8b83b0eb3a1ff26b019 | |
parent | a84cd887ba2be0494ffc559d7b7d68381fb3dd7d (diff) | |
download | chromium_src-aed3703d1355f2c70ea5521d23faf96f65f58534.zip chromium_src-aed3703d1355f2c70ea5521d23faf96f65f58534.tar.gz chromium_src-aed3703d1355f2c70ea5521d23faf96f65f58534.tar.bz2 |
Do SetNeedsCommit() instead of Composite() in threaded mode.
R=enne@chromium.org, piman@chromium.org, enne, piman
BUG=374287
Review URL: https://codereview.chromium.org/290563005
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@271098 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r-- | cc/trees/layer_tree_host.cc | 8 | ||||
-rw-r--r-- | content/renderer/gpu/render_widget_compositor.cc | 4 | ||||
-rw-r--r-- | content/renderer/gpu/render_widget_compositor.h | 1 | ||||
-rw-r--r-- | ui/compositor/compositor.cc | 2 |
4 files changed, 4 insertions, 11 deletions
diff --git a/cc/trees/layer_tree_host.cc b/cc/trees/layer_tree_host.cc index dfe4658..c83a68e 100644 --- a/cc/trees/layer_tree_host.cc +++ b/cc/trees/layer_tree_host.cc @@ -696,11 +696,9 @@ void LayerTreeHost::NotifyInputThrottledUntilCommit() { } void LayerTreeHost::Composite(base::TimeTicks frame_begin_time) { - if (!proxy_->HasImplThread()) - static_cast<SingleThreadProxy*>(proxy_.get())->CompositeImmediately( - frame_begin_time); - else - SetNeedsCommit(); + DCHECK(!proxy_->HasImplThread()); + SingleThreadProxy* proxy = static_cast<SingleThreadProxy*>(proxy_.get()); + proxy->CompositeImmediately(frame_begin_time); } bool LayerTreeHost::InitializeOutputSurfaceIfNeeded() { diff --git a/content/renderer/gpu/render_widget_compositor.cc b/content/renderer/gpu/render_widget_compositor.cc index cc7fc98..17f98ad 100644 --- a/content/renderer/gpu/render_widget_compositor.cc +++ b/content/renderer/gpu/render_widget_compositor.cc @@ -355,10 +355,6 @@ void RenderWidgetCompositor::UpdateAnimations(base::TimeTicks time) { layer_tree_host_->UpdateClientAnimations(time); } -void RenderWidgetCompositor::Composite(base::TimeTicks frame_begin_time) { - layer_tree_host_->Composite(frame_begin_time); -} - void RenderWidgetCompositor::SetNeedsDisplayOnAllLayers() { layer_tree_host_->SetNeedsDisplayOnAllLayers(); } diff --git a/content/renderer/gpu/render_widget_compositor.h b/content/renderer/gpu/render_widget_compositor.h index c5fe7e4..d6dceb3 100644 --- a/content/renderer/gpu/render_widget_compositor.h +++ b/content/renderer/gpu/render_widget_compositor.h @@ -46,7 +46,6 @@ class RenderWidgetCompositor : public blink::WebLayerTreeView, void SetSuppressScheduleComposite(bool suppress); bool BeginMainFrameRequested() const; void UpdateAnimations(base::TimeTicks time); - void Composite(base::TimeTicks frame_begin_time); void SetNeedsDisplayOnAllLayers(); void SetRasterizeOnlyVisibleContent(); void UpdateTopControlsState(cc::TopControlsState constraints, diff --git a/ui/compositor/compositor.cc b/ui/compositor/compositor.cc index 866e526..ec7dd9c 100644 --- a/ui/compositor/compositor.cc +++ b/ui/compositor/compositor.cc @@ -180,7 +180,7 @@ Compositor::~Compositor() { void Compositor::ScheduleDraw() { if (compositor_thread_loop_) { - host_->Composite(gfx::FrameTime::Now()); + host_->SetNeedsCommit(); } else if (!defer_draw_scheduling_) { defer_draw_scheduling_ = true; base::MessageLoop::current()->PostTask( |