Update To 11.40.268.0
[platform/framework/web/crosswalk.git] / src / ash / system / chromeos / settings / tray_settings.cc
index bb27a17..8b4c6c9 100644 (file)
@@ -4,6 +4,7 @@
 
 #include "ash/system/chromeos/settings/tray_settings.h"
 
+#include "ash/session/session_state_delegate.h"
 #include "ash/shell.h"
 #include "ash/system/chromeos/power/power_status.h"
 #include "ash/system/chromeos/power/power_status_view.h"
@@ -40,8 +41,12 @@ class SettingsDefaultView : public ActionableView,
         ash::kTrayPopupPaddingBetweenItems));
 
     bool power_view_right_align = false;
+    bool userAddingRunning = ash::Shell::GetInstance()
+                                 ->session_state_delegate()
+                                 ->IsInSecondaryLoginScreen();
+
     if (login_status_ != user::LOGGED_IN_NONE &&
-        login_status_ != user::LOGGED_IN_LOCKED) {
+        login_status_ != user::LOGGED_IN_LOCKED && !userAddingRunning) {
       ui::ResourceBundle& rb = ui::ResourceBundle::GetSharedInstance();
       views::ImageView* icon =
           new ash::FixedSizedImageView(0, ash::kTrayPopupItemHeight);
@@ -71,9 +76,13 @@ class SettingsDefaultView : public ActionableView,
   }
 
   // Overridden from ash::ActionableView.
-  virtual bool PerformAction(const ui::Event& event) OVERRIDE {
+  virtual bool PerformAction(const ui::Event& event) override {
+    bool userAddingRunning = ash::Shell::GetInstance()
+                                 ->session_state_delegate()
+                                 ->IsInSecondaryLoginScreen();
+
     if (login_status_ == user::LOGGED_IN_NONE ||
-        login_status_ == user::LOGGED_IN_LOCKED)
+        login_status_ == user::LOGGED_IN_LOCKED || userAddingRunning)
       return false;
 
     ash::Shell::GetInstance()->system_tray_delegate()->ShowSettings();
@@ -81,7 +90,7 @@ class SettingsDefaultView : public ActionableView,
   }
 
   // Overridden from views::View.
-  virtual void Layout() OVERRIDE {
+  virtual void Layout() override {
     views::View::Layout();
 
     if (label_ && power_status_view_) {
@@ -96,20 +105,20 @@ class SettingsDefaultView : public ActionableView,
   }
 
   // Overridden from views::View.
-  virtual void ChildPreferredSizeChanged(views::View* child) OVERRIDE {
+  virtual void ChildPreferredSizeChanged(views::View* child) override {
     views::View::ChildPreferredSizeChanged(child);
     Layout();
   }
 
   // Overridden from PowerStatus::Observer.
-  virtual void OnPowerStatusChanged() OVERRIDE {
+  virtual void OnPowerStatusChanged() override {
     if (!PowerStatus::Get()->IsBatteryPresent())
       return;
 
     base::string16 accessible_name = label_ ?
         label_->text() + base::ASCIIToUTF16(", ") +
-            PowerStatus::Get()->GetAccessibleNameString() :
-        PowerStatus::Get()->GetAccessibleNameString();
+            PowerStatus::Get()->GetAccessibleNameString(true) :
+        PowerStatus::Get()->GetAccessibleNameString(true);
     SetAccessibleName(accessible_name);
   }