Upstream version 7.36.149.0
[platform/framework/web/crosswalk.git] / src / ash / system / chromeos / system_clock_observer.cc
index c5ab20c..5ed6330 100644 (file)
@@ -9,12 +9,13 @@
 #include "chromeos/dbus/dbus_thread_manager.h"
 
 namespace ash {
-namespace internal {
 
 SystemClockObserver::SystemClockObserver() {
   chromeos::DBusThreadManager::Get()->GetSystemClockClient()
       ->AddObserver(this);
   chromeos::system::TimezoneSettings::GetInstance()->AddObserver(this);
+  can_set_time_ =
+      chromeos::DBusThreadManager::Get()->GetSystemClockClient()->CanSetTime();
 }
 
 SystemClockObserver::~SystemClockObserver() {
@@ -24,13 +25,17 @@ SystemClockObserver::~SystemClockObserver() {
 }
 
 void SystemClockObserver::SystemClockUpdated() {
+  Shell::GetInstance()->system_tray_notifier()->NotifySystemClockTimeUpdated();
+}
+
+void SystemClockObserver::SystemClockCanSetTimeChanged(bool can_set_time) {
+  can_set_time_ = can_set_time;
   Shell::GetInstance()->system_tray_notifier()
-      ->NotifySystemClockTimeUpdated();
+      ->NotifySystemClockCanSetTimeChanged(can_set_time_);
 }
 
 void SystemClockObserver::TimezoneChanged(const icu::TimeZone& timezone) {
   Shell::GetInstance()->system_tray_notifier()->NotifyRefreshClock();
 }
 
-}  // namespace internal
 }  // namespace ash