OLD | NEW |
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 'use strict'; | 5 'use strict'; |
6 | 6 |
7 var MS_IN_SECOND = 1000; | 7 var MS_IN_SECOND = 1000; |
8 | 8 |
9 /** | 9 /** |
10 * Builds an object to manage notification card set. | 10 * Builds an object to manage notification card set. |
(...skipping 25 matching lines...) Expand all Loading... |
36 * parameters for showing a Chrome notification. | 36 * parameters for showing a Chrome notification. |
37 */ | 37 */ |
38 function showNotification(cardId, cardCreateInfo) { | 38 function showNotification(cardId, cardCreateInfo) { |
39 console.log('cardManager.showNotification ' + cardId + ' ' + | 39 console.log('cardManager.showNotification ' + cardId + ' ' + |
40 JSON.stringify(cardCreateInfo)); | 40 JSON.stringify(cardCreateInfo)); |
41 | 41 |
42 if (cardCreateInfo.previousVersion !== cardCreateInfo.version) { | 42 if (cardCreateInfo.previousVersion !== cardCreateInfo.version) { |
43 try { | 43 try { |
44 // Delete a notification with the specified id if it already exists, and | 44 // Delete a notification with the specified id if it already exists, and |
45 // then create a notification. | 45 // then create a notification. |
46 chrome.notifications.create( | 46 instrumented.notifications.create( |
47 cardId, | 47 cardId, |
48 cardCreateInfo.notification, | 48 cardCreateInfo.notification, |
49 function(newNotificationId) { | 49 function(newNotificationId) { |
50 if (!newNotificationId || chrome.runtime.lastError) { | 50 if (!newNotificationId || chrome.runtime.lastError) { |
51 var errorMessage = chrome.runtime.lastError && | 51 var errorMessage = chrome.runtime.lastError && |
52 chrome.runtime.lastError.message; | 52 chrome.runtime.lastError.message; |
53 console.error('notifications.create: ID=' + newNotificationId + | 53 console.error('notifications.create: ID=' + newNotificationId + |
54 ', ERROR=' + errorMessage); | 54 ', ERROR=' + errorMessage); |
55 return; | 55 return; |
56 } | 56 } |
57 | 57 |
58 scheduleHiding(cardId, cardCreateInfo.timeHide); | 58 scheduleHiding(cardId, cardCreateInfo.timeHide); |
59 }); | 59 }); |
60 } catch (error) { | 60 } catch (error) { |
61 console.error('Error in notifications.create: ' + error); | 61 console.error('Error in notifications.create: ' + error); |
62 } | 62 } |
63 } else { | 63 } else { |
64 try { | 64 try { |
65 // Update existing notification. | 65 // Update existing notification. |
66 chrome.notifications.update( | 66 instrumented.notifications.update( |
67 cardId, | 67 cardId, |
68 cardCreateInfo.notification, | 68 cardCreateInfo.notification, |
69 function(wasUpdated) { | 69 function(wasUpdated) { |
70 if (!wasUpdated || chrome.runtime.lastError) { | 70 if (!wasUpdated || chrome.runtime.lastError) { |
71 var errorMessage = chrome.runtime.lastError && | 71 var errorMessage = chrome.runtime.lastError && |
72 chrome.runtime.lastError.message; | 72 chrome.runtime.lastError.message; |
73 console.error('notifications.update: UPDATED=' + wasUpdated + | 73 console.error('notifications.update: UPDATED=' + wasUpdated + |
74 ', ERROR=' + errorMessage); | 74 ', ERROR=' + errorMessage); |
75 return; | 75 return; |
76 } | 76 } |
(...skipping 63 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
140 * @param {string} cardId Card ID. | 140 * @param {string} cardId Card ID. |
141 */ | 141 */ |
142 function clear(cardId) { | 142 function clear(cardId) { |
143 console.log('cardManager.unregister ' + cardId); | 143 console.log('cardManager.unregister ' + cardId); |
144 | 144 |
145 chrome.notifications.clear(cardId, function() {}); | 145 chrome.notifications.clear(cardId, function() {}); |
146 chrome.alarms.clear(cardShowPrefix + cardId); | 146 chrome.alarms.clear(cardShowPrefix + cardId); |
147 chrome.alarms.clear(cardHidePrefix + cardId); | 147 chrome.alarms.clear(cardHidePrefix + cardId); |
148 } | 148 } |
149 | 149 |
150 chrome.alarms.onAlarm.addListener(function(alarm) { | 150 instrumented.alarms.onAlarm.addListener(function(alarm) { |
151 console.log('cardManager.onAlarm ' + JSON.stringify(alarm)); | 151 console.log('cardManager.onAlarm ' + JSON.stringify(alarm)); |
152 | 152 |
153 if (alarm.name.indexOf(cardShowPrefix) == 0) { | 153 if (alarm.name.indexOf(cardShowPrefix) == 0) { |
154 // Alarm to show the card. | 154 // Alarm to show the card. |
155 var cardId = alarm.name.substring(cardShowPrefix.length); | 155 var cardId = alarm.name.substring(cardShowPrefix.length); |
156 storage.get('notificationsData', function(items) { | 156 instrumented.storage.local.get('notificationsData', function(items) { |
157 items.notificationsData = items.notificationsData || {}; | 157 items.notificationsData = items.notificationsData || {}; |
158 console.log('cardManager.onAlarm.get ' + JSON.stringify(items)); | 158 console.log('cardManager.onAlarm.get ' + JSON.stringify(items)); |
159 var notificationData = items.notificationsData[cardId]; | 159 var notificationData = items.notificationsData[cardId]; |
160 if (!notificationData) | 160 if (!notificationData) |
161 return; | 161 return; |
162 | 162 |
163 showNotification(cardId, notificationData.cardCreateInfo); | 163 showNotification(cardId, notificationData.cardCreateInfo); |
164 }); | 164 }); |
165 } else if (alarm.name.indexOf(cardHidePrefix) == 0) { | 165 } else if (alarm.name.indexOf(cardHidePrefix) == 0) { |
166 // Alarm to hide the card. | 166 // Alarm to hide the card. |
167 var cardId = alarm.name.substring(cardHidePrefix.length); | 167 var cardId = alarm.name.substring(cardHidePrefix.length); |
168 chrome.notifications.clear(cardId, function() {}); | 168 chrome.notifications.clear(cardId, function() {}); |
169 } | 169 } |
170 }); | 170 }); |
171 | 171 |
172 return { | 172 return { |
173 update: update, | 173 update: update, |
174 clear: clear | 174 clear: clear |
175 }; | 175 }; |
176 } | 176 } |
OLD | NEW |