| 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_guest.h" | 5 #include "content/browser/frame_host/render_widget_host_view_guest.h" |
| 6 | 6 |
| 7 #include <utility> | 7 #include <utility> |
| 8 | 8 |
| 9 #include "base/bind_helpers.h" | 9 #include "base/bind_helpers.h" |
| 10 #include "base/command_line.h" | 10 #include "base/command_line.h" |
| (...skipping 264 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 275 guest_->SetChildFrameSurface(surface_id_, frame_size, scale_factor, | 275 guest_->SetChildFrameSurface(surface_id_, frame_size, scale_factor, |
| 276 sequence); | 276 sequence); |
| 277 } | 277 } |
| 278 | 278 |
| 279 cc::SurfaceFactory::DrawCallback ack_callback = base::Bind( | 279 cc::SurfaceFactory::DrawCallback ack_callback = base::Bind( |
| 280 &RenderWidgetHostViewChildFrame::SurfaceDrawn, | 280 &RenderWidgetHostViewChildFrame::SurfaceDrawn, |
| 281 RenderWidgetHostViewChildFrame::AsWeakPtr(), output_surface_id); | 281 RenderWidgetHostViewChildFrame::AsWeakPtr(), output_surface_id); |
| 282 ack_pending_count_++; | 282 ack_pending_count_++; |
| 283 // If this value grows very large, something is going wrong. | 283 // If this value grows very large, something is going wrong. |
| 284 DCHECK(ack_pending_count_ < 1000); | 284 DCHECK(ack_pending_count_ < 1000); |
| 285 std::unique_ptr<cc::CompositorFrame> frame_copy(new cc::CompositorFrame); | 285 surface_factory_->SubmitCompositorFrame(surface_id_, std::move(frame), |
| 286 *frame_copy = std::move(frame); | |
| 287 surface_factory_->SubmitCompositorFrame(surface_id_, std::move(frame_copy), | |
| 288 ack_callback); | 286 ack_callback); |
| 289 | 287 |
| 290 ProcessFrameSwappedCallbacks(); | 288 ProcessFrameSwappedCallbacks(); |
| 291 | 289 |
| 292 // If after detaching we are sent a frame, we should finish processing it, and | 290 // If after detaching we are sent a frame, we should finish processing it, and |
| 293 // then we should clear the surface so that we are not holding resources we | 291 // then we should clear the surface so that we are not holding resources we |
| 294 // no longer need. | 292 // no longer need. |
| 295 if (!guest_ || !guest_->attached()) | 293 if (!guest_ || !guest_->attached()) |
| 296 ClearCompositorSurfaceIfNecessary(); | 294 ClearCompositorSurfaceIfNecessary(); |
| 297 } | 295 } |
| (...skipping 296 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 594 gesture_event.data.scrollUpdate.inertialPhase == | 592 gesture_event.data.scrollUpdate.inertialPhase == |
| 595 blink::WebGestureEvent::MomentumPhase) { | 593 blink::WebGestureEvent::MomentumPhase) { |
| 596 return; | 594 return; |
| 597 } | 595 } |
| 598 host_->ForwardGestureEvent(gesture_event); | 596 host_->ForwardGestureEvent(gesture_event); |
| 599 return; | 597 return; |
| 600 } | 598 } |
| 601 } | 599 } |
| 602 | 600 |
| 603 } // namespace content | 601 } // namespace content |
| OLD | NEW |