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

Unified Diff: chrome/browser/ui/ash/system_tray_delegate_linux.cc

Issue 614363002: Added Aura notification that relaunch and powerwash is required in case of downgrade. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: More fixes to StstemTrayDelegateWin. Created 6 years, 3 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/ui/ash/system_tray_delegate_linux.cc
diff --git a/chrome/browser/ui/ash/system_tray_delegate_linux.cc b/chrome/browser/ui/ash/system_tray_delegate_linux.cc
index 8c3ee83462e3772af45b6b25bf88841d331a222e..d45ee1f783b420cab1db4d20c94e3d3626578caa 100644
--- a/chrome/browser/ui/ash/system_tray_delegate_linux.cc
+++ b/chrome/browser/ui/ash/system_tray_delegate_linux.cc
@@ -27,6 +27,31 @@
namespace {
+void GetUpdateInfo(const UpgradeDetector* detector, ash::UpdateInfo* info) {
+ if (!detector || !info)
+ return;
+ ash::UpdateInfo::UpdateSeverity severity =
+ ash::UpdateInfo::UPDATE_NORMAL;
+ switch (detector->upgrade_notification_stage()) {
+ case UpgradeDetector::UPGRADE_ANNOYANCE_CRITICAL:
+ case UpgradeDetector::UPGRADE_ANNOYANCE_SEVERE:
+ severity = ash::UpdateInfo::UPDATE_SEVERE_RED;
+ break;
+ case UpgradeDetector::UPGRADE_ANNOYANCE_HIGH:
+ severity = ash::UpdateInfo::UPDATE_HIGH_ORANGE;
+ break;
+ case UpgradeDetector::UPGRADE_ANNOYANCE_ELEVATED:
+ severity = ash::UpdateInfo::UPDATE_LOW_GREEN;
+ break;
+ case UpgradeDetector::UPGRADE_ANNOYANCE_LOW:
+ case UpgradeDetector::UPGRADE_ANNOYANCE_NONE:
+ severity = ash::UpdateInfo::UPDATE_NORMAL;
+ break;
+ }
+ info->severity = severity;
+ info->is_factory_reset_required = detector->is_factory_reset_required();
+}
+
class SystemTrayDelegateLinux : public ash::SystemTrayDelegate,
public content::NotificationObserver {
public:
@@ -87,8 +112,10 @@ class SystemTrayDelegateLinux : public ash::SystemTrayDelegate,
return false;
}
- virtual bool SystemShouldUpgrade() const OVERRIDE {
- return UpgradeDetector::GetInstance()->notify_upgrade();
+ virtual bool SystemShouldUpgrade(ash::UpdateInfo* info) const OVERRIDE {
+ UpgradeDetector* detector = UpgradeDetector::GetInstance();
+ GetUpdateInfo(detector, info);
+ return detector->notify_upgrade();
}
virtual base::HourClockType GetHourClockType() const OVERRIDE {
@@ -302,27 +329,9 @@ class SystemTrayDelegateLinux : public ash::SystemTrayDelegate,
const content::NotificationSource& source,
const content::NotificationDetails& details) OVERRIDE {
if (type == chrome::NOTIFICATION_UPGRADE_RECOMMENDED) {
- UpgradeDetector* detector =
- content::Source<UpgradeDetector>(source).ptr();
- ash::UpdateObserver::UpdateSeverity severity =
- ash::UpdateObserver::UPDATE_NORMAL;
- switch (detector->upgrade_notification_stage()) {
- case UpgradeDetector::UPGRADE_ANNOYANCE_CRITICAL:
- case UpgradeDetector::UPGRADE_ANNOYANCE_SEVERE:
- severity = ash::UpdateObserver::UPDATE_SEVERE_RED;
- break;
- case UpgradeDetector::UPGRADE_ANNOYANCE_HIGH:
- severity = ash::UpdateObserver::UPDATE_HIGH_ORANGE;
- break;
- case UpgradeDetector::UPGRADE_ANNOYANCE_ELEVATED:
- severity = ash::UpdateObserver::UPDATE_LOW_GREEN;
- break;
- case UpgradeDetector::UPGRADE_ANNOYANCE_LOW:
- case UpgradeDetector::UPGRADE_ANNOYANCE_NONE:
- severity = ash::UpdateObserver::UPDATE_NORMAL;
- break;
- }
- GetSystemTrayNotifier()->NotifyUpdateRecommended(severity);
+ ash::UpdateInfo info;
+ GetUpdateInfo(content::Source<UpgradeDetector>(source).ptr(), &info);
+ GetSystemTrayNotifier()->NotifyUpdateRecommended(info);
} else {
NOTREACHED();
}

Powered by Google App Engine
This is Rietveld 408576698