OLD | NEW |
1 // Copyright 2017 The Chromium Authors. All rights reserved. | 1 // Copyright 2017 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 "components/viz/frame_sinks/gpu_root_compositor_frame_sink.h" | 5 #include "components/viz/frame_sinks/gpu_root_compositor_frame_sink.h" |
6 | 6 |
7 #include "cc/surfaces/compositor_frame_sink_support.h" | 7 #include "cc/surfaces/compositor_frame_sink_support.h" |
8 #include "cc/surfaces/display.h" | 8 #include "cc/surfaces/display.h" |
9 | 9 |
10 namespace viz { | 10 namespace viz { |
(...skipping 68 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
79 support_->EvictCurrentSurface(); | 79 support_->EvictCurrentSurface(); |
80 } | 80 } |
81 | 81 |
82 void GpuRootCompositorFrameSink::SetNeedsBeginFrame(bool needs_begin_frame) { | 82 void GpuRootCompositorFrameSink::SetNeedsBeginFrame(bool needs_begin_frame) { |
83 support_->SetNeedsBeginFrame(needs_begin_frame); | 83 support_->SetNeedsBeginFrame(needs_begin_frame); |
84 } | 84 } |
85 | 85 |
86 void GpuRootCompositorFrameSink::SubmitCompositorFrame( | 86 void GpuRootCompositorFrameSink::SubmitCompositorFrame( |
87 const cc::LocalSurfaceId& local_surface_id, | 87 const cc::LocalSurfaceId& local_surface_id, |
88 cc::CompositorFrame frame) { | 88 cc::CompositorFrame frame) { |
89 if (!support_->SubmitCompositorFrame(local_surface_id, std::move(frame))) { | 89 support_->SubmitCompositorFrame(local_surface_id, std::move(frame)); |
90 compositor_frame_sink_binding_.Close(); | |
91 OnClientConnectionLost(); | |
92 } | |
93 } | 90 } |
94 | 91 |
95 void GpuRootCompositorFrameSink::DidNotProduceFrame( | 92 void GpuRootCompositorFrameSink::DidNotProduceFrame( |
96 const cc::BeginFrameAck& begin_frame_ack) { | 93 const cc::BeginFrameAck& begin_frame_ack) { |
97 support_->DidNotProduceFrame(begin_frame_ack); | 94 support_->DidNotProduceFrame(begin_frame_ack); |
98 } | 95 } |
99 | 96 |
100 void GpuRootCompositorFrameSink::ClaimTemporaryReference( | 97 void GpuRootCompositorFrameSink::ClaimTemporaryReference( |
101 const cc::SurfaceId& surface_id) { | 98 const cc::SurfaceId& surface_id) { |
102 support_->ClaimTemporaryReference(surface_id); | 99 support_->ClaimTemporaryReference(surface_id); |
(...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
147 } | 144 } |
148 | 145 |
149 void GpuRootCompositorFrameSink::OnPrivateConnectionLost() { | 146 void GpuRootCompositorFrameSink::OnPrivateConnectionLost() { |
150 private_connection_lost_ = true; | 147 private_connection_lost_ = true; |
151 // Request destruction of |this| only if both connections are lost. | 148 // Request destruction of |this| only if both connections are lost. |
152 delegate_->OnPrivateConnectionLost(support_->frame_sink_id(), | 149 delegate_->OnPrivateConnectionLost(support_->frame_sink_id(), |
153 client_connection_lost_); | 150 client_connection_lost_); |
154 } | 151 } |
155 | 152 |
156 } // namespace viz | 153 } // namespace viz |
OLD | NEW |