Upstream version 9.37.197.0
[platform/framework/web/crosswalk.git] / src / chrome / browser / chromeos / login / managed / locally_managed_user_creation_screen.h
index 4b31f34..034325e 100644 (file)
@@ -9,10 +9,12 @@
 
 #include "base/basictypes.h"
 #include "base/compiler_specific.h"
+#include "chrome/browser/chromeos/camera_presence_notifier.h"
 #include "chrome/browser/chromeos/login/managed/managed_user_creation_controller.h"
 #include "chrome/browser/chromeos/login/screens/wizard_screen.h"
 #include "chrome/browser/chromeos/net/network_portal_detector.h"
 #include "chrome/browser/image_decoder.h"
+#include "chrome/browser/supervised_user/supervised_user_sync_service.h"
 #include "chrome/browser/ui/webui/chromeos/login/locally_managed_user_creation_screen_handler.h"
 #include "ui/gfx/image/image_skia.h"
 
@@ -27,8 +29,10 @@ class LocallyManagedUserCreationScreen
     : public WizardScreen,
       public LocallyManagedUserCreationScreenHandler::Delegate,
       public ManagedUserCreationController::StatusConsumer,
+      public SupervisedUserSyncServiceObserver,
       public ImageDecoder::Delegate,
-      public NetworkPortalDetector::Observer {
+      public NetworkPortalDetector::Observer,
+      public CameraPresenceNotifier::Observer {
  public:
   LocallyManagedUserCreationScreen(
       ScreenObserver* observer,
@@ -58,6 +62,15 @@ class LocallyManagedUserCreationScreen
   // manager is selected.
   void ShowInitialScreen();
 
+  // CameraPresenceNotifier::Observer implementation:
+  virtual void OnCameraPresenceCheckDone(bool is_camera_present) OVERRIDE;
+
+  // SupervisedUserSyncServiceObserver implementation
+  virtual void OnSupervisedUserAcknowledged(
+      const std::string& supervised_user_id) OVERRIDE {}
+  virtual void OnSupervisedUsersSyncingStopped() OVERRIDE {}
+  virtual void OnSupervisedUsersChanged() OVERRIDE;
+
   // WizardScreen implementation:
   virtual void PrepareToShow() OVERRIDE;
   virtual void Show() OVERRIDE;
@@ -99,7 +112,6 @@ class LocallyManagedUserCreationScreen
   // It should be removed by issue 251179.
 
   // LocallyManagedUserCreationScreenHandler::Delegate (image) implementation:
-  virtual void OnCameraPresenceCheckDone(bool is_camera_present) OVERRIDE;
   virtual void OnPhotoTaken(const std::string& raw_data) OVERRIDE;
   virtual void OnImageSelected(const std::string& image_url,
                                const std::string& image_type) OVERRIDE;
@@ -122,6 +134,8 @@ class LocallyManagedUserCreationScreen
   bool on_error_screen_;
   std::string last_page_;
 
+  SupervisedUserSyncService* sync_service_;
+
   gfx::ImageSkia user_photo_;
   scoped_refptr<ImageDecoder> image_decoder_;
   bool apply_photo_after_decoding_;