| OLD | NEW |
| 1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "content/renderer/gpu/render_widget_compositor.h" | 5 #include "content/renderer/gpu/render_widget_compositor.h" |
| 6 | 6 |
| 7 #include <limits> | 7 #include <limits> |
| 8 #include <string> | 8 #include <string> |
| 9 | 9 |
| 10 #if defined(OS_ANDROID) | 10 #if defined(OS_ANDROID) |
| (...skipping 341 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 352 void RenderWidgetCompositor::SetOverdrawBottomHeight( | 352 void RenderWidgetCompositor::SetOverdrawBottomHeight( |
| 353 float overdraw_bottom_height) { | 353 float overdraw_bottom_height) { |
| 354 layer_tree_host_->SetOverdrawBottomHeight(overdraw_bottom_height); | 354 layer_tree_host_->SetOverdrawBottomHeight(overdraw_bottom_height); |
| 355 } | 355 } |
| 356 | 356 |
| 357 void RenderWidgetCompositor::SetNeedsRedrawRect(gfx::Rect damage_rect) { | 357 void RenderWidgetCompositor::SetNeedsRedrawRect(gfx::Rect damage_rect) { |
| 358 layer_tree_host_->SetNeedsRedrawRect(damage_rect); | 358 layer_tree_host_->SetNeedsRedrawRect(damage_rect); |
| 359 } | 359 } |
| 360 | 360 |
| 361 void RenderWidgetCompositor::SetNeedsForcedRedraw() { | 361 void RenderWidgetCompositor::SetNeedsForcedRedraw() { |
| 362 layer_tree_host_->SetNextCommitForcesRedraw(); | 362 layer_tree_host_->set_next_commit_forces_redraw(); |
| 363 setNeedsAnimate(); | 363 setNeedsUpdateLayers(); |
| 364 } | 364 } |
| 365 | 365 |
| 366 scoped_ptr<cc::SwapPromiseMonitor> | 366 scoped_ptr<cc::SwapPromiseMonitor> |
| 367 RenderWidgetCompositor::CreateLatencyInfoSwapPromiseMonitor( | 367 RenderWidgetCompositor::CreateLatencyInfoSwapPromiseMonitor( |
| 368 ui::LatencyInfo* latency) { | 368 ui::LatencyInfo* latency) { |
| 369 return scoped_ptr<cc::SwapPromiseMonitor>( | 369 return scoped_ptr<cc::SwapPromiseMonitor>( |
| 370 new cc::LatencyInfoSwapPromiseMonitor( | 370 new cc::LatencyInfoSwapPromiseMonitor( |
| 371 latency, layer_tree_host_.get(), NULL)); | 371 latency, layer_tree_host_.get(), NULL)); |
| 372 } | 372 } |
| 373 | 373 |
| (...skipping 98 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 472 double duration_sec) { | 472 double duration_sec) { |
| 473 base::TimeDelta duration = base::TimeDelta::FromMicroseconds( | 473 base::TimeDelta duration = base::TimeDelta::FromMicroseconds( |
| 474 duration_sec * base::Time::kMicrosecondsPerSecond); | 474 duration_sec * base::Time::kMicrosecondsPerSecond); |
| 475 layer_tree_host_->StartPageScaleAnimation( | 475 layer_tree_host_->StartPageScaleAnimation( |
| 476 gfx::Vector2d(destination.x, destination.y), | 476 gfx::Vector2d(destination.x, destination.y), |
| 477 use_anchor, | 477 use_anchor, |
| 478 new_page_scale, | 478 new_page_scale, |
| 479 duration); | 479 duration); |
| 480 } | 480 } |
| 481 | 481 |
| 482 // Renamed. Staged for removal. |
| 482 void RenderWidgetCompositor::setNeedsAnimate() { | 483 void RenderWidgetCompositor::setNeedsAnimate() { |
| 483 layer_tree_host_->SetNeedsAnimate(); | 484 setNeedsUpdateLayers(); |
| 484 } | 485 } |
| 485 | 486 |
| 487 void RenderWidgetCompositor::setNeedsUpdateLayers() { |
| 488 layer_tree_host_->SetNeedsUpdateLayers(); |
| 489 } |
| 490 |
| 491 // Unused. Staged for removal. |
| 486 bool RenderWidgetCompositor::commitRequested() const { | 492 bool RenderWidgetCompositor::commitRequested() const { |
| 487 return layer_tree_host_->CommitRequested(); | 493 NOTREACHED(); |
| 494 return false; |
| 488 } | 495 } |
| 489 | 496 |
| 490 void RenderWidgetCompositor::didStopFlinging() { | 497 void RenderWidgetCompositor::didStopFlinging() { |
| 491 layer_tree_host_->DidStopFlinging(); | 498 layer_tree_host_->DidStopFlinging(); |
| 492 } | 499 } |
| 493 | 500 |
| 494 void RenderWidgetCompositor::registerForAnimations(blink::WebLayer* layer) { | 501 void RenderWidgetCompositor::registerForAnimations(blink::WebLayer* layer) { |
| 495 cc::Layer* cc_layer = static_cast<webkit::WebLayerImpl*>(layer)->layer(); | 502 cc::Layer* cc_layer = static_cast<webkit::WebLayerImpl*>(layer)->layer(); |
| 496 cc_layer->layer_animation_controller()->SetAnimationRegistrar( | 503 cc_layer->layer_animation_controller()->SetAnimationRegistrar( |
| 497 layer_tree_host_->animation_registrar()); | 504 layer_tree_host_->animation_registrar()); |
| (...skipping 117 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 615 widget_->OnSwapBuffersComplete(); | 622 widget_->OnSwapBuffersComplete(); |
| 616 } | 623 } |
| 617 | 624 |
| 618 scoped_refptr<cc::ContextProvider> | 625 scoped_refptr<cc::ContextProvider> |
| 619 RenderWidgetCompositor::OffscreenContextProvider() { | 626 RenderWidgetCompositor::OffscreenContextProvider() { |
| 620 return RenderThreadImpl::current()->OffscreenCompositorContextProvider(); | 627 return RenderThreadImpl::current()->OffscreenCompositorContextProvider(); |
| 621 } | 628 } |
| 622 | 629 |
| 623 void RenderWidgetCompositor::ScheduleComposite() { | 630 void RenderWidgetCompositor::ScheduleComposite() { |
| 624 if (!suppress_schedule_composite_) | 631 if (!suppress_schedule_composite_) |
| 625 widget_->scheduleComposite(); | 632 widget_->ScheduleComposite(); |
| 626 } | 633 } |
| 627 | 634 |
| 628 void RenderWidgetCompositor::ScheduleAnimation() { | 635 void RenderWidgetCompositor::ScheduleAnimation() { |
| 629 widget_->scheduleAnimation(); | 636 widget_->ScheduleAnimation(); |
| 637 // ScheduleAnimation alone doesn't trigger a redraw. |
| 638 // ScheduleComposite here to send an artifical invalidation. |
| 639 ScheduleComposite(); |
| 630 } | 640 } |
| 631 | 641 |
| 632 void RenderWidgetCompositor::DidPostSwapBuffers() { | 642 void RenderWidgetCompositor::DidPostSwapBuffers() { |
| 633 widget_->OnSwapBuffersPosted(); | 643 widget_->OnSwapBuffersPosted(); |
| 634 } | 644 } |
| 635 | 645 |
| 636 void RenderWidgetCompositor::DidAbortSwapBuffers() { | 646 void RenderWidgetCompositor::DidAbortSwapBuffers() { |
| 637 widget_->OnSwapBuffersAborted(); | 647 widget_->OnSwapBuffersAborted(); |
| 638 } | 648 } |
| 639 | 649 |
| 640 void RenderWidgetCompositor::RateLimitSharedMainThreadContext() { | 650 void RenderWidgetCompositor::RateLimitSharedMainThreadContext() { |
| 641 cc::ContextProvider* provider = | 651 cc::ContextProvider* provider = |
| 642 RenderThreadImpl::current()->SharedMainThreadContextProvider().get(); | 652 RenderThreadImpl::current()->SharedMainThreadContextProvider().get(); |
| 643 provider->ContextGL()->RateLimitOffscreenContextCHROMIUM(); | 653 provider->ContextGL()->RateLimitOffscreenContextCHROMIUM(); |
| 644 } | 654 } |
| 645 | 655 |
| 646 } // namespace content | 656 } // namespace content |
| OLD | NEW |