diff options
-rw-r--r-- | chrome/browser/speech/speech_input_browsertest.cc | 1 | ||||
-rw-r--r-- | chrome/browser/speech/speech_input_dispatcher_host.cc | 4 | ||||
-rw-r--r-- | chrome/browser/speech/speech_input_dispatcher_host.h | 1 | ||||
-rw-r--r-- | chrome/browser/speech/speech_input_manager.cc | 5 | ||||
-rw-r--r-- | chrome/browser/speech/speech_input_manager.h | 1 | ||||
-rw-r--r-- | chrome/browser/speech/speech_recognition_request.cc | 13 | ||||
-rw-r--r-- | chrome/browser/speech/speech_recognition_request.h | 3 | ||||
-rw-r--r-- | chrome/browser/speech/speech_recognizer.cc | 5 | ||||
-rw-r--r-- | chrome/browser/speech/speech_recognizer.h | 5 | ||||
-rw-r--r-- | chrome/browser/speech/speech_recognizer_unittest.cc | 3 | ||||
-rw-r--r-- | chrome/common/render_messages_internal.h | 7 | ||||
-rw-r--r-- | chrome/renderer/speech_input_dispatcher.cc | 10 | ||||
-rw-r--r-- | chrome/renderer/speech_input_dispatcher.h | 7 | ||||
-rw-r--r-- | webkit/tools/test_shell/layout_test_controller.cc | 5 |
14 files changed, 28 insertions, 42 deletions
diff --git a/chrome/browser/speech/speech_input_browsertest.cc b/chrome/browser/speech/speech_input_browsertest.cc index 472e30c..9f12758 100644 --- a/chrome/browser/speech/speech_input_browsertest.cc +++ b/chrome/browser/speech/speech_input_browsertest.cc @@ -47,7 +47,6 @@ class FakeSpeechInputManager : public SpeechInputManager { int render_process_id, int render_view_id, const gfx::Rect& element_rect, - const std::string& language, const std::string& grammar) { VLOG(1) << "StartRecognition invoked."; EXPECT_EQ(0, caller_id_); diff --git a/chrome/browser/speech/speech_input_dispatcher_host.cc b/chrome/browser/speech/speech_input_dispatcher_host.cc index 1563af3..0b2ca1d 100644 --- a/chrome/browser/speech/speech_input_dispatcher_host.cc +++ b/chrome/browser/speech/speech_input_dispatcher_host.cc @@ -141,14 +141,12 @@ void SpeechInputDispatcherHost::OnStartRecognition( int render_view_id, int request_id, const gfx::Rect& element_rect, - const std::string& language, const std::string& grammar) { int caller_id = callers_->CreateId(resource_message_filter_process_id_, render_view_id, request_id); manager()->StartRecognition(this, caller_id, resource_message_filter_process_id_, - render_view_id, element_rect, - language, grammar); + render_view_id, element_rect, grammar); } void SpeechInputDispatcherHost::OnCancelRecognition(int render_view_id, diff --git a/chrome/browser/speech/speech_input_dispatcher_host.h b/chrome/browser/speech/speech_input_dispatcher_host.h index 85ca5c0..db42f1e 100644 --- a/chrome/browser/speech/speech_input_dispatcher_host.h +++ b/chrome/browser/speech/speech_input_dispatcher_host.h @@ -46,7 +46,6 @@ class SpeechInputDispatcherHost void OnStartRecognition(int render_view_id, int request_id, const gfx::Rect& element_rect, - const std::string& language, const std::string& grammar); void OnCancelRecognition(int render_view_id, int request_id); void OnStopRecording(int render_view_id, int request_id); diff --git a/chrome/browser/speech/speech_input_manager.cc b/chrome/browser/speech/speech_input_manager.cc index 181234e..24f0f5d7 100644 --- a/chrome/browser/speech/speech_input_manager.cc +++ b/chrome/browser/speech/speech_input_manager.cc @@ -29,7 +29,6 @@ class SpeechInputManagerImpl : public SpeechInputManager, int render_process_id, int render_view_id, const gfx::Rect& element_rect, - const std::string& language, const std::string& grammar); virtual void CancelRecognition(int caller_id); virtual void StopRecording(int caller_id); @@ -107,7 +106,6 @@ void SpeechInputManagerImpl::StartRecognition( int render_process_id, int render_view_id, const gfx::Rect& element_rect, - const std::string& language, const std::string& grammar) { DCHECK(!HasPendingRequest(caller_id)); @@ -116,8 +114,7 @@ void SpeechInputManagerImpl::StartRecognition( SpeechInputRequest* request = &requests_[caller_id]; request->delegate = delegate; - request->recognizer = new SpeechRecognizer(this, caller_id, language, - grammar); + request->recognizer = new SpeechRecognizer(this, caller_id, grammar); request->is_active = false; StartRecognitionForRequest(caller_id); diff --git a/chrome/browser/speech/speech_input_manager.h b/chrome/browser/speech/speech_input_manager.h index be9779f..ba938b9 100644 --- a/chrome/browser/speech/speech_input_manager.h +++ b/chrome/browser/speech/speech_input_manager.h @@ -54,7 +54,6 @@ class SpeechInputManager { int render_process_id, int render_view_id, const gfx::Rect& element_rect, - const std::string& language, const std::string& grammar) = 0; virtual void CancelRecognition(int caller_id) = 0; virtual void StopRecording(int caller_id) = 0; diff --git a/chrome/browser/speech/speech_recognition_request.cc b/chrome/browser/speech/speech_recognition_request.cc index e17f69b1..fe901042 100644 --- a/chrome/browser/speech/speech_recognition_request.cc +++ b/chrome/browser/speech/speech_recognition_request.cc @@ -4,7 +4,6 @@ #include "chrome/browser/speech/speech_recognition_request.h" -#include "app/l10n_util.h" #include "base/json/json_reader.h" #include "base/string_util.h" #include "base/utf_string_conversions.h" @@ -118,20 +117,14 @@ SpeechRecognitionRequest::SpeechRecognitionRequest( SpeechRecognitionRequest::~SpeechRecognitionRequest() {} -bool SpeechRecognitionRequest::Send(const std::string& language, - const std::string& grammar, +bool SpeechRecognitionRequest::Send(const std::string& grammar, const std::string& content_type, const std::string& audio_data) { DCHECK(!url_fetcher_.get()); std::vector<std::string> parts; - if (!language.empty()) { - parts.push_back("lang=" + EscapeQueryParamValue(language, true)); - } else { - std::string app_locale = l10n_util::GetApplicationLocale(""); - parts.push_back("lang=" + EscapeQueryParamValue(app_locale, true)); - } - + // TODO(leandro): Replace with the language tag given by WebKit. + parts.push_back("lang=en-us"); if (!grammar.empty()) parts.push_back("grammar=" + EscapeQueryParamValue(grammar, true)); GURL url(std::string(kDefaultSpeechRecognitionUrl) + JoinString(parts, '&')); diff --git a/chrome/browser/speech/speech_recognition_request.h b/chrome/browser/speech/speech_recognition_request.h index 89beed1..d567541 100644 --- a/chrome/browser/speech/speech_recognition_request.h +++ b/chrome/browser/speech/speech_recognition_request.h @@ -44,8 +44,7 @@ class SpeechRecognitionRequest : public URLFetcher::Delegate { // Sends a new request with the given audio data, returns true if successful. // The same object can be used to send multiple requests but only after the // previous request has completed. - bool Send(const std::string& language, - const std::string& grammar, + bool Send(const std::string& grammar, const std::string& content_type, const std::string& audio_data); diff --git a/chrome/browser/speech/speech_recognizer.cc b/chrome/browser/speech/speech_recognizer.cc index fd32c20..2852c5e 100644 --- a/chrome/browser/speech/speech_recognizer.cc +++ b/chrome/browser/speech/speech_recognizer.cc @@ -109,11 +109,9 @@ void SpeexEncoder::Encode(const short* samples, SpeechRecognizer::SpeechRecognizer(Delegate* delegate, int caller_id, - const std::string& language, const std::string& grammar) : delegate_(delegate), caller_id_(caller_id), - language_(language), grammar_(grammar), encoder_(new SpeexEncoder()), endpointer_(kAudioSampleRate), @@ -212,11 +210,10 @@ void SpeechRecognizer::StopRecording() { it != audio_buffers_.end(); it++) { data.append(*(*it)); } - DCHECK(!request_.get()); request_.reset(new SpeechRecognitionRequest( Profile::GetDefaultRequestContext(), this)); - request_->Send(language_, grammar_, kContentTypeSpeex, data); + request_->Send(grammar_, kContentTypeSpeex, data); ReleaseAudioBuffers(); // No need to keep the audio anymore. } diff --git a/chrome/browser/speech/speech_recognizer.h b/chrome/browser/speech/speech_recognizer.h index 61226f4..0473dde 100644 --- a/chrome/browser/speech/speech_recognizer.h +++ b/chrome/browser/speech/speech_recognizer.h @@ -73,9 +73,7 @@ class SpeechRecognizer virtual ~Delegate() {} }; - SpeechRecognizer(Delegate* delegate, - int caller_id, - const std::string& language, + SpeechRecognizer(Delegate* delegate, int caller_id, const std::string& grammar); ~SpeechRecognizer(); @@ -120,7 +118,6 @@ class SpeechRecognizer Delegate* delegate_; int caller_id_; - std::string language_; std::string grammar_; // Buffer holding the recorded audio. Owns the strings inside the list. diff --git a/chrome/browser/speech/speech_recognizer_unittest.cc b/chrome/browser/speech/speech_recognizer_unittest.cc index d71876f..65315949 100644 --- a/chrome/browser/speech/speech_recognizer_unittest.cc +++ b/chrome/browser/speech/speech_recognizer_unittest.cc @@ -23,8 +23,7 @@ class SpeechRecognizerTest : public SpeechRecognizerDelegate, SpeechRecognizerTest() : io_thread_(BrowserThread::IO, &message_loop_), ALLOW_THIS_IN_INITIALIZER_LIST( - recognizer_(new SpeechRecognizer(this, 1, std::string(), - std::string()))), + recognizer_(new SpeechRecognizer(this, 1, std::string()))), recording_complete_(false), recognition_complete_(false), result_received_(false), diff --git a/chrome/common/render_messages_internal.h b/chrome/common/render_messages_internal.h index f32667d..353bfc9 100644 --- a/chrome/common/render_messages_internal.h +++ b/chrome/common/render_messages_internal.h @@ -2876,11 +2876,10 @@ IPC_BEGIN_MESSAGES(ViewHost) // Requests the speech input service to start speech recognition on behalf of // the given |render_view_id|. - IPC_MESSAGE_CONTROL5(ViewHostMsg_SpeechInput_StartRecognition, + IPC_MESSAGE_CONTROL4(ViewHostMsg_SpeechInput_StartRecognition, int /* render_view_id */, - int /* request_id */, - gfx::Rect /* element_rect */, - std::string /* language */, + int /* request id */, + gfx::Rect /* element rect in render view coordinates */, std::string /* grammar */) // Requests the speech input service to cancel speech recognition on behalf of diff --git a/chrome/renderer/speech_input_dispatcher.cc b/chrome/renderer/speech_input_dispatcher.cc index d119621..eaab3b7 100644 --- a/chrome/renderer/speech_input_dispatcher.cc +++ b/chrome/renderer/speech_input_dispatcher.cc @@ -39,13 +39,19 @@ bool SpeechInputDispatcher::startRecognition( const WebKit::WebRect& element_rect, const WebKit::WebString& language, const WebKit::WebString& grammar) { + return startRecognition(request_id, element_rect, grammar); +} + +bool SpeechInputDispatcher::startRecognition( + int request_id, + const WebKit::WebRect& element_rect, + const WebKit::WebString& grammar) { VLOG(1) << "SpeechInputDispatcher::startRecognition enter"; gfx::Size scroll = render_view_->webview()->mainFrame()->scrollOffset(); gfx::Rect rect = element_rect; rect.Offset(-scroll.width(), -scroll.height()); render_view_->Send(new ViewHostMsg_SpeechInput_StartRecognition( - render_view_->routing_id(), request_id, rect, - UTF16ToUTF8(language), UTF16ToUTF8(grammar))); + render_view_->routing_id(), request_id, rect, UTF16ToUTF8(grammar))); VLOG(1) << "SpeechInputDispatcher::startRecognition exit"; return true; } diff --git a/chrome/renderer/speech_input_dispatcher.h b/chrome/renderer/speech_input_dispatcher.h index 1af8f5d..2402eae 100644 --- a/chrome/renderer/speech_input_dispatcher.h +++ b/chrome/renderer/speech_input_dispatcher.h @@ -14,9 +14,9 @@ class GURL; class RenderView; namespace WebKit { -class WebSpeechInputListener; class WebString; struct WebRect; +class WebSpeechInputListener; } // SpeechInputDispatcher is a delegate for speech input messages used by WebKit. @@ -31,11 +31,16 @@ class SpeechInputDispatcher : public WebKit::WebSpeechInputController { bool OnMessageReceived(const IPC::Message& msg); // WebKit::WebSpeechInputController. + // TODO(leandro): this is a temporary fix for a two-sided patch. + // https://bugs.webkit.org/show_bug.cgi?id=47089 bool startRecognition(int request_id, const WebKit::WebRect& element_rect, const WebKit::WebString& language, const WebKit::WebString& grammar); + bool startRecognition(int request_id, const WebKit::WebRect& element_rect, + const WebKit::WebString& grammar); + void cancelRecognition(int request_id); void stopRecording(int request_id); diff --git a/webkit/tools/test_shell/layout_test_controller.cc b/webkit/tools/test_shell/layout_test_controller.cc index d1d13bc..ef206e3 100644 --- a/webkit/tools/test_shell/layout_test_controller.cc +++ b/webkit/tools/test_shell/layout_test_controller.cc @@ -1128,10 +1128,9 @@ void LayoutTestController::setAllowFileAccessFromFileURLs( void LayoutTestController::setMockSpeechInputResult(const CppArgumentList& args, CppVariant* result) { - if (args.size() > 0 && args[0].isString() && args[1].isString()) { + if (args.size() > 0 && args[0].isString()) { shell_->speech_input_controller_mock()->setMockRecognitionResult( - WebString::fromUTF8(args[0].ToString()), - WebString::fromUTF8(args[1].ToString())); + WebString::fromUTF8(args[0].ToString())); } result->SetNull(); } |