Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(2301)

Unified Diff: chrome/browser/notifications/native_notification_display_service.cc

Issue 2888303004: Minimize the delegate dependencies for non persistent notifications. (Closed)
Patch Set: more fixes Created 3 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/notifications/native_notification_display_service.cc
diff --git a/chrome/browser/notifications/native_notification_display_service.cc b/chrome/browser/notifications/native_notification_display_service.cc
index 2ffcd75fd3929c32998c54c28a73145fdbef9796..392ae390e1e7e5e11201eabb2ee9dd5e8e3b4f5f 100644
--- a/chrome/browser/notifications/native_notification_display_service.cc
+++ b/chrome/browser/notifications/native_notification_display_service.cc
@@ -21,6 +21,7 @@
#include "chrome/browser/notifications/persistent_notification_handler.h"
#include "chrome/browser/profiles/profile.h"
#include "content/public/browser/browser_thread.h"
+#include "content/public/browser/notification_event_dispatcher.h"
#include "extensions/features/features.h"
#if BUILDFLAG(ENABLE_EXTENSIONS)
@@ -93,9 +94,12 @@ void NativeNotificationDisplayService::Display(
notification_bridge_->Display(notification_type, notification_id,
GetProfileId(profile_),
profile_->IsOffTheRecord(), notification);
- notification.delegate()->Display();
- NotificationHandler* handler = GetNotificationHandler(notification_type);
- handler->RegisterNotification(notification_id, notification.delegate());
+ // Unlike all other notifications non persistent notifications require
+ // an event after the notificaiton has been displayed.
Peter Beverloo 2017/05/31 17:52:42 notificaiton -> notification
Miguel Garcia 2017/06/01 17:00:53 Done.
+ if (notification_type == NotificationCommon::NON_PERSISTENT) {
+ content::NotificationEventDispatcher::GetInstance()
+ ->DispatchNonPersistentShowEvent(notification_id);
+ }
} else if (message_center_display_service_) {
message_center_display_service_->Display(notification_type, notification_id,
notification);

Powered by Google App Engine
This is Rietveld 408576698