Index: content/renderer/pepper/pepper_media_device_manager.cc |
diff --git a/content/renderer/pepper/pepper_media_device_manager.cc b/content/renderer/pepper/pepper_media_device_manager.cc |
index b36df317788802e2ef9c2da7099033b9c91916cb..30643d4a817a2c1504345642d8fb4ff185a057ff 100644 |
--- a/content/renderer/pepper/pepper_media_device_manager.cc |
+++ b/content/renderer/pepper/pepper_media_device_manager.cc |
@@ -6,7 +6,7 @@ |
#include "base/logging.h" |
#include "content/renderer/media/media_stream_dispatcher.h" |
-#include "content/renderer/render_view_impl.h" |
+#include "content/renderer/render_frame_impl.h" |
#include "ppapi/shared_impl/ppb_device_ref_shared.h" |
namespace content { |
@@ -23,18 +23,18 @@ ppapi::DeviceRefData FromStreamDeviceInfo(const StreamDeviceInfo& info) { |
} // namespace |
-PepperMediaDeviceManager* PepperMediaDeviceManager::GetForRenderView( |
- RenderView* render_view) { |
+PepperMediaDeviceManager* PepperMediaDeviceManager::GetForRenderFrame( |
+ RenderFrame* render_frame) { |
PepperMediaDeviceManager* handler = |
- PepperMediaDeviceManager::Get(render_view); |
+ PepperMediaDeviceManager::Get(render_frame); |
if (!handler) |
- handler = new PepperMediaDeviceManager(render_view); |
+ handler = new PepperMediaDeviceManager(render_frame); |
return handler; |
} |
-PepperMediaDeviceManager::PepperMediaDeviceManager(RenderView* render_view) |
- : RenderViewObserver(render_view), |
- RenderViewObserverTracker<PepperMediaDeviceManager>(render_view), |
+PepperMediaDeviceManager::PepperMediaDeviceManager(RenderFrame* render_frame) |
+ : RenderFrameObserver(render_frame), |
+ RenderFrameObserverTracker<PepperMediaDeviceManager>(render_frame), |
next_id_(1) {} |
PepperMediaDeviceManager::~PepperMediaDeviceManager() { |
@@ -50,7 +50,7 @@ int PepperMediaDeviceManager::EnumerateDevices( |
int request_id = next_id_++; |
#if defined(ENABLE_WEBRTC) |
- GetRenderViewImpl()->media_stream_dispatcher()->EnumerateDevices( |
+ GetMediaStreamDispatcher()->EnumerateDevices( |
request_id, |
AsWeakPtr(), |
PepperMediaDeviceManager::FromPepperDeviceType(type), |
@@ -76,10 +76,16 @@ void PepperMediaDeviceManager::StopEnumerateDevices(int request_id) { |
// of EnumerateDevices. |
base::MessageLoop::current()->PostTask( |
FROM_HERE, |
- base::Bind(&MediaStreamDispatcher::StopEnumerateDevices, |
- GetRenderViewImpl()->media_stream_dispatcher()->AsWeakPtr(), |
- request_id, |
- AsWeakPtr())); |
+ base::Bind(&PepperMediaDeviceManager::StopEnumerateDevicesDelayed, |
+ AsWeakPtr(), |
+ request_id)); |
+#endif |
+} |
+ |
+void PepperMediaDeviceManager::StopEnumerateDevicesDelayed(int request_id) { |
+#if defined(ENABLE_WEBRTC) |
+ if (render_frame()) |
miu
2014/07/14 19:41:28
FYI--Checking that render_frame() is not NULL to g
yzshen1
2014/07/14 21:15:33
It seems good to make this a comment?
(This meth
miu
2014/07/15 00:09:14
Done.
|
+ GetMediaStreamDispatcher()->StopEnumerateDevices(request_id, AsWeakPtr()); |
#endif |
} |
@@ -91,7 +97,7 @@ int PepperMediaDeviceManager::OpenDevice(PP_DeviceType_Dev type, |
int request_id = next_id_++; |
#if defined(ENABLE_WEBRTC) |
- GetRenderViewImpl()->media_stream_dispatcher()->OpenDevice( |
+ GetMediaStreamDispatcher()->OpenDevice( |
request_id, |
AsWeakPtr(), |
device_id, |
@@ -112,14 +118,13 @@ void PepperMediaDeviceManager::CancelOpenDevice(int request_id) { |
open_callbacks_.erase(request_id); |
#if defined(ENABLE_WEBRTC) |
- GetRenderViewImpl()->media_stream_dispatcher()->CancelOpenDevice(request_id, |
- AsWeakPtr()); |
+ GetMediaStreamDispatcher()->CancelOpenDevice(request_id, AsWeakPtr()); |
#endif |
} |
void PepperMediaDeviceManager::CloseDevice(const std::string& label) { |
#if defined(ENABLE_WEBRTC) |
- GetRenderViewImpl()->media_stream_dispatcher()->CloseDevice(label); |
+ GetMediaStreamDispatcher()->CloseDevice(label); |
#endif |
} |
@@ -128,11 +133,9 @@ int PepperMediaDeviceManager::GetSessionID(PP_DeviceType_Dev type, |
#if defined(ENABLE_WEBRTC) |
switch (type) { |
case PP_DEVICETYPE_DEV_AUDIOCAPTURE: |
- return GetRenderViewImpl()->media_stream_dispatcher()->audio_session_id( |
- label, 0); |
+ return GetMediaStreamDispatcher()->audio_session_id(label, 0); |
case PP_DEVICETYPE_DEV_VIDEOCAPTURE: |
- return GetRenderViewImpl()->media_stream_dispatcher()->video_session_id( |
- label, 0); |
+ return GetMediaStreamDispatcher()->video_session_id(label, 0); |
default: |
NOTREACHED(); |
return 0; |
@@ -236,8 +239,13 @@ void PepperMediaDeviceManager::NotifyDeviceOpened(int request_id, |
callback.Run(request_id, succeeded, label); |
} |
-RenderViewImpl* PepperMediaDeviceManager::GetRenderViewImpl() { |
- return static_cast<RenderViewImpl*>(render_view()); |
+MediaStreamDispatcher* PepperMediaDeviceManager::GetMediaStreamDispatcher() |
+ const { |
+ DCHECK(render_frame()); |
+ MediaStreamDispatcher* const dispatcher = |
+ static_cast<RenderFrameImpl*>(render_frame())->GetMediaStreamDispatcher(); |
+ DCHECK(dispatcher); |
+ return dispatcher; |
} |
} // namespace content |