Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(169)

Side by Side Diff: content/browser/frame_host/render_widget_host_view_child_frame.cc

Issue 2774373002: Use MojoCompositorFrameSink in RendererCompositorFrameSink (Closed)
Patch Set: Fixed mac Created 3 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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
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
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
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
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698