Chromium Code Reviews| Index: services/ui/ws/frame_generator.cc |
| diff --git a/services/ui/ws/frame_generator.cc b/services/ui/ws/frame_generator.cc |
| index 1a59d74c362eee07e8bc339275f3624ce3c70be7..58559472ec0cbd8246276d3b1a66b5723d76ac06 100644 |
| --- a/services/ui/ws/frame_generator.cc |
| +++ b/services/ui/ws/frame_generator.cc |
| @@ -11,9 +11,6 @@ |
| #include "cc/quads/shared_quad_state.h" |
| #include "cc/quads/surface_draw_quad.h" |
| #include "cc/surfaces/surface_id.h" |
| -#include "gpu/ipc/client/gpu_channel_host.h" |
| -#include "services/ui/surfaces/display_compositor.h" |
| -#include "services/ui/surfaces/surfaces_context_provider.h" |
| #include "services/ui/ws/frame_generator_delegate.h" |
| #include "services/ui/ws/server_window.h" |
| #include "services/ui/ws/server_window_compositor_frame_sink_manager.h" |
| @@ -44,46 +41,19 @@ FrameGenerator::~FrameGenerator() { |
| compositor_frame_sink_.reset(); |
| } |
| -void FrameGenerator::OnGpuChannelEstablished( |
| - scoped_refptr<gpu::GpuChannelHost> channel) { |
| - if (widget_ != gfx::kNullAcceleratedWidget) { |
| - cc::mojom::MojoCompositorFrameSinkRequest request = |
| - mojo::GetProxy(&compositor_frame_sink_); |
| - // TODO(fsamuel): FrameGenerator should not know about |
| - // SurfacesContextProvider. In fact, FrameGenerator should not know |
| - // about GpuChannelHost. |
| - root_window_->CreateCompositorFrameSink( |
| - mojom::CompositorFrameSinkType::DEFAULT, widget_, |
| - channel->gpu_memory_buffer_manager(), |
| - new SurfacesContextProvider(widget_, channel), std::move(request), |
| - binding_.CreateInterfacePtrAndBind()); |
| - // TODO(fsamuel): This means we're always requesting a new BeginFrame signal |
| - // even when we don't need it. Once surface ID propagation work is done, |
| - // this will not be necessary because FrameGenerator will only need a |
| - // BeginFrame if the window manager changes. |
| - compositor_frame_sink_->SetNeedsBeginFrame(true); |
| - } else { |
| - gpu_channel_ = std::move(channel); |
| - } |
| -} |
| - |
| void FrameGenerator::OnAcceleratedWidgetAvailable( |
| gfx::AcceleratedWidget widget) { |
| - widget_ = widget; |
| - if (gpu_channel_ && widget != gfx::kNullAcceleratedWidget) { |
| - cc::mojom::MojoCompositorFrameSinkRequest request = |
| - mojo::GetProxy(&compositor_frame_sink_); |
| - root_window_->CreateCompositorFrameSink( |
| - mojom::CompositorFrameSinkType::DEFAULT, widget_, |
| - gpu_channel_->gpu_memory_buffer_manager(), |
| - new SurfacesContextProvider(widget_, gpu_channel_), |
| - std::move(request), binding_.CreateInterfacePtrAndBind()); |
| - // TODO(fsamuel): This means we're always requesting a new BeginFrame signal |
| - // even when we don't need it. Once surface ID propagation work is done, |
| - // this will not be necessary because FrameGenerator will only need a |
| - // BeginFrame if the window manager changes. |
| - compositor_frame_sink_->SetNeedsBeginFrame(true); |
| - } |
| + DCHECK(widget != gfx::kNullAcceleratedWidget); |
|
sadrul
2016/11/21 17:23:49
DCHECK_NE
Fady Samuel
2016/11/21 20:40:41
Done.
|
| + cc::mojom::MojoCompositorFrameSinkRequest request = |
| + mojo::GetProxy(&compositor_frame_sink_); |
| + root_window_->CreateCompositorFrameSink( |
| + mojom::CompositorFrameSinkType::DEFAULT, widget, std::move(request), |
| + binding_.CreateInterfacePtrAndBind()); |
| + // TODO(fsamuel): This means we're always requesting a new BeginFrame signal |
| + // even when we don't need it. Once surface ID propagation work is done, |
| + // this will not be necessary because FrameGenerator will only need a |
| + // BeginFrame if the window manager changes. |
| + compositor_frame_sink_->SetNeedsBeginFrame(true); |
| } |
| void FrameGenerator::DidReceiveCompositorFrameAck() {} |
| @@ -279,7 +249,7 @@ void FrameGenerator::ReleaseAllSurfaceReferences() { |
| dependencies_.clear(); |
| } |
| -ui::DisplayCompositor* FrameGenerator::GetDisplayCompositor() { |
| +cc::mojom::DisplayCompositor* FrameGenerator::GetDisplayCompositor() { |
| return root_window_->delegate()->GetDisplayCompositor(); |
| } |