Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1510)

Unified Diff: content/renderer/input_tag_speech_dispatcher.cc

Issue 260903010: Start removing support for the experimental x-webkit-speech API (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Don't touch histograms.xml Created 6 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « content/renderer/input_tag_speech_dispatcher.h ('k') | content/renderer/render_view_impl.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: content/renderer/input_tag_speech_dispatcher.cc
diff --git a/content/renderer/input_tag_speech_dispatcher.cc b/content/renderer/input_tag_speech_dispatcher.cc
deleted file mode 100644
index 092eb2ea2e4a1023172fc86fba39e84c0f86cbbc..0000000000000000000000000000000000000000
--- a/content/renderer/input_tag_speech_dispatcher.cc
+++ /dev/null
@@ -1,147 +0,0 @@
-// Copyright (c) 2012 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#include "content/renderer/input_tag_speech_dispatcher.h"
-
-#include "base/strings/utf_string_conversions.h"
-#include "content/common/speech_recognition_messages.h"
-#include "content/renderer/render_view_impl.h"
-#include "third_party/WebKit/public/platform/WebSize.h"
-#include "third_party/WebKit/public/platform/WebString.h"
-#include "third_party/WebKit/public/web/WebDocument.h"
-#include "third_party/WebKit/public/web/WebElement.h"
-#include "third_party/WebKit/public/web/WebFrame.h"
-#include "third_party/WebKit/public/web/WebInputElement.h"
-#include "third_party/WebKit/public/web/WebNode.h"
-#include "third_party/WebKit/public/web/WebSecurityOrigin.h"
-#include "third_party/WebKit/public/web/WebSpeechInputListener.h"
-#include "third_party/WebKit/public/web/WebView.h"
-
-using blink::WebDocument;
-using blink::WebElement;
-using blink::WebFrame;
-using blink::WebInputElement;
-using blink::WebNode;
-using blink::WebView;
-
-namespace content {
-
-InputTagSpeechDispatcher::InputTagSpeechDispatcher(
- RenderViewImpl* render_view,
- blink::WebSpeechInputListener* listener)
- : RenderViewObserver(render_view),
- listener_(listener) {
-}
-
-bool InputTagSpeechDispatcher::OnMessageReceived(
- const IPC::Message& message) {
- bool handled = true;
- IPC_BEGIN_MESSAGE_MAP(InputTagSpeechDispatcher, message)
- IPC_MESSAGE_HANDLER(InputTagSpeechMsg_SetRecognitionResults,
- OnSpeechRecognitionResults)
- IPC_MESSAGE_HANDLER(InputTagSpeechMsg_RecordingComplete,
- OnSpeechRecordingComplete)
- IPC_MESSAGE_HANDLER(InputTagSpeechMsg_RecognitionComplete,
- OnSpeechRecognitionComplete)
- IPC_MESSAGE_HANDLER(InputTagSpeechMsg_ToggleSpeechInput,
- OnSpeechRecognitionToggleSpeechInput)
- IPC_MESSAGE_UNHANDLED(handled = false)
- IPC_END_MESSAGE_MAP()
- return handled;
-}
-
-bool InputTagSpeechDispatcher::startRecognition(
- int request_id,
- const blink::WebRect& element_rect,
- const blink::WebString& language,
- const blink::WebString& grammar,
- const blink::WebSecurityOrigin& origin) {
- DVLOG(1) << "InputTagSpeechDispatcher::startRecognition enter";
-
- InputTagSpeechHostMsg_StartRecognition_Params params;
- params.grammar = base::UTF16ToUTF8(grammar);
- params.language = base::UTF16ToUTF8(language);
- params.origin_url = base::UTF16ToUTF8(origin.toString());
- params.render_view_id = routing_id();
- params.request_id = request_id;
- params.element_rect = element_rect;
-
- Send(new InputTagSpeechHostMsg_StartRecognition(params));
- DVLOG(1) << "InputTagSpeechDispatcher::startRecognition exit";
- return true;
-}
-
-void InputTagSpeechDispatcher::cancelRecognition(int request_id) {
- DVLOG(1) << "InputTagSpeechDispatcher::cancelRecognition enter";
- Send(new InputTagSpeechHostMsg_CancelRecognition(routing_id(), request_id));
- DVLOG(1) << "InputTagSpeechDispatcher::cancelRecognition exit";
-}
-
-void InputTagSpeechDispatcher::stopRecording(int request_id) {
- DVLOG(1) << "InputTagSpeechDispatcher::stopRecording enter";
- Send(new InputTagSpeechHostMsg_StopRecording(routing_id(),
- request_id));
- DVLOG(1) << "InputTagSpeechDispatcher::stopRecording exit";
-}
-
-void InputTagSpeechDispatcher::OnSpeechRecognitionResults(
- int request_id,
- const SpeechRecognitionResults& results) {
- DVLOG(1) << "InputTagSpeechDispatcher::OnSpeechRecognitionResults enter";
- DCHECK_EQ(results.size(), 1U);
-
- const SpeechRecognitionResult& result = results[0];
- blink::WebSpeechInputResultArray webkit_result(result.hypotheses.size());
- for (size_t i = 0; i < result.hypotheses.size(); ++i) {
- webkit_result[i].assign(result.hypotheses[i].utterance,
- result.hypotheses[i].confidence);
- }
- listener_->setRecognitionResult(request_id, webkit_result);
-
- DVLOG(1) << "InputTagSpeechDispatcher::OnSpeechRecognitionResults exit";
-}
-
-void InputTagSpeechDispatcher::OnSpeechRecordingComplete(int request_id) {
- DVLOG(1) << "InputTagSpeechDispatcher::OnSpeechRecordingComplete enter";
- listener_->didCompleteRecording(request_id);
- DVLOG(1) << "InputTagSpeechDispatcher::OnSpeechRecordingComplete exit";
-}
-
-void InputTagSpeechDispatcher::OnSpeechRecognitionComplete(int request_id) {
- DVLOG(1) << "InputTagSpeechDispatcher::OnSpeechRecognitionComplete enter";
- listener_->didCompleteRecognition(request_id);
- DVLOG(1) << "InputTagSpeechDispatcher::OnSpeechRecognitionComplete exit";
-}
-
-void InputTagSpeechDispatcher::OnSpeechRecognitionToggleSpeechInput() {
- DVLOG(1) <<"InputTagSpeechDispatcher::OnSpeechRecognitionToggleSpeechInput";
-
- WebView* web_view = render_view()->GetWebView();
-
- WebFrame* frame = web_view->mainFrame();
- if (!frame)
- return;
-
- WebDocument document = frame->document();
- if (document.isNull())
- return;
-
- blink::WebElement element = document.focusedElement();
- if (element.isNull())
- return;
-
- blink::WebInputElement* input_element = blink::toWebInputElement(&element);
- if (!input_element)
- return;
- if (!input_element->isSpeechInputEnabled())
- return;
-
- if (input_element->getSpeechInputState() == WebInputElement::Idle) {
- input_element->startSpeechInput();
- } else {
- input_element->stopSpeechInput();
- }
-}
-
-} // namespace content
« no previous file with comments | « content/renderer/input_tag_speech_dispatcher.h ('k') | content/renderer/render_view_impl.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698