| Index: android_webview/browser/hardware_renderer.cc
|
| diff --git a/android_webview/browser/hardware_renderer.cc b/android_webview/browser/hardware_renderer.cc
|
| index ea682cb99f9774c601e69ae382a1946a3a929677..cdc0c144e66e6f0c3962b7c789f17b69779f827a 100644
|
| --- a/android_webview/browser/hardware_renderer.cc
|
| +++ b/android_webview/browser/hardware_renderer.cc
|
| @@ -125,7 +125,8 @@ void HardwareRenderer::DrawGL(AwDrawGLInfo* draw_info) {
|
| std::move(child_frame_->frame);
|
|
|
| gfx::Size frame_size =
|
| - child_compositor_frame->render_pass_list.back()->output_rect.size();
|
| + child_compositor_frame->delegated_frame_data->render_pass_list.back()
|
| + ->output_rect.size();
|
| bool size_changed = frame_size != frame_size_;
|
| frame_size_ = frame_size;
|
| if (!child_id_.is_valid() || size_changed) {
|
| @@ -175,7 +176,10 @@ void HardwareRenderer::DestroySurface() {
|
| DCHECK(child_id_.is_valid());
|
|
|
| // Submit an empty frame to force any existing resources to be returned.
|
| - surface_factory_->SubmitCompositorFrame(child_id_, cc::CompositorFrame(),
|
| + cc::CompositorFrame empty_frame;
|
| + empty_frame.delegated_frame_data =
|
| + base::WrapUnique(new cc::DelegatedFrameData);
|
| + surface_factory_->SubmitCompositorFrame(child_id_, std::move(empty_frame),
|
| cc::SurfaceFactory::DrawCallback());
|
|
|
| surfaces_->RemoveChildId(cc::SurfaceId(frame_sink_id_, child_id_));
|
| @@ -237,8 +241,9 @@ void HardwareRenderer::ReturnChildFrame(
|
| return;
|
|
|
| cc::ReturnedResourceArray resources_to_return;
|
| - cc::TransferableResource::ReturnResources(child_frame->frame->resource_list,
|
| - &resources_to_return);
|
| + cc::TransferableResource::ReturnResources(
|
| + child_frame->frame->delegated_frame_data->resource_list,
|
| + &resources_to_return);
|
|
|
| // The child frame's compositor id is not necessarily same as
|
| // compositor_id_.
|
|
|