OLD | NEW |
---|---|
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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 #include "chrome/browser/notifications/message_center_notification_manager.h" | 5 #include "chrome/browser/notifications/message_center_notification_manager.h" |
6 | 6 |
7 #include "base/logging.h" | 7 #include "base/logging.h" |
8 #include "base/memory/scoped_ptr.h" | 8 #include "base/memory/scoped_ptr.h" |
9 #include "base/prefs/pref_registry_simple.h" | 9 #include "base/prefs/pref_registry_simple.h" |
10 #include "base/prefs/pref_service.h" | 10 #include "base/prefs/pref_service.h" |
(...skipping 183 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
194 ProfileID profile_id) const { | 194 ProfileID profile_id) const { |
195 // The profile pointer can be weak, the instance may have been destroyed, so | 195 // The profile pointer can be weak, the instance may have been destroyed, so |
196 // no profile method should be called inside this function. | 196 // no profile method should be called inside this function. |
197 | 197 |
198 std::string profile_notification_id = | 198 std::string profile_notification_id = |
199 ProfileNotification::GetProfileNotificationId(delegate_id, profile_id); | 199 ProfileNotification::GetProfileNotificationId(delegate_id, profile_id); |
200 NotificationMap::const_iterator iter = | 200 NotificationMap::const_iterator iter = |
201 profile_notifications_.find(profile_notification_id); | 201 profile_notifications_.find(profile_notification_id); |
202 if (iter == profile_notifications_.end()) | 202 if (iter == profile_notifications_.end()) |
203 return NULL; | 203 return NULL; |
204 return &(iter->second->notification()); | 204 |
205 // Update |notification| with the latest information from the message center. | |
Jun Mukai
2015/03/31 19:59:47
This is weird. Is there some case where the state
yoshiki
2015/04/01 04:10:49
"shown_as_popup" and "read" flags are changed in t
Jun Mukai
2015/04/01 18:02:11
Commented on the other part.
I believe FindById sh
yoshiki
2015/04/06 02:22:18
Thank you for the suggestion but we can't do it. F
| |
206 ProfileNotification* profile_notification = iter->second; | |
207 profile_notification->CopyNotificationState( | |
208 message_center_->FindVisibleNotificationById( | |
209 iter->second->notification().id())); | |
210 | |
211 return &(profile_notification->notification()); | |
205 } | 212 } |
206 | 213 |
207 bool MessageCenterNotificationManager::CancelById( | 214 bool MessageCenterNotificationManager::CancelById( |
208 const std::string& delegate_id, | 215 const std::string& delegate_id, |
209 ProfileID profile_id) { | 216 ProfileID profile_id) { |
210 // The profile pointer can be weak, the instance may have been destroyed, so | 217 // The profile pointer can be weak, the instance may have been destroyed, so |
211 // no profile method should be called inside this function. | 218 // no profile method should be called inside this function. |
212 | 219 |
213 std::string profile_notification_id = | 220 std::string profile_notification_id = |
214 ProfileNotification::GetProfileNotificationId(delegate_id, profile_id); | 221 ProfileNotification::GetProfileNotificationId(delegate_id, profile_id); |
(...skipping 187 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
402 it != registry->enabled_extensions().end(); | 409 it != registry->enabled_extensions().end(); |
403 ++it) { | 410 ++it) { |
404 if ((*it->get()).permissions_data()->HasAPIPermission( | 411 if ((*it->get()).permissions_data()->HasAPIPermission( |
405 extensions::APIPermission::ID::kNotificationProvider)) { | 412 extensions::APIPermission::ID::kNotificationProvider)) { |
406 extension_id = (*it->get()).id(); | 413 extension_id = (*it->get()).id(); |
407 return extension_id; | 414 return extension_id; |
408 } | 415 } |
409 } | 416 } |
410 return extension_id; | 417 return extension_id; |
411 } | 418 } |
OLD | NEW |