Index: content/browser/speech/speech_recognition_manager_impl.cc |
=================================================================== |
--- content/browser/speech/speech_recognition_manager_impl.cc (revision 207505) |
+++ content/browser/speech/speech_recognition_manager_impl.cc (working copy) |
@@ -37,9 +37,9 @@ |
SpeechRecognitionManagerImpl* g_speech_recognition_manager_impl; |
-void ShowAudioInputSettingsOnFileThread() { |
+void ShowAudioInputSettingsOnFileThread(media::AudioManager* audio_manager) { |
DCHECK(BrowserThread::CurrentlyOn(BrowserThread::FILE)); |
- BrowserMainLoop::GetAudioManager()->ShowAudioInputSettings(); |
+ audio_manager->ShowAudioInputSettings(); |
} |
} // namespace |
@@ -59,8 +59,12 @@ |
return g_speech_recognition_manager_impl; |
} |
-SpeechRecognitionManagerImpl::SpeechRecognitionManagerImpl() |
- : primary_session_id_(kSessionIDInvalid), |
+SpeechRecognitionManagerImpl::SpeechRecognitionManagerImpl( |
+ media::AudioManager* audio_manager, |
+ MediaStreamManager* media_stream_manager) |
+ : audio_manager_(audio_manager), |
+ media_stream_manager_(media_stream_manager), |
+ primary_session_id_(kSessionIDInvalid), |
last_session_id_(kSessionIDInvalid), |
is_dispatching_event_(false), |
delegate_(GetContentClient()->browser()-> |
@@ -183,15 +187,14 @@ |
SessionsTable::iterator iter = sessions_.find(session_id); |
DCHECK(iter != sessions_.end()); |
SpeechRecognitionSessionContext& context = iter->second->context; |
- context.label = |
- BrowserMainLoop::GetMediaStreamManager()->MakeMediaAccessRequest( |
- context.render_process_id, |
- context.render_view_id, |
- StreamOptions(MEDIA_DEVICE_AUDIO_CAPTURE, MEDIA_NO_SERVICE), |
- GURL(context.context_name), |
- base::Bind( |
- &SpeechRecognitionManagerImpl::MediaRequestPermissionCallback, |
- weak_factory_.GetWeakPtr(), session_id)); |
+ context.label = media_stream_manager_->MakeMediaAccessRequest( |
+ context.render_process_id, |
+ context.render_view_id, |
+ StreamOptions(MEDIA_DEVICE_AUDIO_CAPTURE, MEDIA_NO_SERVICE), |
+ GURL(context.context_name), |
+ base::Bind( |
+ &SpeechRecognitionManagerImpl::MediaRequestPermissionCallback, |
+ weak_factory_.GetWeakPtr(), session_id)); |
return; |
} |
@@ -642,18 +645,19 @@ |
} |
bool SpeechRecognitionManagerImpl::HasAudioInputDevices() { |
- return BrowserMainLoop::GetAudioManager()->HasAudioInputDevices(); |
+ return audio_manager_->HasAudioInputDevices(); |
} |
string16 SpeechRecognitionManagerImpl::GetAudioInputDeviceModel() { |
- return BrowserMainLoop::GetAudioManager()->GetAudioInputDeviceModel(); |
+ return audio_manager_->GetAudioInputDeviceModel(); |
} |
void SpeechRecognitionManagerImpl::ShowAudioInputSettings() { |
// Since AudioManager::ShowAudioInputSettings can potentially launch external |
// processes, do that in the FILE thread to not block the calling threads. |
BrowserThread::PostTask(BrowserThread::FILE, FROM_HERE, |
- base::Bind(&ShowAudioInputSettingsOnFileThread)); |
+ base::Bind(&ShowAudioInputSettingsOnFileThread, |
+ audio_manager_)); |
} |
SpeechRecognitionManagerImpl::Session::Session() |