X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=src%2Fchrome%2Fbrowser%2Fui%2Fwebui%2Fchromeos%2Flogin%2Foobe_ui.cc;h=c6fd45bac9b8fca4d7275929daa5248215979c17;hb=4a1a0bdd01eef90b0826a0e761d3379d3715c10f;hp=8d55960ac76c5f6234cf1089cd974d047d7fd5a4;hpb=b1be5ca53587d23e7aeb77b26861fdc0a181ffd8;p=platform%2Fframework%2Fweb%2Fcrosswalk.git diff --git a/src/chrome/browser/ui/webui/chromeos/login/oobe_ui.cc b/src/chrome/browser/ui/webui/chromeos/login/oobe_ui.cc index 8d55960..c6fd45b 100644 --- a/src/chrome/browser/ui/webui/chromeos/login/oobe_ui.cc +++ b/src/chrome/browser/ui/webui/chromeos/login/oobe_ui.cc @@ -4,40 +4,38 @@ #include "chrome/browser/ui/webui/chromeos/login/oobe_ui.h" -#include "ash/ash_switches.h" #include "base/command_line.h" #include "base/logging.h" -#include "base/memory/ref_counted_memory.h" #include "base/values.h" -#include "chrome/browser/browser_about_handler.h" -#include "chrome/browser/chrome_notification_types.h" +#include "chrome/browser/browser_process.h" +#include "chrome/browser/browser_process_platform_part.h" #include "chrome/browser/chromeos/kiosk_mode/kiosk_mode_settings.h" #include "chrome/browser/chromeos/login/enrollment/auto_enrollment_check_screen_actor.h" #include "chrome/browser/chromeos/login/enrollment/enrollment_screen_actor.h" -#include "chrome/browser/chromeos/login/lock/screen_locker.h" -#include "chrome/browser/chromeos/login/ui/login_display_host_impl.h" -#include "chrome/browser/chromeos/login/users/user_manager.h" -#include "chrome/browser/chromeos/login/wizard_controller.h" +#include "chrome/browser/chromeos/policy/browser_policy_connector_chromeos.h" +#include "chrome/browser/chromeos/policy/consumer_management_service.h" #include "chrome/browser/chromeos/system/input_device_settings.h" #include "chrome/browser/profiles/profile.h" #include "chrome/browser/ui/webui/about_ui.h" #include "chrome/browser/ui/webui/chromeos/login/app_launch_splash_screen_handler.h" #include "chrome/browser/ui/webui/chromeos/login/auto_enrollment_check_screen_handler.h" #include "chrome/browser/ui/webui/chromeos/login/base_screen_handler.h" +#include "chrome/browser/ui/webui/chromeos/login/controller_pairing_screen_handler.h" #include "chrome/browser/ui/webui/chromeos/login/enrollment_screen_handler.h" #include "chrome/browser/ui/webui/chromeos/login/error_screen_handler.h" #include "chrome/browser/ui/webui/chromeos/login/eula_screen_handler.h" #include "chrome/browser/ui/webui/chromeos/login/gaia_screen_handler.h" #include "chrome/browser/ui/webui/chromeos/login/hid_detection_screen_handler.h" +#include "chrome/browser/ui/webui/chromeos/login/host_pairing_screen_handler.h" #include "chrome/browser/ui/webui/chromeos/login/kiosk_app_menu_handler.h" #include "chrome/browser/ui/webui/chromeos/login/kiosk_autolaunch_screen_handler.h" #include "chrome/browser/ui/webui/chromeos/login/kiosk_enable_screen_handler.h" -#include "chrome/browser/ui/webui/chromeos/login/locally_managed_user_creation_screen_handler.h" #include "chrome/browser/ui/webui/chromeos/login/network_dropdown_handler.h" #include "chrome/browser/ui/webui/chromeos/login/network_screen_handler.h" #include "chrome/browser/ui/webui/chromeos/login/network_state_informer.h" #include "chrome/browser/ui/webui/chromeos/login/reset_screen_handler.h" #include "chrome/browser/ui/webui/chromeos/login/signin_screen_handler.h" +#include "chrome/browser/ui/webui/chromeos/login/supervised_user_creation_screen_handler.h" #include "chrome/browser/ui/webui/chromeos/login/terms_of_service_screen_handler.h" #include "chrome/browser/ui/webui/chromeos/login/update_screen_handler.h" #include "chrome/browser/ui/webui/chromeos/login/user_image_screen_handler.h" @@ -46,7 +44,6 @@ #include "chrome/browser/ui/webui/theme_source.h" #include "chrome/common/chrome_constants.h" #include "chrome/common/url_constants.h" -#include "chromeos/chromeos_constants.h" #include "chromeos/chromeos_switches.h" #include "content/public/browser/web_ui.h" #include "content/public/browser/web_ui_data_source.h" @@ -134,29 +131,30 @@ const char OobeUI::kAppLaunchSplashDisplay[] = "app-launch-splash"; // static const char OobeUI::kScreenOobeHIDDetection[] = "hid-detection"; -const char OobeUI::kScreenOobeNetwork[] = "connect"; -const char OobeUI::kScreenOobeEula[] = "eula"; -const char OobeUI::kScreenOobeUpdate[] = "update"; -const char OobeUI::kScreenOobeEnrollment[] = "oauth-enrollment"; -const char OobeUI::kScreenOobeReset[] = "reset"; -const char OobeUI::kScreenGaiaSignin[] = "gaia-signin"; -const char OobeUI::kScreenAccountPicker[] = "account-picker"; -const char OobeUI::kScreenKioskAutolaunch[] = "autolaunch"; -const char OobeUI::kScreenKioskEnable[] = "kiosk-enable"; -const char OobeUI::kScreenErrorMessage[] = "error-message"; -const char OobeUI::kScreenUserImagePicker[] = "user-image"; -const char OobeUI::kScreenTpmError[] = "tpm-error-message"; -const char OobeUI::kScreenPasswordChanged[] = "password-changed"; -const char OobeUI::kScreenManagedUserCreationFlow[] - = "managed-user-creation"; -const char OobeUI::kScreenTermsOfService[] = "terms-of-service"; -const char OobeUI::kScreenWrongHWID[] = "wrong-hwid"; -const char OobeUI::kScreenAutoEnrollmentCheck[] - = "auto-enrollment-check"; -const char OobeUI::kScreenHIDDetection[] = "hid-detection"; -const char OobeUI::kScreenAppLaunchSplash[] = "app-launch-splash"; -const char OobeUI::kScreenConfirmPassword[] = "confirm-password"; -const char OobeUI::kScreenFatalError[] = "fatal-error"; +const char OobeUI::kScreenOobeNetwork[] = "connect"; +const char OobeUI::kScreenOobeEula[] = "eula"; +const char OobeUI::kScreenOobeUpdate[] = "update"; +const char OobeUI::kScreenOobeEnrollment[] = "oauth-enrollment"; +const char OobeUI::kScreenOobeReset[] = "reset"; +const char OobeUI::kScreenGaiaSignin[] = "gaia-signin"; +const char OobeUI::kScreenAccountPicker[] = "account-picker"; +const char OobeUI::kScreenKioskAutolaunch[] = "autolaunch"; +const char OobeUI::kScreenKioskEnable[] = "kiosk-enable"; +const char OobeUI::kScreenErrorMessage[] = "error-message"; +const char OobeUI::kScreenUserImagePicker[] = "user-image"; +const char OobeUI::kScreenTpmError[] = "tpm-error-message"; +const char OobeUI::kScreenPasswordChanged[] = "password-changed"; +const char OobeUI::kScreenSupervisedUserCreationFlow[] = + "supervised-user-creation"; +const char OobeUI::kScreenTermsOfService[] = "terms-of-service"; +const char OobeUI::kScreenWrongHWID[] = "wrong-hwid"; +const char OobeUI::kScreenAutoEnrollmentCheck[] = "auto-enrollment-check"; +const char OobeUI::kScreenHIDDetection[] = "hid-detection"; +const char OobeUI::kScreenAppLaunchSplash[] = "app-launch-splash"; +const char OobeUI::kScreenConfirmPassword[] = "confirm-password"; +const char OobeUI::kScreenFatalError[] = "fatal-error"; +const char OobeUI::kScreenControllerPairing[] = "controller-pairing"; +const char OobeUI::kScreenHostPairing[] = "host-pairing"; OobeUI::OobeUI(content::WebUI* web_ui, const GURL& url) : WebUIController(web_ui), @@ -171,7 +169,7 @@ OobeUI::OobeUI(content::WebUI* web_ui, const GURL& url) kiosk_enable_screen_actor_(NULL), wrong_hwid_screen_actor_(NULL), auto_enrollment_check_screen_actor_(NULL), - locally_managed_user_creation_screen_actor_(NULL), + supervised_user_creation_screen_actor_(NULL), error_screen_handler_(NULL), signin_screen_handler_(NULL), terms_of_service_screen_actor_(NULL), @@ -222,12 +220,11 @@ OobeUI::OobeUI(content::WebUI* web_ui, const GURL& url) kiosk_enable_screen_actor_ = kiosk_enable_screen_handler; AddScreenHandler(kiosk_enable_screen_handler); - LocallyManagedUserCreationScreenHandler* - locally_managed_user_creation_screen_handler = - new LocallyManagedUserCreationScreenHandler(); - locally_managed_user_creation_screen_actor_ = - locally_managed_user_creation_screen_handler; - AddScreenHandler(locally_managed_user_creation_screen_handler); + SupervisedUserCreationScreenHandler* supervised_user_creation_screen_handler = + new SupervisedUserCreationScreenHandler(); + supervised_user_creation_screen_actor_ = + supervised_user_creation_screen_handler; + AddScreenHandler(supervised_user_creation_screen_handler); WrongHWIDScreenHandler* wrong_hwid_screen_handler = new WrongHWIDScreenHandler(); @@ -244,13 +241,17 @@ OobeUI::OobeUI(content::WebUI* web_ui, const GURL& url) hid_detection_screen_actor_ = hid_detection_screen_handler; AddScreenHandler(hid_detection_screen_handler); + error_screen_handler_ = new ErrorScreenHandler(network_state_informer_); + AddScreenHandler(error_screen_handler_); + EnrollmentScreenHandler* enrollment_screen_handler = - new EnrollmentScreenHandler(); + new EnrollmentScreenHandler(network_state_informer_, + error_screen_handler_); enrollment_screen_actor_ = enrollment_screen_handler; AddScreenHandler(enrollment_screen_handler); TermsOfServiceScreenHandler* terms_of_service_screen_handler = - new TermsOfServiceScreenHandler; + new TermsOfServiceScreenHandler(core_handler_); terms_of_service_screen_actor_ = terms_of_service_screen_handler; AddScreenHandler(terms_of_service_screen_handler); @@ -259,10 +260,11 @@ OobeUI::OobeUI(content::WebUI* web_ui, const GURL& url) user_image_screen_actor_ = user_image_screen_handler; AddScreenHandler(user_image_screen_handler); - error_screen_handler_ = new ErrorScreenHandler(network_state_informer_); - AddScreenHandler(error_screen_handler_); - - gaia_screen_handler_ = new GaiaScreenHandler(network_state_informer_); + policy::ConsumerManagementService* consumer_management = + g_browser_process->platform_part()->browser_policy_connector_chromeos()-> + GetConsumerManagementService(); + gaia_screen_handler_ = + new GaiaScreenHandler(network_state_informer_, consumer_management); AddScreenHandler(gaia_screen_handler_); signin_screen_handler_ = new SigninScreenHandler(network_state_informer_, @@ -277,6 +279,19 @@ OobeUI::OobeUI(content::WebUI* web_ui, const GURL& url) AddScreenHandler(app_launch_splash_screen_handler); app_launch_splash_screen_actor_ = app_launch_splash_screen_handler; + if (display_type_ == kOobeDisplay) { + ControllerPairingScreenHandler* handler = + new ControllerPairingScreenHandler(); + controller_pairing_screen_actor_ = handler; + AddScreenHandler(handler); + } + + if (display_type_ == kOobeDisplay) { + HostPairingScreenHandler* handler = new HostPairingScreenHandler(); + host_pairing_screen_actor_ = handler; + AddScreenHandler(handler); + } + // Initialize KioskAppMenuHandler. Note that it is NOT a screen handler. kiosk_app_menu_handler_ = new KioskAppMenuHandler(network_state_informer_); web_ui->AddMessageHandler(kiosk_app_menu_handler_); @@ -310,14 +325,6 @@ OobeUI::~OobeUI() { network_dropdown_handler_->RemoveObserver(update_screen_handler_); } -void OobeUI::ShowScreen(WizardScreen* screen) { - screen->Show(); -} - -void OobeUI::HideScreen(WizardScreen* screen) { - screen->Hide(); -} - CoreOobeActor* OobeUI::GetCoreOobeActor() { return core_handler_; } @@ -366,6 +373,14 @@ HIDDetectionScreenActor* OobeUI::GetHIDDetectionScreenActor() { return hid_detection_screen_actor_; } +ControllerPairingScreenActor* OobeUI::GetControllerPairingScreenActor() { + return controller_pairing_screen_actor_; +} + +HostPairingScreenActor* OobeUI::GetHostPairingScreenActor() { + return host_pairing_screen_actor_; +} + UserImageScreenActor* OobeUI::GetUserImageScreenActor() { return user_image_screen_actor_; } @@ -374,9 +389,9 @@ ErrorScreenActor* OobeUI::GetErrorScreenActor() { return error_screen_handler_; } -LocallyManagedUserCreationScreenHandler* - OobeUI::GetLocallyManagedUserCreationScreenActor() { - return locally_managed_user_creation_screen_actor_; +SupervisedUserCreationScreenHandler* + OobeUI::GetSupervisedUserCreationScreenActor() { + return supervised_user_creation_screen_actor_; } AppLaunchSplashScreenActor* @@ -431,14 +446,16 @@ void OobeUI::InitializeScreenMaps() { screen_names_[SCREEN_USER_IMAGE_PICKER] = kScreenUserImagePicker; screen_names_[SCREEN_TPM_ERROR] = kScreenTpmError; screen_names_[SCREEN_PASSWORD_CHANGED] = kScreenPasswordChanged; - screen_names_[SCREEN_CREATE_MANAGED_USER_FLOW] = - kScreenManagedUserCreationFlow; + screen_names_[SCREEN_CREATE_SUPERVISED_USER_FLOW] = + kScreenSupervisedUserCreationFlow; screen_names_[SCREEN_TERMS_OF_SERVICE] = kScreenTermsOfService; screen_names_[SCREEN_WRONG_HWID] = kScreenWrongHWID; screen_names_[SCREEN_AUTO_ENROLLMENT_CHECK] = kScreenAutoEnrollmentCheck; screen_names_[SCREEN_APP_LAUNCH_SPLASH] = kScreenAppLaunchSplash; screen_names_[SCREEN_CONFIRM_PASSWORD] = kScreenConfirmPassword; screen_names_[SCREEN_FATAL_ERROR] = kScreenFatalError; + screen_names_[SCREEN_OOBE_CONTROLLER_PAIRING] = kScreenControllerPairing; + screen_names_[SCREEN_OOBE_HOST_PAIRING] = kScreenHostPairing; screen_ids_.clear(); for (size_t i = 0; i < screen_names_.size(); ++i) @@ -518,16 +535,13 @@ const std::string& OobeUI::GetScreenName(Screen screen) const { void OobeUI::OnCurrentScreenChanged(const std::string& screen) { previous_screen_ = current_screen_; - if (screen_ids_.count(screen)) { - Screen new_screen = screen_ids_[screen]; - FOR_EACH_OBSERVER(Observer, - observer_list_, - OnCurrentScreenChanged(current_screen_, new_screen)); - current_screen_ = new_screen; - } else { - NOTREACHED() << "Screen should be registered in InitializeScreenMaps()"; - current_screen_ = SCREEN_UNKNOWN; - } + DCHECK(screen_ids_.count(screen)) + << "Screen should be registered in InitializeScreenMaps()"; + Screen new_screen = screen_ids_[screen]; + FOR_EACH_OBSERVER(Observer, + observer_list_, + OnCurrentScreenChanged(current_screen_, new_screen)); + current_screen_ = new_screen; } } // namespace chromeos