| Index: android_webview/browser/hardware_renderer.cc
|
| diff --git a/android_webview/browser/hardware_renderer.cc b/android_webview/browser/hardware_renderer.cc
|
| index 9cfd1d39d6a43153b8c4eb51af3eeab4cf3a2ea9..1449541c51fb2614c7e9eba60cd124bbcf25a53d 100644
|
| --- a/android_webview/browser/hardware_renderer.cc
|
| +++ b/android_webview/browser/hardware_renderer.cc
|
| @@ -253,9 +253,7 @@ void HardwareRenderer::DrawGL(bool stencil_enabled,
|
| gl_surface_->ResetBackingFrameBufferObject();
|
| }
|
|
|
| -void HardwareRenderer::RequestNewOutputSurface(bool fallback) {
|
| - // Android webview does not support losing output surface.
|
| - DCHECK(!fallback);
|
| +void HardwareRenderer::RequestNewOutputSurface() {
|
| scoped_refptr<cc::ContextProvider> context_provider =
|
| CreateContext(gl_surface_,
|
| DeferredGpuCommandService::GetInstance());
|
| @@ -265,6 +263,10 @@ void HardwareRenderer::RequestNewOutputSurface(bool fallback) {
|
| layer_tree_host_->SetOutputSurface(output_surface_holder.Pass());
|
| }
|
|
|
| +void HardwareRenderer::DidFailToInitializeOutputSurface() {
|
| + RequestNewOutputSurface();
|
| +}
|
| +
|
| void HardwareRenderer::UnusedResourcesAreAvailable() {
|
| cc::ReturnedResourceArray returned_resources;
|
| resource_collection_->TakeUnusedResourcesForChildCompositor(
|
|
|