Index: chrome/browser/browser_process_impl.cc |
diff --git a/chrome/browser/browser_process_impl.cc b/chrome/browser/browser_process_impl.cc |
index eee6b04af4302511d7e17d5c5a54490a496c8834..660a0d70968bf4315bfc90088366caf8eec0a921 100644 |
--- a/chrome/browser/browser_process_impl.cc |
+++ b/chrome/browser/browser_process_impl.cc |
@@ -91,6 +91,14 @@ |
#include "chrome/browser/policy/policy_service_stub.h" |
#endif // defined(ENABLE_CONFIGURATION_POLICY) |
+#if defined(ENABLE_MESSAGE_CENTER) && defined(USE_ASH) |
+#include "ash/shell.h" |
+#endif |
+ |
+#if defined(ENABLE_MESSAGE_CENTER) |
+#include "ui/message_center/message_center.h" |
+#endif |
+ |
#if defined(OS_WIN) |
#include "base/win/windows_version.h" |
#include "ui/views/focus/view_storage.h" |
@@ -149,6 +157,9 @@ BrowserProcessImpl::BrowserProcessImpl( |
created_local_state_(false), |
created_icon_manager_(false), |
created_notification_ui_manager_(false), |
+#if defined(ENABLE_MESSAGE_CENTER) && !defined(USE_ASH) |
+ created_message_center_(false), |
+#endif |
created_safe_browsing_service_(false), |
module_ref_count_(0), |
did_start_(false), |
@@ -442,6 +453,19 @@ NotificationUIManager* BrowserProcessImpl::notification_ui_manager() { |
return notification_ui_manager_.get(); |
} |
+#if defined(ENABLE_MESSAGE_CENTER) |
+message_center::MessageCenter* BrowserProcessImpl::message_center() { |
+ DCHECK(CalledOnValidThread()); |
+#if defined(USE_ASH) |
+ return ash::Shell::GetInstance()->message_center(); |
+#else |
+ if (!created_message_center_) |
+ CreateMessageCenter(); |
+ return message_center_.get(); |
+#endif |
+} |
+#endif |
+ |
policy::BrowserPolicyConnector* BrowserProcessImpl::browser_policy_connector() { |
DCHECK(CalledOnValidThread()); |
#if defined(ENABLE_CONFIGURATION_POLICY) |
@@ -848,6 +872,14 @@ void BrowserProcessImpl::CreateNotificationUIManager() { |
#endif |
} |
+#if defined(ENABLE_MESSAGE_CENTER) && !defined(USE_ASH) |
+void BrowserProcessImpl::CreateMessageCenter() { |
+ DCHECK(message_center_.get() == NULL); |
+ message_center_.reset(new message_center::MessageCenter()); |
+ created_message_center_ = true; |
+} |
+#endif |
+ |
void BrowserProcessImpl::CreateBackgroundModeManager() { |
DCHECK(background_mode_manager_.get() == NULL); |
background_mode_manager_.reset( |