| Index: android_webview/browser/hardware_renderer.cc
|
| diff --git a/android_webview/browser/hardware_renderer.cc b/android_webview/browser/hardware_renderer.cc
|
| index 7c348b52bb82990c7b390ae15d4c9601f08e7b7b..3a6561c86ed79e5ed55ea31dc0fcd70794e77871 100644
|
| --- a/android_webview/browser/hardware_renderer.cc
|
| +++ b/android_webview/browser/hardware_renderer.cc
|
| @@ -252,9 +252,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());
|
| @@ -264,6 +262,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(
|
|
|