Update To 11.40.268.0
[platform/framework/web/crosswalk.git] / src / athena / system / system_ui_impl.cc
index 7b3b525..aa65e5e 100644 (file)
@@ -7,7 +7,7 @@
 #include "athena/screen/public/screen_manager.h"
 #include "athena/system/background_controller.h"
 #include "athena/system/orientation_controller.h"
-#include "athena/system/power_button_controller.h"
+#include "athena/system/shutdown_dialog.h"
 #include "athena/system/status_icon_container_view.h"
 #include "athena/system/time_view.h"
 #include "athena/util/container_priorities.h"
 namespace athena {
 namespace {
 
-SystemUI* instance = NULL;
+SystemUI* instance = nullptr;
 
 // View which positions the TimeView on the left and the StatusIconView on the
 // right.
 class SystemInfoView : public views::View {
  public:
-  SystemInfoView(SystemUI::ColorScheme color_scheme,
-                 aura::Window* system_modal_container)
+  SystemInfoView(SystemUI::ColorScheme color_scheme)
       : time_view_(new TimeView(color_scheme)),
-        status_icon_view_(
-            new StatusIconContainerView(color_scheme, system_modal_container)) {
+        status_icon_view_(new StatusIconContainerView(color_scheme)) {
     AddChildView(time_view_);
     AddChildView(status_icon_view_);
   }
 
-  virtual ~SystemInfoView() {
-  }
+  ~SystemInfoView() override {}
 
   // views::View:
-  virtual gfx::Size GetPreferredSize() const OVERRIDE {
+  virtual gfx::Size GetPreferredSize() const override {
     // The view should be as wide as its parent view.
     return gfx::Size(0,
                      std::max(time_view_->GetPreferredSize().height(),
                               status_icon_view_->GetPreferredSize().height()));
   }
 
-  virtual void Layout() OVERRIDE {
+  virtual void Layout() override {
     time_view_->SetBoundsRect(gfx::Rect(time_view_->GetPreferredSize()));
     gfx::Size status_icon_preferred_size =
         status_icon_view_->GetPreferredSize();
@@ -58,7 +55,7 @@ class SystemInfoView : public views::View {
                   status_icon_preferred_size.height()));
   }
 
-  virtual void ChildPreferredSizeChanged(views::View* child) OVERRIDE {
+  virtual void ChildPreferredSizeChanged(views::View* child) override {
     // Relayout to take into account changes in |status_icon_view_|'s width.
     // Assume that |time_view_|'s and |status_icon_view_|'s preferred height
     // does not change.
@@ -76,12 +73,11 @@ class SystemUIImpl : public SystemUI {
  public:
   SystemUIImpl(scoped_refptr<base::TaskRunner> blocking_task_runner)
       : orientation_controller_(new OrientationController()),
-        background_container_(NULL),
-        system_modal_container_(NULL) {
+        background_container_(nullptr) {
     orientation_controller_->InitWith(blocking_task_runner);
   }
 
-  virtual ~SystemUIImpl() {
+  ~SystemUIImpl() override {
     // Stops file watching now if exists. Waiting until message loop shutdon
     // leads to FilePathWatcher crash.
     orientation_controller_->Shutdown();
@@ -93,36 +89,24 @@ class SystemUIImpl : public SystemUI {
         ScreenManager::ContainerParams("AthenaBackground", CP_BACKGROUND));
     background_container_->SetLayoutManager(
         new FillLayoutManager(background_container_));
-    ScreenManager::ContainerParams system_modal_params(
-        "AthenaSystemModalContainer", CP_SYSTEM_MODAL);
-    system_modal_params.can_activate_children = true;
-    system_modal_container_ =
-        screen_manager->CreateContainer(system_modal_params);
-    login_screen_system_modal_container_ = screen_manager->CreateContainer(
-        ScreenManager::ContainerParams("AthenaLoginScreenSystemModalContainer",
-                                       CP_LOGIN_SCREEN_SYSTEM_MODAL));
-
-    // Use |login_screen_system_modal_container_| for the power button's dialog
-    // because it needs to show over the login screen.
-    // TODO(pkotwicz): Pick the most appropriate container based on whether the
-    // user has logged in.
-    power_button_controller_.reset(
-        new PowerButtonController(login_screen_system_modal_container_));
+
+    shutdown_dialog_.reset(new ShutdownDialog());
     background_controller_.reset(
         new BackgroundController(background_container_));
   }
 
-  virtual void SetBackgroundImage(const gfx::ImageSkia& image) OVERRIDE {
+ private:
+  // SystemUI:
+  virtual void SetBackgroundImage(const gfx::ImageSkia& image) override {
     background_controller_->SetImage(image);
   }
 
-  virtual views::View* CreateSystemInfoView(ColorScheme color_scheme) OVERRIDE {
-    return new SystemInfoView(color_scheme, system_modal_container_);
+  virtual views::View* CreateSystemInfoView(ColorScheme color_scheme) override {
+    return new SystemInfoView(color_scheme);
   }
 
- private:
   scoped_ptr<OrientationController> orientation_controller_;
-  scoped_ptr<PowerButtonController> power_button_controller_;
+  scoped_ptr<ShutdownDialog> shutdown_dialog_;
   scoped_ptr<BackgroundController> background_controller_;
 
   // The parent container for the background.
@@ -159,7 +143,7 @@ SystemUI* SystemUI::Get() {
 void SystemUI::Shutdown() {
   CHECK(instance);
   delete instance;
-  instance = NULL;
+  instance = nullptr;
 }
 
 }  // namespace athena