| Index: android_webview/browser/render_thread_manager.cc
|
| diff --git a/android_webview/browser/render_thread_manager.cc b/android_webview/browser/render_thread_manager.cc
|
| index c2c9c6e0eecc061fed1b4402ff9eb6b765abe6b9..e088235ac360c2e1c11e1cdc8d7f8415d5aa62f2 100644
|
| --- a/android_webview/browser/render_thread_manager.cc
|
| +++ b/android_webview/browser/render_thread_manager.cc
|
| @@ -106,7 +106,7 @@ RenderThreadManager::RenderThreadManager(
|
| RenderThreadManager::~RenderThreadManager() {
|
| DCHECK(ui_loop_->BelongsToCurrentThread());
|
| if (compositor_frame_producer_) {
|
| - compositor_frame_producer_->OnCompositorFrameConsumerWillDestroy();
|
| + compositor_frame_producer_->RemoveCompositorFrameConsumer(this);
|
| }
|
| DCHECK(!hardware_renderer_.get());
|
| }
|
| @@ -158,7 +158,7 @@ void RenderThreadManager::ClientRequestInvokeGLOnUI() {
|
| void RenderThreadManager::UpdateParentDrawConstraintsOnUI() {
|
| DCHECK(ui_loop_->BelongsToCurrentThread());
|
| if (compositor_frame_producer_) {
|
| - compositor_frame_producer_->OnParentDrawConstraintsUpdated();
|
| + compositor_frame_producer_->OnParentDrawConstraintsUpdated(this);
|
| }
|
| }
|
|
|
| @@ -362,9 +362,15 @@ void RenderThreadManager::DeleteHardwareRendererOnUI() {
|
|
|
| void RenderThreadManager::SetCompositorFrameProducer(
|
| CompositorFrameProducer* compositor_frame_producer) {
|
| + DCHECK_NE(compositor_frame_producer_ == nullptr,
|
| + compositor_frame_producer == nullptr);
|
| compositor_frame_producer_ = compositor_frame_producer;
|
| }
|
|
|
| +CompositorFrameProducer* RenderThreadManager::GetCompositorFrameProducer() {
|
| + return compositor_frame_producer_;
|
| +}
|
| +
|
| bool RenderThreadManager::HasFrameOnUI() const {
|
| base::AutoLock lock(lock_);
|
| return hardware_renderer_has_frame_ || child_frame_.get();
|
|
|