Index: chrome/browser/resources/hotword/manager.js |
diff --git a/chrome/browser/resources/hotword/manager.js b/chrome/browser/resources/hotword/manager.js |
index 7315bbe7af58cc5aa2728dc62a6b466cc1e13e84..ef46dbcf09583ca97de701b392ae01b317b0e251 100644 |
--- a/chrome/browser/resources/hotword/manager.js |
+++ b/chrome/browser/resources/hotword/manager.js |
@@ -11,5 +11,42 @@ |
* This extension contains all the JavaScript for loading and managing the |
* hotword detector. The hotword detector and language model data will be |
* provided by a shared module loaded from the web store. |
+ * |
+ * IMPORTANT! Whenever adding new events, the extension version number MUST be |
+ * incremented. |
*/ |
+// Hotwording state. |
+var stateManager = new hotword.StateManager(); |
+ |
+// Detect Chrome startup and make sure we get a chance to run. |
+chrome.runtime.onStartup.addListener(function() { |
+ stateManager.updateStatus(); |
+}); |
+ |
+// Detect when hotword settings have changed. |
+chrome.hotwordPrivate.onEnabledChanged.addListener(function() { |
+ stateManager.updateStatus(); |
+}); |
+ |
+// Detect when the shared module containing the NaCL module and language model |
+// is installed. |
+chrome.management.onInstalled.addListener(function(info) { |
+ if (info.id == hotword.constants.SHARED_MODULE_ID) { |
Dan Beam
2014/08/27 20:08:36
no curlies
Anand Mistry (off Chromium)
2014/08/28 00:59:25
Done.
|
+ chrome.runtime.reload(); |
+ } |
+}); |
+ |
+// Detect when a session has requested to be started and stopped. |
+chrome.hotwordPrivate.onHotwordSessionRequested.addListener(function() { |
+ // TODO(amistry): This event should change state depending on whether the user |
+ // has enabled always-on hotwording. But for now, always signal the start of a |
+ // hotwording session. This allows this extension to work with the app |
+ // launcher in the current state. |
+ chrome.hotwordPrivate.setHotwordSessionState(true, function() {}); |
+}); |
+ |
+chrome.hotwordPrivate.onHotwordSessionStopped.addListener(function() { |
+ chrome.hotwordPrivate.setHotwordSessionState(false, function() {}); |
+}); |
+ |
Dan Beam
2014/08/27 20:08:36
}());
Anand Mistry (off Chromium)
2014/08/28 00:59:25
Done.
|