summaryrefslogtreecommitdiffstats
path: root/content/browser/speech/speech_recognition_manager_impl.h
Commit message (Collapse)AuthorAgeFilesLines
* Standardize usage of virtual/override/final in content/browser/dcheng2014-10-211-30/+30
| | | | | | | | | | | | This patch was automatically generated by applying clang fixit hints generated by the plugin to the source tree. BUG=417463 TBR=sky@chromium.org Review URL: https://codereview.chromium.org/667943003 Cr-Commit-Position: refs/heads/master@{#300469}
* Replacing the OVERRIDE with override and FINAL with final in ↵mohan.reddy2014-10-071-22/+22
| | | | | | | | | | | | | content/browser/speech This step is a giant search and replace for OVERRIDE and FINAL to replace them with their lowercase versions. BUG=417463 Review URL: https://codereview.chromium.org/631083002 Cr-Commit-Position: refs/heads/master@{#298388}
* Making sure that SpeechRecognitionDispatcherHost is not used after freetommyw@chromium.org2014-02-201-2/+1
| | | | | | | | | | | A test have been discovered that under certain conditions a use after free can occur. BUG=339667 Review URL: https://codereview.chromium.org/170243005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@252233 0039d316-1c4b-4281-b951-d872f2087c98
* Convert string16 to base::string16 in content.brettw@chromium.org2013-12-031-1/+1
| | | | | | | | BUG= Review URL: https://codereview.chromium.org/102593002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@238447 0039d316-1c4b-4281-b951-d872f2087c98
* Web Speech API: Fix a race condition causing renderer crash.primiano@chromium.org2013-10-021-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The introduction of the MediaRequestPermission (i.e. infobar) has opened a race window which causes a recognition session to be aborted twice, causing a consequent crash on the renderer. The race window is the following: 1) Session 1 is started (SpeechRecognitionManagerImpl::StartSession) 2) Security checks for session 1 are started asynchronously (delegate_->CheckRecognitionIsAllowed). 3) Session 2 is started. This causes an immediate abort of session 1. 4) The oustanding security check for session 1 completes and returns a nack. The nack causes an abort of session 1 (in RecognitionAllowedCallback). However, session 1 was already aborted in 3). 5) The double abort is not tolerated by the renderer, which crashes. This CL closes the race window with a not-so-elegant fix. A refactoring of the speech_recognition_manager_impl.cc is STRONGLY adviced (Hint: use and extend the already existing FSM to keep track of the asynchronous completion of security checks. Don't introduce extra state with extra variables). BUG=296690,116954 Review URL: https://codereview.chromium.org/25550003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@226523 0039d316-1c4b-4281-b951-d872f2087c98
* Get rid of the SpeechRecognitionPreferences interface. It only had one ↵jam@chromium.org2013-07-091-0/+2
| | | | | | | | | | method, and we can roll that into SpeechRecognitionDelegate instead to simplify things. This also allows us to get rid of ChromeSpeechRecognitionPreferences. R=tommi@chromium.org Review URL: https://codereview.chromium.org/18487007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@210616 0039d316-1c4b-4281-b951-d872f2087c98
* Minor cleanup to remove the static thread-safe methods on BrowserMainLoop. ↵jam@chromium.org2013-06-211-1/+9
| | | | | | | | | | Initially I thought this would be one getter so it seemed fine, but now it has 3 and more are on the way. Switch to one static getter for this class, and then getters for the member variables. I used dependency injection to allow access to these objects from other threads, which also cleaned up tests a bit. R=scherkus@chromium.org Review URL: https://codereview.chromium.org/17508005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@207871 0039d316-1c4b-4281-b951-d872f2087c98
* Replace MediaStreamUIController with MediaStreamUIProxy.sergeyu@chromium.org2013-06-071-10/+14
| | | | | | | | | | | | | | | | | | | Previously a single object MediaStreamUIController was used to control UI for all streams. Replaced it with a per-stream MediaStreamUIProxy that simplifies code in many places. Also moved media request queueing logic from content layer to chrome. Now different types of requests may be queued differently (e.g. there is no reason to block screen capture requests on webcam infobar). This change was previously landed in 197222 and reverted in 197242 TBR=tommi@chromium.org Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=204044 Review URL: https://chromiumcodereview.appspot.com/16342002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@204808 0039d316-1c4b-4281-b951-d872f2087c98
* Removed the IsRecordingInProcess check for speech since it is not needed.xians@chromium.org2013-06-051-1/+0
| | | | | | | | | | | | The check is wrong since other clients doing capturing should not prevent speech start recording. BUG=238800 TEST=goto www.corp.google.com/~dou/audio/audio_speech_crash/speech_input.html, the speech recognizer should work on ChromeOS R=dalecurtis@chromium.org, joi@chromium.org, primiano@chromium.org Review URL: https://codereview.chromium.org/16286010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@204260 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 204044 "Replace MediaStreamUIController with MediaStreamU..."grunell@chromium.org2013-06-051-14/+10
| | | | | | | | | | | | | | | | | | | | | | | > Replace MediaStreamUIController with MediaStreamUIProxy. > > Previously a single object MediaStreamUIController was used to control UI for > all streams. Replaced it with a per-stream MediaStreamUIProxy that simplifies > code in many places. > Also moved media request queueing logic from content layer to chrome. Now > different types of requests may be queued differently (e.g. there is no > reason to block screen capture requests on webcam infobar). > > This change was previously landed in 197222 and reverted in 197242 > > TBR=vrk@chromium.org > > Review URL: https://codereview.chromium.org/16342002 TBR=sergeyu@chromium.org Review URL: https://codereview.chromium.org/15701023 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@204184 0039d316-1c4b-4281-b951-d872f2087c98
* Replace MediaStreamUIController with MediaStreamUIProxy.sergeyu@chromium.org2013-06-041-10/+14
| | | | | | | | | | | | | | | | | Previously a single object MediaStreamUIController was used to control UI for all streams. Replaced it with a per-stream MediaStreamUIProxy that simplifies code in many places. Also moved media request queueing logic from content layer to chrome. Now different types of requests may be queued differently (e.g. there is no reason to block screen capture requests on webcam infobar). This change was previously landed in 197222 and reverted in 197242 TBR=vrk@chromium.org Review URL: https://codereview.chromium.org/16342002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@204044 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 200559 "Replace MediaStreamUIController with MediaStreamU..."sergeyu@chromium.org2013-05-161-14/+10
| | | | | | | | | | | | | | | | | | | | | | | | | > Replace MediaStreamUIController with MediaStreamUIProxy. > > Previously a single object MediaStreamUIController was used to control UI for > all streams. Replaced it with a per-stream MediaStreamUIProxy that simplifies > code in many places. > Also moved media request queueing logic from content layer to chrome. Now > different types of requests may be queued differently (e.g. there is no > reason to block screen capture requests on webcam infobar). > > This change was previously landed in 197222 and 197755 and reverted in > 197242 and 197768. Each time it caused test failures on some Mac bots. > The failure seems to be caused by bug 236846 which has been fixed. > > TBR=tommi@chromium.org > > Review URL: https://codereview.chromium.org/14750011 TBR=sergeyu@chromium.org Review URL: https://codereview.chromium.org/14972023 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@200579 0039d316-1c4b-4281-b951-d872f2087c98
* Replace MediaStreamUIController with MediaStreamUIProxy.sergeyu@chromium.org2013-05-161-10/+14
| | | | | | | | | | | | | | | | | | | Previously a single object MediaStreamUIController was used to control UI for all streams. Replaced it with a per-stream MediaStreamUIProxy that simplifies code in many places. Also moved media request queueing logic from content layer to chrome. Now different types of requests may be queued differently (e.g. there is no reason to block screen capture requests on webcam infobar). This change was previously landed in 197222 and 197755 and reverted in 197242 and 197768. Each time it caused test failures on some Mac bots. The failure seems to be caused by bug 236846 which has been fixed. TBR=tommi@chromium.org Review URL: https://codereview.chromium.org/14750011 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@200559 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 197755 "Replace MediaStreamUIController with MediaStreamU..." which ↵mattm@chromium.org2013-05-021-14/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | is still failing on Mac10.7 Tests (1). > Replace MediaStreamUIController with MediaStreamUIProxy. > > Previously a single object MediaStreamUIController was used to control UI for > all streams. Replaced it with a per-stream MediaStreamUIProxy that simplifies > code in many places. > Also moved media request queueing logic from content layer to chrome. Now > different types of requests may be queued differently (e.g. there is no > reason to block screen capture requests on webcam infobar). > > This change was reviewed in https://codereview.chromium.org/13989003 and > landed in r197222, but it had to be reverted reverted in r197242 because > it caused test failures on buildbot "Mac10.7 Tests (1)". It's not clear > what caused these failures - I could never reproduce them locally or on > trybots. > > TBR=tommi@chromium.org > > Review URL: https://codereview.chromium.org/14584003 TBR=sergeyu@chromium.org Review URL: https://codereview.chromium.org/14824002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@197768 0039d316-1c4b-4281-b951-d872f2087c98
* Replace MediaStreamUIController with MediaStreamUIProxy.sergeyu@chromium.org2013-05-021-10/+14
| | | | | | | | | | | | | | | | | | | | | Previously a single object MediaStreamUIController was used to control UI for all streams. Replaced it with a per-stream MediaStreamUIProxy that simplifies code in many places. Also moved media request queueing logic from content layer to chrome. Now different types of requests may be queued differently (e.g. there is no reason to block screen capture requests on webcam infobar). This change was reviewed in https://codereview.chromium.org/13989003 and landed in r197222, but it had to be reverted reverted in r197242 because it caused test failures on buildbot "Mac10.7 Tests (1)". It's not clear what caused these failures - I could never reproduce them locally or on trybots. TBR=tommi@chromium.org Review URL: https://codereview.chromium.org/14584003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@197755 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 197222 "Replace MediaStreamUIController with MediaStreamU..."sergeyu@chromium.org2013-04-301-14/+10
| | | | | | | | | | | | | | | | | | | | | > Replace MediaStreamUIController with MediaStreamUIProxy. > > Previously a single object MediaStreamUIController was used to control UI for > all streams. Replaced it with a per-stream MediaStreamUIProxy that simplifies > code in many places. > Also moved media request queueing logic from content layer to chrome. Now > different types of requests may be queued differently (e.g. there is no > reason to block screen capture requests on webcam infobar). > > TBR=tommi@chromium.org > > Review URL: https://codereview.chromium.org/13989003 TBR=sergeyu@chromium.org Review URL: https://codereview.chromium.org/14599002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@197242 0039d316-1c4b-4281-b951-d872f2087c98
* Replace MediaStreamUIController with MediaStreamUIProxy.sergeyu@chromium.org2013-04-301-10/+14
| | | | | | | | | | | | | | | Previously a single object MediaStreamUIController was used to control UI for all streams. Replaced it with a per-stream MediaStreamUIProxy that simplifies code in many places. Also moved media request queueing logic from content layer to chrome. Now different types of requests may be queued differently (e.g. there is no reason to block screen capture requests on webcam infobar). TBR=tommi@chromium.org Review URL: https://codereview.chromium.org/13989003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@197222 0039d316-1c4b-4281-b951-d872f2087c98
* Extend scoped_ptr to be closer to unique_ptr. Support custom deleters, and ↵ajwong@chromium.org2012-12-201-1/+2
| | | | | | | | | | | | | | | | | | | | | | | deleting arrays. This is based on the modifications by "Geoffrey Romer" <gromer@google.com> to Google's internal version of scoped_ptr<>. All cleaver tricks are his, not mine. :) It brings most of the features of C++11's unique_ptr<> into this class and should eliminate the need for scoped_array<>, scoped_malloc_free<>, and possibly a few other scopers. Please refer to the unique_ptr<> API for documentation. Divergence from unique_ptr<>: 1) DefaultDeleter<T[n]> (sized-arrays) is explicitly disabled because this construct would cause the single-object delete to be called on a pointer to a T[n]. It is impossible to construct a single-object new expression that returns a T[n]*. You can only get this with new[] which should correspond to DefaultDeleter<T[n][]>. This issue has been raised with the C++ LWG as it is possible a unique_ptr<> spec defect. 2) Reference types for Deleters are not supported. This simplifies implementation significantly because there is no need to distinguish between the converting constructor + converting assignment operator and their move constructor + move assignment operator. 4) Move-only Deleters are not supported. Avoids the need to emulate std::forward(). BUG=109874 TBR=dhollowa,kinuko,ananta,hans,scherkus Review URL: https://codereview.chromium.org/11149006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@174057 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 170701 since the WebKit change has now been rolled in again.tommi@chromium.org2012-12-041-2/+2
| | | | | | | | | | | | | | | | | | | | | > Revert 170668 > Needs to revert this because its WebKit patch was unrolled. > (See r136319, unreviewed, rolling out r136236). > > Update the Speech Api to support array(s) of result items > > instead of a single item at a time. > > > > BUG=143124 > > TEST=Covered by content_unittests > > > > Review URL: https://chromiumcodereview.appspot.com/11421103 > > TBR=tommi@chromium.org > Review URL: https://codereview.chromium.org/11416310 TBR=tasak@google.com Review URL: https://codereview.chromium.org/11316330 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@170920 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 170668tasak@google.com2012-12-031-2/+2
| | | | | | | | | | | | | | | | | Needs to revert this because its WebKit patch was unrolled. (See r136319, unreviewed, rolling out r136236). > Update the Speech Api to support array(s) of result items > instead of a single item at a time. > > BUG=143124 > TEST=Covered by content_unittests > > Review URL: https://chromiumcodereview.appspot.com/11421103 TBR=tommi@chromium.org Review URL: https://codereview.chromium.org/11416310 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@170701 0039d316-1c4b-4281-b951-d872f2087c98
* Update the Speech Api to support array(s) of result itemstommi@chromium.org2012-12-011-2/+2
| | | | | | | | | | | instead of a single item at a time. BUG=143124 TEST=Covered by content_unittests Review URL: https://chromiumcodereview.appspot.com/11421103 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@170668 0039d316-1c4b-4281-b951-d872f2087c98
* This patch does:xians@chromium.org2012-11-211-5/+6
| | | | | | | | | | | | # use MakeMediaRequest to query the permission for the devices. # Notify the UI on device opened and closed. BUG=146498,132965 TEST=run chrome with --enable-scripted-speech, go to http://www.corp.google.com/~hwennborg/speechreco.html, test the behavior manually. Review URL: https://chromiumcodereview.appspot.com/11415097 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@169068 0039d316-1c4b-4281-b951-d872f2087c98
* Move content\browser\renderer_host\media to content namespace.jam@chromium.org2012-10-291-5/+0
| | | | | | | TBR=tfarina Review URL: https://codereview.chromium.org/11339014 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@164670 0039d316-1c4b-4281-b951-d872f2087c98
* content/browser: Move speech code into content namespace.tfarina@chromium.org2012-10-291-21/+18
| | | | | | | | TBR=jam@chromium.org Review URL: https://codereview.chromium.org/11347004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@164625 0039d316-1c4b-4281-b951-d872f2087c98
* Build SpeechRecognitionManagerImpl on iOS. Run content speech unit tests.msarda@chromium.org2012-10-241-0/+2
| | | | | | | | | | | | | Build SpeechRecognitionManagerImpl on iOS: * Ifdef-out PermissionRequest on iOS as it extends MediaStreamRequester which is part of content/browser/renderer_host/media/ and is not build on iOS. * Voice search can only be initiated by clear user action. Add DCHECKs to clearly identify the expected behavior. * Build all content/browser/speech/... unit tests. Review URL: https://chromiumcodereview.appspot.com/11229004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@163803 0039d316-1c4b-4281-b951-d872f2087c98
* Speech JavaScript API: Use the MediaStreamManager to ask for user permission.hans@chromium.org2012-09-131-9/+18
| | | | | | | | | | BUG=132965 TEST=manual Review URL: https://chromiumcodereview.appspot.com/10933018 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@156615 0039d316-1c4b-4281-b951-d872f2087c98
* Remove #pragma once from contentajwong@chromium.org2012-07-111-1/+0
| | | | | | Review URL: https://chromiumcodereview.appspot.com/10696166 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@146071 0039d316-1c4b-4281-b951-d872f2087c98
* Changing tab closure handling logic in speech recognition code and cleaning ↵primiano@chromium.org2012-07-061-0/+2
| | | | | | | | | | | | | | | | bubble controller. (Speech CL2.6) - Introduced TabWatcher facility class to handle de/registration for tab closure events. - Tab closure is now handled directly in the ChromeSpeechRecognitionManagerDelegate, aborting all sessions for the corresponding renderer. - Cleaned-up SpeechRecognitionBubbleController code: removed support for multiple bubbles (not used anymore) and tab events registration. BUG=116954,132627 TEST=none Review URL: https://chromiumcodereview.appspot.com/10663018 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@145586 0039d316-1c4b-4281-b951-d872f2087c98
* Renamed SpeechRecognizerImpl to SpeechRecognizer and fixed some comments in ↵primiano@chromium.org2012-06-271-2/+2
| | | | | | | | | | | | the speech code. BUG=116954 TEST=none Review URL: https://chromiumcodereview.appspot.com/10661053 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@144435 0039d316-1c4b-4281-b951-d872f2087c98
* Removed use of AsWeakPtr in speech_recognition_manager_impl.cc when posting ↵primiano@chromium.org2012-06-141-1/+5
| | | | | | | | | | | | | | | to other (FILE) threads. Now the method posted to the FILE thread is static and does not need any reference to |this|. BUG=132369 TEST=none Review URL: https://chromiumcodereview.appspot.com/10536139 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@142121 0039d316-1c4b-4281-b951-d872f2087c98
* Introduced SpeechRecognitionDispatcher(Host) classes, handling dispatch of ↵hans@chromium.org2012-05-251-4/+3
| | | | | | | | | | | | | IPC messages for continuous speech recognition. (Speech CL2.1) BUG=116954 TEST=none Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=138801 Review URL: https://chromiumcodereview.appspot.com/10273006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@139015 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 138801 - Introduced SpeechRecognitionDispatcher(Host) classes, ↵hans@chromium.org2012-05-241-3/+4
| | | | | | | | | | | | | | | | | | | handling dispatch of IPC messages for continuous speech recognition. (Speech CL2.1) It looks like this bumped the Linux x64 size with ~40k, causing the perf bot to go red: http://build.chromium.org/p/chromium/buildstatus?builder=Linux%20x64&number=30110 Will try to figure out what's going on and re-land later. BUG=116954 TEST=none Review URL: https://chromiumcodereview.appspot.com/10273006 TBR=primiano@chromium.org Review URL: https://chromiumcodereview.appspot.com/10443009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@138807 0039d316-1c4b-4281-b951-d872f2087c98
* Introduced SpeechRecognitionDispatcher(Host) classes, handling dispatch of ↵primiano@chromium.org2012-05-241-4/+3
| | | | | | | | | | | | IPC messages for continuous speech recognition. (Speech CL2.1) BUG=116954 TEST=none Review URL: https://chromiumcodereview.appspot.com/10273006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@138801 0039d316-1c4b-4281-b951-d872f2087c98
* SpeechInputExtensionManager now interface (exclusively) with ↵primiano@chromium.org2012-05-241-2/+4
| | | | | | | | | | | | | | | | | | | | | | SpeechRecognitionManagerDelegate (Speech CL1.11) This is a re-submit of r138498 which was reverted in r138568. Fixes introduced by this CL: - Added a check on speech_input_extensions_manager shutdown to assert that the speech_recognition_manager has not been unexpectedly destroyed (happens in some tests). - Added WeakPtr to speech_recognition_manager_impl so that it can be destroyed ungracefully without crashing. Original CL description: - The tray icon and balloon handing has been moved from speech_input_extensions_manager to chrome_speech_recognition_manager_delegate, since that code (tray icon) will be used also for continuous recognition. - Removed the SpeechRecognizer interface from /content/public (thus de-virtualized and refcounted the SpeechRecognizerImpl) BUG=116954,129408 TEST=browser_tests on Linux ChromiumOS (dbg) Review URL: https://chromiumcodereview.appspot.com/10440011 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@138765 0039d316-1c4b-4281-b951-d872f2087c98
* Moved instantiation of SpeechRecognitionManager inside browser_main_loop, ↵primiano@chromium.org2012-05-161-5/+8
| | | | | | | | | | | | | | | instead of Singleton. (Speech CL1.10) Compared to the Singleton solution, this allows the SpeechRecognitionManager to instantiate and cleanup the delegate at the right time. Also, cleaned-up speech_recognition_browsertest.cc so that the FakeSpeechRecognitionManager extends only the SRM interface, and not the Impl class. BUG=116954 TEST=none Review URL: https://chromiumcodereview.appspot.com/10399025 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@137424 0039d316-1c4b-4281-b951-d872f2087c98
* Refactoring of chrome speech recognition architecture (Speech CL1.8)primiano@chromium.org2012-05-161-51/+40
| | | | | | | | | | | | | | | - Simplified the architecture of SpeechRecognitionManagerImpl. It does not track anymore the state of the recognizer (keeping a state var), rather it derives the state inquiring the recognizer object. After moving the bubble handling code to the delegate, in fact, only 3 states are required in the manager, and they can be inferred simply looking at the recognizer. - SpeechRecognitionManagerImpl does not handle anymore with UI related stuff (bubbles, detach, interactive, background... etc), which have been moved to ChromeSpeechRecognitionManagerDelegate. - ChromeSpeechRecognitionManagerDelegate is now more straightforward, since it implements the "universal" SpeechRecognitionEventListener interface, thus receiving the same events of the manager in the same order, and adds UI handling behavior (only bubbles for the moment) to the behavior of the manager. - Minor change: The SpeechRecognizerImpl now raises a SPEECH_RECOGNITION_ERROR_ABORTED upon Abort. It has no visible effect currently (since Abort is always raised when the bubble disappars) but makes sense for upcoming CLs, when speech input extension or JS APIs can cause an abort of the current recognition (starting a new one). BUG=116954 TEST=none Review URL: https://chromiumcodereview.appspot.com/10352007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@137393 0039d316-1c4b-4281-b951-d872f2087c98
* Adding missing #pragma once in speech recognition headers.primiano@chromium.org2012-05-091-0/+1
| | | | | | | | | BUG=116954 TEST=none Review URL: https://chromiumcodereview.appspot.com/10270009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@136002 0039d316-1c4b-4281-b951-d872f2087c98
* Speech refactoring: Reimplemented SpeechRecognitionManagerImpl as a FSM. (CL1.7)primiano@chromium.org2012-04-251-66/+114
| | | | | | | | | | BUG=116954 TEST=none. Review URL: http://codereview.chromium.org/9972011 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@133967 0039d316-1c4b-4281-b951-d872f2087c98
* Refactoring of chrome speech recognition architecture (CL1.6)primiano@chromium.org2012-04-191-20/+20
| | | | | | | | | | | | Renamed caller_id -> session_id in speech recognition classes. This is a partial refactoring in preparation for next CLs. BUG=116954 TEST=none. Review URL: http://codereview.chromium.org/9972008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@132979 0039d316-1c4b-4281-b951-d872f2087c98
* Fixed a memory leak in SpeechRecognitionManagerImpl causing ↵primiano@chromium.org2012-04-161-1/+2
| | | | | | | | | | | ChromeSpeechInputManagerDelegate to be never freed. BUG=123116,116954 TEST=Run Valgrind tests. Review URL: https://chromiumcodereview.appspot.com/10071040 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@132401 0039d316-1c4b-4281-b951-d872f2087c98
* speech_recognition_requestprimiano@chromium.org2012-03-261-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | - Renamed speech_recognition_request to google_one_shot_remote_engine - Audio encoder moved here (previously was in speech_recognizer). Rationale: Audio encoding is not a requirement of speech recognition. It is a need of the google_one_shot_remote_engine, due to its remote nature. speech_recognition_engine - Extracted the interface SpeechRecognitionEngine (and, accordingly, Delegate) from the former speech_recognition_request. Rationale: google_one_shot_remote_engine is just one of the possible engines (yet currently the only one) that can be exploited to recognize speech. speech_recognition_result - Added SpeechRecognitionError, encapsulating the error code and further error details (for specializing audio errors, since chrome needs them). speech_recognition_manager - Minor adaptions to the new speech_recognizer.cc - Replaced the SpeechRecognitionRequestDelegate interface with the brand new speech_recognition_event_listener BUG=116954 TEST=none Review URL: http://codereview.chromium.org/9663066 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@128896 0039d316-1c4b-4281-b951-d872f2087c98
* Removed the SpeechRecognizerDelegate interface and replaced with ↵primiano@chromium.org2012-03-141-22/+20
| | | | | | | | | | | SpeechRecognitionEventListener. By now it might seem just a rename of the former interface, however this interface will gradually incorporate, in the next CLs, the other delegates and become the reference interface used by all clients to interact with SpeechRecognition inside Chrome. BUG=116954 TEST=none Review URL: http://codereview.chromium.org/9688012 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@126721 0039d316-1c4b-4281-b951-d872f2087c98
* Renamed speech recognition code in preparation for introducing a new speech ↵primiano@chromium.org2012-03-071-0/+129
implementation. - The general-purpose speech recognition classes (that will be needed also by future code) have been renamed to SpeechRecognition*; - The IPC Messages and dispatcher(host) classes that are only related to the current input tag (x-webkit-speech) support have been renamed to InputTagSpeech*; - The namespace has been renamed from speech_input to speech; BUG=116954 TEST= Review URL: https://chromiumcodereview.appspot.com/9568002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@125378 0039d316-1c4b-4281-b951-d872f2087c98