Index: chrome/browser/ui/views/toolbar_view.cc |
diff --git a/chrome/browser/ui/views/toolbar_view.cc b/chrome/browser/ui/views/toolbar_view.cc |
index 8704336cfb6bd327a515f7e3630c7e51fb21fb0d..fd1abaa3ec523a04e3711df73cc929619b514b6b 100644 |
--- a/chrome/browser/ui/views/toolbar_view.cc |
+++ b/chrome/browser/ui/views/toolbar_view.cc |
@@ -30,6 +30,7 @@ |
#include "chrome/browser/ui/views/home_button.h" |
#include "chrome/browser/ui/views/location_bar/page_action_image_view.h" |
#include "chrome/browser/ui/views/location_bar/star_view.h" |
+#include "chrome/browser/ui/views/outdated_upgrade_bubble_view.h" |
#include "chrome/browser/ui/views/wrench_menu.h" |
#include "chrome/browser/upgrade_detector.h" |
#include "chrome/common/chrome_notification_types.h" |
@@ -186,6 +187,12 @@ ToolbarView::ToolbarView(Browser* browser) |
registrar_.Add(this, chrome::NOTIFICATION_UPGRADE_RECOMMENDED, |
content::NotificationService::AllSources()); |
+// This should only be available on non-Chrome OS desktop platforms. |
+#if defined(OS_WIN) || defined(OS_MACOSX) || \ |
+ (defined(OS_LINUX) && !defined(OS_CHROMEOS)) |
+ registrar_.Add(this, chrome::NOTIFICATION_OUTDATED_INSTALL, |
+ content::NotificationService::AllSources()); |
+#endif |
#if defined(OS_WIN) |
registrar_.Add(this, chrome::NOTIFICATION_CRITICAL_UPGRADE_INSTALLED, |
content::NotificationService::AllSources()); |
@@ -546,6 +553,12 @@ void ToolbarView::Observe(int type, |
case chrome::NOTIFICATION_GLOBAL_ERRORS_CHANGED: |
UpdateAppMenuState(); |
break; |
+#if defined(OS_WIN) || defined(OS_MACOSX) || \ |
+ (defined(OS_LINUX) && !defined(OS_CHROMEOS)) |
+ case chrome::NOTIFICATION_OUTDATED_INSTALL: |
+ ShowOutdatedInstallNotification(); |
+ break; |
+#endif |
#if defined(OS_WIN) |
case chrome::NOTIFICATION_CRITICAL_UPGRADE_INSTALLED: |
ShowCriticalNotification(); |
@@ -886,6 +899,14 @@ void ToolbarView::ShowCriticalNotification() { |
#endif |
} |
+void ToolbarView::ShowOutdatedInstallNotification() { |
+// This should only work on non-Chrome OS desktop platforms. |
+#if defined(OS_WIN) || defined(OS_MACOSX) || \ |
+ (defined(OS_LINUX) && !defined(OS_CHROMEOS)) |
+ OutdatedUpgradeBubbleView::ShowBubble(app_menu_, browser_); |
+#endif |
+} |
+ |
void ToolbarView::UpdateAppMenuState() { |
string16 accname_app = l10n_util::GetStringUTF16(IDS_ACCNAME_APP); |
if (ShouldShowUpgradeRecommended()) { |