| Index: chrome/browser/speech/speech_input_manager.cc
|
| diff --git a/chrome/browser/speech/speech_input_manager.cc b/chrome/browser/speech/speech_input_manager.cc
|
| index 284a166be1a1df804d90efc57f304175be9a33c8..25f055074bbd4bdaaf948c8b401478f7d555240f 100644
|
| --- a/chrome/browser/speech/speech_input_manager.cc
|
| +++ b/chrome/browser/speech/speech_input_manager.cc
|
| @@ -8,6 +8,7 @@
|
| #include <string>
|
|
|
| #include "app/l10n_util.h"
|
| +#include "base/command_line.h"
|
| #include "base/lazy_instance.h"
|
| #include "base/lock.h"
|
| #include "base/ref_counted.h"
|
| @@ -152,6 +153,26 @@ SpeechInputManager* SpeechInputManager::Get() {
|
| return g_speech_input_manager_impl.Pointer();
|
| }
|
|
|
| +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(
|
|
|