Chromium Code Reviews| Index: content/renderer/media/android/renderer_surface_view_manager.cc |
| diff --git a/content/renderer/media/android/renderer_surface_view_manager.cc b/content/renderer/media/android/renderer_surface_view_manager.cc |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..8cdc4586881eaaf3ce9ece7f664cd2b2c01aba47 |
| --- /dev/null |
| +++ b/content/renderer/media/android/renderer_surface_view_manager.cc |
| @@ -0,0 +1,51 @@ |
| +// Copyright 2016 The Chromium Authors. All rights reserved. |
| +// Use of this source code is governed by a BSD-style license that can be |
| +// found in the LICENSE file. |
| + |
| +#include "content/renderer/media/android/renderer_surface_view_manager.h" |
| + |
| +#include "content/common/media/surface_view_manager_messages_android.h" |
| +#include "ipc/ipc_message_macros.h" |
| +#include "ui/gfx/geometry/size.h" |
| + |
| +namespace content { |
| + |
| +RendererSurfaceViewManager::RendererSurfaceViewManager( |
| + RenderFrame* render_frame) |
| + : RenderFrameObserver(render_frame) {} |
| + |
| +RendererSurfaceViewManager::~RendererSurfaceViewManager() {} |
| + |
| +bool RendererSurfaceViewManager::OnMessageReceived(const IPC::Message& msg) { |
| + bool handled = true; |
| + IPC_BEGIN_MESSAGE_MAP(RendererSurfaceViewManager, msg) |
| + IPC_MESSAGE_HANDLER(RendererSurfaceViewManagerMsg_FullscreenSurfaceCreated, |
| + OnFullscreenSurfaceCreated) |
| + IPC_MESSAGE_UNHANDLED(handled = false) |
| + IPC_END_MESSAGE_MAP() |
| + return handled; |
| +} |
| + |
| +void RendererSurfaceViewManager::CreateFullscreenSurface( |
| + const gfx::Size& video_natural_size, |
| + const media::SurfaceCreatedCB& surface_created_cb) { |
| + DCHECK(!surface_created_cb.is_null()); |
|
no sievers
2016/02/16 19:03:47
You mean DCHECK(surface_created_cb.is_null())?
H
watk
2016/02/16 20:04:00
This is actually DCHECKing the argument, not the m
|
| + pending_surface_created_cb_ = surface_created_cb; |
| + Send(new BrowserSurfaceViewManagerMsg_CreateFullscreenSurface( |
| + routing_id(), video_natural_size)); |
| +} |
| + |
| +void RendererSurfaceViewManager::NaturalSizeChanged( |
| + const gfx::Size& size) { |
| + DVLOG(3) << __FUNCTION__ << ": size: " << size.ToString(); |
| + Send(new BrowserSurfaceViewManagerMsg_NaturalSizeChanged(routing_id(), size)); |
| +} |
| + |
| +void RendererSurfaceViewManager::OnFullscreenSurfaceCreated(int surface_id) { |
| + DVLOG(3) << __FUNCTION__ << ": surface_id: " << surface_id; |
| + DCHECK(!pending_surface_created_cb_.is_null()); |
| + pending_surface_created_cb_.Run(surface_id); |
| + pending_surface_created_cb_.Reset(); |
| +} |
| + |
| +} // namespace content |