| 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 "content/browser/frame_host/render_widget_host_view_child_frame.h" | 5 #include "content/browser/frame_host/render_widget_host_view_child_frame.h" |
| 6 | 6 |
| 7 #include <algorithm> | 7 #include <algorithm> |
| 8 #include <utility> | 8 #include <utility> |
| 9 #include <vector> | 9 #include <vector> |
| 10 | 10 |
| (...skipping 329 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 340 // RenderWidgetHostInputEventRouter. | 340 // RenderWidgetHostInputEventRouter. |
| 341 if (!frame_connector_) | 341 if (!frame_connector_) |
| 342 return; | 342 return; |
| 343 if ((event.type() == blink::WebInputEvent::GestureScrollUpdate && | 343 if ((event.type() == blink::WebInputEvent::GestureScrollUpdate && |
| 344 not_consumed) || | 344 not_consumed) || |
| 345 event.type() == blink::WebInputEvent::GestureScrollEnd) | 345 event.type() == blink::WebInputEvent::GestureScrollEnd) |
| 346 frame_connector_->BubbleScrollEvent(event); | 346 frame_connector_->BubbleScrollEvent(event); |
| 347 } | 347 } |
| 348 | 348 |
| 349 void RenderWidgetHostViewChildFrame::DidReceiveCompositorFrameAck() { | 349 void RenderWidgetHostViewChildFrame::DidReceiveCompositorFrameAck() { |
| 350 if (!host_) | 350 DCHECK(renderer_compositor_frame_sink_); |
| 351 return; | 351 renderer_compositor_frame_sink_->DidReceiveCompositorFrameAck(); |
| 352 host_->SendReclaimCompositorResources(true /* is_swap_ack */, | |
| 353 cc::ReturnedResourceArray()); | |
| 354 } | 352 } |
| 355 | 353 |
| 356 void RenderWidgetHostViewChildFrame::DidCreateNewRendererCompositorFrameSink() { | 354 void RenderWidgetHostViewChildFrame::DidCreateNewRendererCompositorFrameSink( |
| 355 cc::mojom::MojoCompositorFrameSinkClient* renderer_compositor_frame_sink) { |
| 357 ResetCompositorFrameSinkSupport(); | 356 ResetCompositorFrameSinkSupport(); |
| 357 renderer_compositor_frame_sink_ = renderer_compositor_frame_sink; |
| 358 CreateCompositorFrameSinkSupport(); | 358 CreateCompositorFrameSinkSupport(); |
| 359 has_frame_ = false; | 359 has_frame_ = false; |
| 360 } | 360 } |
| 361 | 361 |
| 362 void RenderWidgetHostViewChildFrame::ProcessCompositorFrame( | 362 void RenderWidgetHostViewChildFrame::ProcessCompositorFrame( |
| 363 const cc::LocalSurfaceId& local_surface_id, | 363 const cc::LocalSurfaceId& local_surface_id, |
| 364 cc::CompositorFrame frame) { | 364 cc::CompositorFrame frame) { |
| 365 current_surface_size_ = frame.render_pass_list.back()->output_rect.size(); | 365 current_surface_size_ = frame.render_pass_list.back()->output_rect.size(); |
| 366 current_surface_scale_factor_ = frame.metadata.device_scale_factor; | 366 current_surface_scale_factor_ = frame.metadata.device_scale_factor; |
| 367 | 367 |
| (...skipping 242 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 610 support_->RequestCopyOfSurface(std::move(request)); | 610 support_->RequestCopyOfSurface(std::move(request)); |
| 611 } | 611 } |
| 612 | 612 |
| 613 bool RenderWidgetHostViewChildFrame::HasAcceleratedSurface( | 613 bool RenderWidgetHostViewChildFrame::HasAcceleratedSurface( |
| 614 const gfx::Size& desired_size) { | 614 const gfx::Size& desired_size) { |
| 615 return false; | 615 return false; |
| 616 } | 616 } |
| 617 | 617 |
| 618 void RenderWidgetHostViewChildFrame::ReclaimResources( | 618 void RenderWidgetHostViewChildFrame::ReclaimResources( |
| 619 const cc::ReturnedResourceArray& resources) { | 619 const cc::ReturnedResourceArray& resources) { |
| 620 if (!host_) | 620 renderer_compositor_frame_sink_->ReclaimResources(resources); |
| 621 return; | |
| 622 host_->SendReclaimCompositorResources(false /* is_swap_ack */, resources); | |
| 623 } | 621 } |
| 624 | 622 |
| 625 void RenderWidgetHostViewChildFrame::OnBeginFrame( | 623 void RenderWidgetHostViewChildFrame::OnBeginFrame( |
| 626 const cc::BeginFrameArgs& args) { | 624 const cc::BeginFrameArgs& args) { |
| 627 host_->Send(new ViewMsg_BeginFrame(host_->GetRoutingID(), args)); | 625 renderer_compositor_frame_sink_->OnBeginFrame(args); |
| 628 } | 626 } |
| 629 | 627 |
| 630 void RenderWidgetHostViewChildFrame::SetNeedsBeginFrames( | 628 void RenderWidgetHostViewChildFrame::SetNeedsBeginFrames( |
| 631 bool needs_begin_frames) { | 629 bool needs_begin_frames) { |
| 632 if (support_) | 630 if (support_) |
| 633 support_->SetNeedsBeginFrame(needs_begin_frames); | 631 support_->SetNeedsBeginFrame(needs_begin_frames); |
| 634 } | 632 } |
| 635 | 633 |
| 636 InputEventAckState RenderWidgetHostViewChildFrame::FilterInputEvent( | 634 InputEventAckState RenderWidgetHostViewChildFrame::FilterInputEvent( |
| 637 const blink::WebInputEvent& input_event) { | 635 const blink::WebInputEvent& input_event) { |
| (...skipping 64 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 702 frame_sink_id_); | 700 frame_sink_id_); |
| 703 } | 701 } |
| 704 support_.reset(); | 702 support_.reset(); |
| 705 } | 703 } |
| 706 | 704 |
| 707 bool RenderWidgetHostViewChildFrame::HasEmbedderChanged() { | 705 bool RenderWidgetHostViewChildFrame::HasEmbedderChanged() { |
| 708 return false; | 706 return false; |
| 709 } | 707 } |
| 710 | 708 |
| 711 } // namespace content | 709 } // namespace content |
| OLD | NEW |