| Index: chrome/browser/speech/speech_input_manager.cc
|
| ===================================================================
|
| --- chrome/browser/speech/speech_input_manager.cc (revision 70616)
|
| +++ chrome/browser/speech/speech_input_manager.cc (working copy)
|
| @@ -5,14 +5,16 @@
|
| #include "chrome/browser/speech/speech_input_manager.h"
|
|
|
| #include "app/l10n_util.h"
|
| -#include "base/ref_counted.h"
|
| -#include "base/singleton.h"
|
| -#include "chrome/browser/chrome_thread.h"
|
| +#include "base/command_line.h"
|
| +#include "base/utf_string_conversions.h"
|
| +#include "chrome/browser/browser_thread.h"
|
| +#include "chrome/browser/prefs/pref_service.h"
|
| #include "chrome/browser/speech/speech_input_bubble_controller.h"
|
| #include "chrome/browser/speech/speech_recognizer.h"
|
| #include "chrome/browser/tab_contents/infobar_delegate.h"
|
| #include "chrome/browser/tab_contents/tab_contents.h"
|
| #include "chrome/browser/tab_contents/tab_util.h"
|
| +#include "chrome/common/chrome_switches.h"
|
| #include "grit/generated_resources.h"
|
| #include "media/audio/audio_manager.h"
|
| #include <map>
|
| @@ -78,6 +80,26 @@
|
| return Singleton<SpeechInputManagerImpl>::get();
|
| }
|
|
|
| +bool SpeechInputManager::IsFeatureEnabled() {
|
| + bool enabled = true;
|
| + const CommandLine& command_line = *CommandLine::ForCurrentProcess();
|
| +
|
| + if (command_line.HasSwitch(switches::kDisableSpeechInput)) {
|
| + enabled = false;
|
| +#if defined(GOOGLE_CHROME_BUILD)
|
| + } else if (!command_line.HasSwitch(switches::kEnableSpeechInput)) {
|
| + // We need to evaluate whether IO is OK here. http://crbug.com/63335.
|
| + base::ThreadRestrictions::ScopedAllowIO allow_io;
|
| + // Official Chrome builds have speech input enabled by default only in the
|
| + // dev channel.
|
| + std::string channel = platform_util::GetVersionStringModifier();
|
| + enabled = (channel == "dev");
|
| +#endif
|
| + }
|
| +
|
| + return enabled;
|
| +}
|
| +
|
| SpeechInputManagerImpl::SpeechInputManagerImpl()
|
| : recording_caller_id_(0),
|
| bubble_controller_(new SpeechInputBubbleController(
|
|
|