| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 "android_webview/browser/hardware_renderer.h" | 5 #include "android_webview/browser/hardware_renderer.h" |
| 6 | 6 |
| 7 #include <utility> | 7 #include <utility> |
| 8 | 8 |
| 9 #include "android_webview/browser/aw_gl_surface.h" | 9 #include "android_webview/browser/aw_gl_surface.h" |
| 10 #include "android_webview/browser/aw_render_thread_context_provider.h" | 10 #include "android_webview/browser/aw_render_thread_context_provider.h" |
| (...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 52 | 52 |
| 53 // Webview does not own the surface so should not clear it. | 53 // Webview does not own the surface so should not clear it. |
| 54 settings.should_clear_root_render_pass = false; | 54 settings.should_clear_root_render_pass = false; |
| 55 | 55 |
| 56 surface_manager_.reset(new cc::SurfaceManager); | 56 surface_manager_.reset(new cc::SurfaceManager); |
| 57 surface_id_allocator_.reset(new cc::SurfaceIdAllocator(1)); | 57 surface_id_allocator_.reset(new cc::SurfaceIdAllocator(1)); |
| 58 surface_id_allocator_->RegisterSurfaceIdNamespace(surface_manager_.get()); | 58 surface_id_allocator_->RegisterSurfaceIdNamespace(surface_manager_.get()); |
| 59 surface_manager_->RegisterSurfaceFactoryClient( | 59 surface_manager_->RegisterSurfaceFactoryClient( |
| 60 surface_id_allocator_->id_namespace(), this); | 60 surface_id_allocator_->id_namespace(), this); |
| 61 display_.reset(new cc::Display(this, surface_manager_.get(), nullptr, nullptr, | 61 display_.reset(new cc::Display(this, surface_manager_.get(), nullptr, nullptr, |
| 62 settings)); | 62 settings, |
| 63 surface_id_allocator_->id_namespace())); |
| 63 } | 64 } |
| 64 | 65 |
| 65 HardwareRenderer::~HardwareRenderer() { | 66 HardwareRenderer::~HardwareRenderer() { |
| 66 // Must reset everything before |surface_factory_| to ensure all | 67 // Must reset everything before |surface_factory_| to ensure all |
| 67 // resources are returned before resetting. | 68 // resources are returned before resetting. |
| 68 if (!root_id_.is_null()) | 69 if (!root_id_.is_null()) |
| 69 surface_factory_->Destroy(root_id_); | 70 surface_factory_->Destroy(root_id_); |
| 70 if (!child_id_.is_null()) | 71 if (!child_id_.is_null()) |
| 71 surface_factory_->Destroy(child_id_); | 72 surface_factory_->Destroy(child_id_); |
| 72 display_.reset(); | 73 display_.reset(); |
| (...skipping 189 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 262 const cc::ReturnedResourceArray& resources, | 263 const cc::ReturnedResourceArray& resources, |
| 263 uint32_t compositor_id, | 264 uint32_t compositor_id, |
| 264 uint32_t output_surface_id) { | 265 uint32_t output_surface_id) { |
| 265 if (output_surface_id != last_committed_output_surface_id_) | 266 if (output_surface_id != last_committed_output_surface_id_) |
| 266 return; | 267 return; |
| 267 render_thread_manager_->InsertReturnedResourcesOnRT(resources, compositor_id, | 268 render_thread_manager_->InsertReturnedResourcesOnRT(resources, compositor_id, |
| 268 output_surface_id); | 269 output_surface_id); |
| 269 } | 270 } |
| 270 | 271 |
| 271 } // namespace android_webview | 272 } // namespace android_webview |
| OLD | NEW |