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

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

Issue 811033002: Add device policy to disallow shutdown - ash UI modifications (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Rebase Created 5 years, 11 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_chromeos.cc
diff --git a/chrome/browser/ui/ash/system_tray_delegate_chromeos.cc b/chrome/browser/ui/ash/system_tray_delegate_chromeos.cc
index d21ca4cb7458845c32b69aca5d0b41d08896c5db..e950cead8c82fa834adbc686af461f0aaba7fffd 100644
--- a/chrome/browser/ui/ash/system_tray_delegate_chromeos.cc
+++ b/chrome/browser/ui/ash/system_tray_delegate_chromeos.cc
@@ -19,6 +19,7 @@
#include "ash/shell_window_ids.h"
#include "ash/system/bluetooth/bluetooth_observer.h"
#include "ash/system/chromeos/session/logout_button_observer.h"
+#include "ash/system/chromeos/shutdown_policy_observer.h"
#include "ash/system/date/clock_observer.h"
#include "ash/system/ime/ime_observer.h"
#include "ash/system/tray/system_tray.h"
@@ -232,6 +233,8 @@ SystemTrayDelegateChromeOS::SystemTrayDelegateChromeOS()
base::Unretained(this)));
user_manager::UserManager::Get()->AddSessionStateObserver(this);
+ shutdown_policy_handler_.reset(
+ new ShutdownPolicyHandler(CrosSettings::Get(), this));
}
void SystemTrayDelegateChromeOS::Initialize() {
@@ -837,6 +840,21 @@ void SystemTrayDelegateChromeOS::RemoveCustodianInfoTrayObserver(
custodian_info_changed_observers_.RemoveObserver(observer);
}
+void SystemTrayDelegateChromeOS::AddShutdownPolicyObserver(
+ ash::ShutdownPolicyObserver* observer) {
+ shutdown_policy_observers_.AddObserver(observer);
+}
+
+void SystemTrayDelegateChromeOS::RemoveShutdownPolicyObserver(
+ ash::ShutdownPolicyObserver* observer) {
+ shutdown_policy_observers_.RemoveObserver(observer);
+}
+
+void SystemTrayDelegateChromeOS::ShouldRebootOnShutdown(
+ const ash::RebootOnShutdownCallback& callback) {
+ shutdown_policy_handler_->CheckIfRebootOnShutdown(callback);
+}
+
void SystemTrayDelegateChromeOS::UserAddedToSession(
const user_manager::User* active_user) {
}
@@ -1322,6 +1340,13 @@ void SystemTrayDelegateChromeOS::OnAccessibilityStatusChanged(
OnAccessibilityModeChanged(details.notify);
}
+void SystemTrayDelegateChromeOS::OnShutdownPolicyChanged(
+ bool reboot_on_shutdown) {
+ // Notify all observers.
+ FOR_EACH_OBSERVER(ash::ShutdownPolicyObserver, shutdown_policy_observers_,
+ OnShutdownPolicyChanged(reboot_on_shutdown));
+}
+
const base::string16
SystemTrayDelegateChromeOS::GetLegacySupervisedUserMessage() const {
std::string user_manager_name = GetSupervisedUserManager();
« no previous file with comments | « chrome/browser/ui/ash/system_tray_delegate_chromeos.h ('k') | chrome/browser/ui/ash/system_tray_delegate_common.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698