// 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(); });