| Index: content/browser/renderer_host/compositor_impl_android.cc
|
| diff --git a/content/browser/renderer_host/compositor_impl_android.cc b/content/browser/renderer_host/compositor_impl_android.cc
|
| index 6232bcdb434467966c7e2ba5b0d99ad07063a930..2be0077a8f15d892d4b4dd1b49d124a8391c8ede 100644
|
| --- a/content/browser/renderer_host/compositor_impl_android.cc
|
| +++ b/content/browser/renderer_host/compositor_impl_android.cc
|
| @@ -314,7 +314,6 @@ void CompositorImpl::Composite(CompositingTrigger trigger) {
|
| // animation updates that will already be reflected in the current frame
|
| // we are about to draw.
|
| ignore_schedule_composite_ = true;
|
| - client_->Layout();
|
|
|
| const base::TimeTicks frame_time = gfx::FrameTime::Now();
|
| if (needs_animate_) {
|
| @@ -402,7 +401,6 @@ void CompositorImpl::SetVisible(bool visible) {
|
| } else if (!host_) {
|
| DCHECK(!WillComposite());
|
| needs_composite_ = false;
|
| - needs_animate_ = false;
|
| pending_swapbuffers_ = 0;
|
| cc::LayerTreeSettings settings;
|
| settings.refresh_rate = 60.0;
|
| @@ -417,6 +415,8 @@ void CompositorImpl::SetVisible(bool visible) {
|
| command_line->HasSwitch(cc::switches::kEnableGpuBenchmarking));
|
| settings.initial_debug_state.show_fps_counter =
|
| command_line->HasSwitch(cc::switches::kUIShowFPSCounter);
|
| + // TODO(enne): Update this this compositor to use the scheduler.
|
| + settings.single_thread_proxy_scheduler = false;
|
|
|
| host_ = cc::LayerTreeHost::CreateSingleThreaded(
|
| this, this, HostSharedBitmapManager::current(), settings);
|
| @@ -495,10 +495,9 @@ CreateGpuProcessViewContext(
|
| }
|
|
|
| void CompositorImpl::Layout() {
|
| - // TODO: If we get this callback from the SingleThreadProxy, we need
|
| - // to stop calling it ourselves in CompositorImpl::Composite().
|
| - NOTREACHED();
|
| + ignore_schedule_composite_ = true;
|
| client_->Layout();
|
| + ignore_schedule_composite_ = false;
|
| }
|
|
|
| scoped_ptr<cc::OutputSurface> CompositorImpl::CreateOutputSurface(
|
| @@ -547,7 +546,6 @@ void CompositorImpl::ScheduleComposite() {
|
| }
|
|
|
| void CompositorImpl::ScheduleAnimation() {
|
| - DCHECK(!needs_animate_ || needs_composite_);
|
| DCHECK(!needs_composite_ || WillComposite());
|
| needs_animate_ = true;
|
|
|
| @@ -577,6 +575,7 @@ void CompositorImpl::DidAbortSwapBuffers() {
|
| // This really gets called only once from
|
| // SingleThreadProxy::DidLoseOutputSurfaceOnImplThread() when the
|
| // context was lost.
|
| + ScheduleComposite();
|
| client_->OnSwapBuffersCompleted(0);
|
| }
|
|
|
|
|