| Index: content/browser/renderer_host/render_widget_host_view_aura.cc
|
| diff --git a/content/browser/renderer_host/render_widget_host_view_aura.cc b/content/browser/renderer_host/render_widget_host_view_aura.cc
|
| index 2be8603d2725c4b7b7ab1458611152b5ce0e01d6..0c98f7da9bc459452f7e1e790ae00406c1aa88ef 100644
|
| --- a/content/browser/renderer_host/render_widget_host_view_aura.cc
|
| +++ b/content/browser/renderer_host/render_widget_host_view_aura.cc
|
| @@ -486,6 +486,7 @@ RenderWidgetHostViewAura::RenderWidgetHostViewAura(RenderWidgetHost* host)
|
| #if defined(OS_WIN)
|
| plugin_parent_window_ = NULL;
|
| #endif
|
| + ImageTransportFactory::GetInstance()->AddObserver(this);
|
| }
|
|
|
| ////////////////////////////////////////////////////////////////////////////////
|
| @@ -2134,13 +2135,7 @@ void RenderWidgetHostViewAura::OnAccessibilityEvents(
|
| }
|
|
|
| gfx::GLSurfaceHandle RenderWidgetHostViewAura::GetCompositingSurface() {
|
| - if (shared_surface_handle_.is_null()) {
|
| - ImageTransportFactory* factory = ImageTransportFactory::GetInstance();
|
| - shared_surface_handle_ = factory->CreateSharedSurfaceHandle();
|
| - if (!shared_surface_handle_.is_null())
|
| - factory->AddObserver(this);
|
| - }
|
| - return shared_surface_handle_;
|
| + return ImageTransportFactory::GetInstance()->GetSharedSurfaceHandle();
|
| }
|
|
|
| bool RenderWidgetHostViewAura::LockMouse() {
|
| @@ -3202,12 +3197,6 @@ void RenderWidgetHostViewAura::OnLostResources() {
|
| // are using is becoming invalid. This sends pending ACKs and needs to happen
|
| // after calling UpdateExternalTexture() which syncs with the impl thread.
|
| RunOnCommitCallbacks();
|
| -
|
| - DCHECK(!shared_surface_handle_.is_null());
|
| - ImageTransportFactory* factory = ImageTransportFactory::GetInstance();
|
| - factory->DestroySharedSurfaceHandle(shared_surface_handle_);
|
| - shared_surface_handle_ = factory->CreateSharedSurfaceHandle();
|
| - host_->CompositingSurfaceUpdated();
|
| host_->ScheduleComposite();
|
| }
|
|
|
| @@ -3219,11 +3208,9 @@ RenderWidgetHostViewAura::~RenderWidgetHostViewAura() {
|
| paint_observer_->OnViewDestroyed();
|
| if (touch_editing_client_)
|
| touch_editing_client_->OnViewDestroyed();
|
| - if (!shared_surface_handle_.is_null()) {
|
| - ImageTransportFactory* factory = ImageTransportFactory::GetInstance();
|
| - factory->DestroySharedSurfaceHandle(shared_surface_handle_);
|
| - factory->RemoveObserver(this);
|
| - }
|
| +
|
| + ImageTransportFactory::GetInstance()->RemoveObserver(this);
|
| +
|
| window_observer_.reset();
|
| if (window_->GetDispatcher())
|
| window_->GetDispatcher()->RemoveRootWindowObserver(this);
|
|
|