diff options
Diffstat (limited to 'chrome/common/extensions/docs/examples/api/speechInput/basic/background.js')
-rw-r--r-- | chrome/common/extensions/docs/examples/api/speechInput/basic/background.js | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/chrome/common/extensions/docs/examples/api/speechInput/basic/background.js b/chrome/common/extensions/docs/examples/api/speechInput/basic/background.js new file mode 100644 index 0000000..3093b6c --- /dev/null +++ b/chrome/common/extensions/docs/examples/api/speechInput/basic/background.js @@ -0,0 +1,41 @@ +// Copyright (c) 2011 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. + +function setStartIcon() { + chrome.browserAction.setIcon({ path: "start.png" }); +} + +function setStopIcon() { + chrome.browserAction.setIcon({ path: "stop.png" }); +} + +chrome.browserAction.onClicked.addListener(function(tab) { + chrome.experimental.speechInput.isRecording(function(recording) { + if (!recording) { + chrome.experimental.speechInput.start({}, function() { + if (chrome.extension.lastError) { + alert("Couldn't start speech input: " + + chrome.extension.lastError.message); + setStartIcon(); + } else { + setStopIcon(); + } + }); + } else { + chrome.experimental.speechInput.stop(function() { + setStartIcon(); + }); + } + }); +}); + +chrome.experimental.speechInput.onError.addListener(function(error) { + alert("Speech input failed: " + error.code); + setStartIcon(); +}); + +chrome.experimental.speechInput.onResult.addListener(function(result) { + alert(result.hypotheses[0].utterance); + setStartIcon(); +}); |