| Index: chrome/browser/chromeos/login/wizard_controller.cc
|
| diff --git a/chrome/browser/chromeos/login/wizard_controller.cc b/chrome/browser/chromeos/login/wizard_controller.cc
|
| index 17a9b9e14aeaec5817b8495d91c6631dfcca7e02..e8da5c9e97c1c303b41f6d951112f41b3d44ac63 100644
|
| --- a/chrome/browser/chromeos/login/wizard_controller.cc
|
| +++ b/chrome/browser/chromeos/login/wizard_controller.cc
|
| @@ -429,10 +429,7 @@ BaseScreen* WizardController::CreateScreen(OobeScreen screen) {
|
|
|
| void WizardController::ShowNetworkScreen() {
|
| VLOG(1) << "Showing network screen.";
|
| - // Hide the status area initially; it only appears after OOBE first animates
|
| - // in. Keep it visible if the user goes back to the existing network screen.
|
| - SetStatusAreaVisible(
|
| - screen_manager_->HasScreen(OobeScreen::SCREEN_OOBE_NETWORK));
|
| + UpdateStatusAreaVisibilityForScreen(OobeScreen::SCREEN_OOBE_NETWORK);
|
| SetCurrentScreen(GetScreen(OobeScreen::SCREEN_OOBE_NETWORK));
|
|
|
| // There are two possible screens where we listen to the incoming Bluetooth
|
| @@ -457,7 +454,7 @@ void WizardController::ShowLoginScreen(const LoginScreenContext& context) {
|
| UMA_HISTOGRAM_MEDIUM_TIMES("OOBE.EULAToSignInTime", delta);
|
| }
|
| VLOG(1) << "Showing login screen.";
|
| - SetStatusAreaVisible(true);
|
| + UpdateStatusAreaVisibilityForScreen(OobeScreen::SCREEN_SPECIAL_LOGIN);
|
| host_->StartSignInScreen(context);
|
| smooth_show_timer_.Stop();
|
| login_screen_started_ = true;
|
| @@ -465,7 +462,7 @@ void WizardController::ShowLoginScreen(const LoginScreenContext& context) {
|
|
|
| void WizardController::ShowUpdateScreen() {
|
| VLOG(1) << "Showing update screen.";
|
| - SetStatusAreaVisible(true);
|
| + UpdateStatusAreaVisibilityForScreen(OobeScreen::SCREEN_OOBE_UPDATE);
|
| SetCurrentScreen(GetScreen(OobeScreen::SCREEN_OOBE_UPDATE));
|
| }
|
|
|
| @@ -486,14 +483,14 @@ void WizardController::ShowUserImageScreen() {
|
| // Status area has been already shown at sign in screen so it
|
| // doesn't make sense to hide it here and then show again at user session as
|
| // this produces undesired UX transitions.
|
| - SetStatusAreaVisible(true);
|
| + UpdateStatusAreaVisibilityForScreen(OobeScreen::SCREEN_USER_IMAGE_PICKER);
|
|
|
| SetCurrentScreen(GetScreen(OobeScreen::SCREEN_USER_IMAGE_PICKER));
|
| }
|
|
|
| void WizardController::ShowEulaScreen() {
|
| VLOG(1) << "Showing EULA screen.";
|
| - SetStatusAreaVisible(true);
|
| + UpdateStatusAreaVisibilityForScreen(OobeScreen::SCREEN_OOBE_EULA);
|
| SetCurrentScreen(GetScreen(OobeScreen::SCREEN_OOBE_EULA));
|
| }
|
|
|
| @@ -507,25 +504,25 @@ void WizardController::ShowEnrollmentScreen() {
|
|
|
| void WizardController::ShowResetScreen() {
|
| VLOG(1) << "Showing reset screen.";
|
| - SetStatusAreaVisible(false);
|
| + UpdateStatusAreaVisibilityForScreen(OobeScreen::SCREEN_OOBE_RESET);
|
| SetCurrentScreen(GetScreen(OobeScreen::SCREEN_OOBE_RESET));
|
| }
|
|
|
| void WizardController::ShowKioskEnableScreen() {
|
| VLOG(1) << "Showing kiosk enable screen.";
|
| - SetStatusAreaVisible(false);
|
| + UpdateStatusAreaVisibilityForScreen(OobeScreen::SCREEN_KIOSK_ENABLE);
|
| SetCurrentScreen(GetScreen(OobeScreen::SCREEN_KIOSK_ENABLE));
|
| }
|
|
|
| void WizardController::ShowKioskAutolaunchScreen() {
|
| VLOG(1) << "Showing kiosk autolaunch screen.";
|
| - SetStatusAreaVisible(false);
|
| + UpdateStatusAreaVisibilityForScreen(OobeScreen::SCREEN_KIOSK_AUTOLAUNCH);
|
| SetCurrentScreen(GetScreen(OobeScreen::SCREEN_KIOSK_AUTOLAUNCH));
|
| }
|
|
|
| void WizardController::ShowEnableDebuggingScreen() {
|
| VLOG(1) << "Showing enable developer features screen.";
|
| - SetStatusAreaVisible(false);
|
| + UpdateStatusAreaVisibilityForScreen(OobeScreen::SCREEN_OOBE_ENABLE_DEBUGGING);
|
| SetCurrentScreen(GetScreen(OobeScreen::SCREEN_OOBE_ENABLE_DEBUGGING));
|
| }
|
|
|
| @@ -541,7 +538,7 @@ void WizardController::ShowTermsOfServiceScreen() {
|
| }
|
|
|
| VLOG(1) << "Showing Terms of Service screen.";
|
| - SetStatusAreaVisible(true);
|
| + UpdateStatusAreaVisibilityForScreen(OobeScreen::SCREEN_TERMS_OF_SERVICE);
|
| SetCurrentScreen(GetScreen(OobeScreen::SCREEN_TERMS_OF_SERVICE));
|
| }
|
|
|
| @@ -568,7 +565,8 @@ void WizardController::ShowArcTermsOfServiceScreen() {
|
|
|
| if (show_arc_terms) {
|
| VLOG(1) << "Showing ARC Terms of Service screen.";
|
| - SetStatusAreaVisible(true);
|
| + UpdateStatusAreaVisibilityForScreen(
|
| + OobeScreen::SCREEN_ARC_TERMS_OF_SERVICE);
|
| SetCurrentScreen(GetScreen(OobeScreen::SCREEN_ARC_TERMS_OF_SERVICE));
|
| } else {
|
| ShowUserImageScreen();
|
| @@ -577,13 +575,13 @@ void WizardController::ShowArcTermsOfServiceScreen() {
|
|
|
| void WizardController::ShowWrongHWIDScreen() {
|
| VLOG(1) << "Showing wrong HWID screen.";
|
| - SetStatusAreaVisible(false);
|
| + UpdateStatusAreaVisibilityForScreen(OobeScreen::SCREEN_WRONG_HWID);
|
| SetCurrentScreen(GetScreen(OobeScreen::SCREEN_WRONG_HWID));
|
| }
|
|
|
| void WizardController::ShowAutoEnrollmentCheckScreen() {
|
| VLOG(1) << "Showing Auto-enrollment check screen.";
|
| - SetStatusAreaVisible(true);
|
| + UpdateStatusAreaVisibilityForScreen(OobeScreen::SCREEN_AUTO_ENROLLMENT_CHECK);
|
| AutoEnrollmentCheckScreen* screen =
|
| AutoEnrollmentCheckScreen::Get(screen_manager());
|
| if (retry_auto_enrollment_check_)
|
| @@ -594,19 +592,20 @@ void WizardController::ShowAutoEnrollmentCheckScreen() {
|
|
|
| void WizardController::ShowSupervisedUserCreationScreen() {
|
| VLOG(1) << "Showing Locally managed user creation screen screen.";
|
| - SetStatusAreaVisible(true);
|
| + UpdateStatusAreaVisibilityForScreen(
|
| + OobeScreen::SCREEN_CREATE_SUPERVISED_USER_FLOW);
|
| SetCurrentScreen(GetScreen(OobeScreen::SCREEN_CREATE_SUPERVISED_USER_FLOW));
|
| }
|
|
|
| void WizardController::ShowArcKioskSplashScreen() {
|
| VLOG(1) << "Showing ARC kiosk splash screen.";
|
| - SetStatusAreaVisible(false);
|
| + UpdateStatusAreaVisibilityForScreen(OobeScreen::SCREEN_ARC_KIOSK_SPLASH);
|
| SetCurrentScreen(GetScreen(OobeScreen::SCREEN_ARC_KIOSK_SPLASH));
|
| }
|
|
|
| void WizardController::ShowHIDDetectionScreen() {
|
| VLOG(1) << "Showing HID discovery screen.";
|
| - SetStatusAreaVisible(true);
|
| + UpdateStatusAreaVisibilityForScreen(OobeScreen::SCREEN_OOBE_HID_DETECTION);
|
| SetCurrentScreen(GetScreen(OobeScreen::SCREEN_OOBE_HID_DETECTION));
|
| // In HID detection screen, puts the Bluetooth in discoverable mode and waits
|
| // for the incoming Bluetooth connection request. See the comments in
|
| @@ -616,25 +615,26 @@ void WizardController::ShowHIDDetectionScreen() {
|
|
|
| void WizardController::ShowControllerPairingScreen() {
|
| VLOG(1) << "Showing controller pairing screen.";
|
| - SetStatusAreaVisible(false);
|
| + UpdateStatusAreaVisibilityForScreen(
|
| + OobeScreen::SCREEN_OOBE_CONTROLLER_PAIRING);
|
| SetCurrentScreen(GetScreen(OobeScreen::SCREEN_OOBE_CONTROLLER_PAIRING));
|
| }
|
|
|
| void WizardController::ShowHostPairingScreen() {
|
| VLOG(1) << "Showing host pairing screen.";
|
| - SetStatusAreaVisible(false);
|
| + UpdateStatusAreaVisibilityForScreen(OobeScreen::SCREEN_OOBE_HOST_PAIRING);
|
| SetCurrentScreen(GetScreen(OobeScreen::SCREEN_OOBE_HOST_PAIRING));
|
| }
|
|
|
| void WizardController::ShowDeviceDisabledScreen() {
|
| VLOG(1) << "Showing device disabled screen.";
|
| - SetStatusAreaVisible(true);
|
| + UpdateStatusAreaVisibilityForScreen(OobeScreen::SCREEN_DEVICE_DISABLED);
|
| SetCurrentScreen(GetScreen(OobeScreen::SCREEN_DEVICE_DISABLED));
|
| }
|
|
|
| void WizardController::ShowEncryptionMigrationScreen() {
|
| VLOG(1) << "Showing encryption migration screen.";
|
| - SetStatusAreaVisible(true);
|
| + UpdateStatusAreaVisibilityForScreen(OobeScreen::SCREEN_ENCRYPTION_MIGRATION);
|
| SetCurrentScreen(GetScreen(OobeScreen::SCREEN_ENCRYPTION_MIGRATION));
|
| }
|
|
|
| @@ -971,6 +971,7 @@ void WizardController::ShowCurrentScreen() {
|
|
|
| smooth_show_timer_.Stop();
|
|
|
| + UpdateStatusAreaVisibilityForScreen(current_screen_->screen_id());
|
| current_screen_->Show();
|
| }
|
|
|
| @@ -1006,8 +1007,24 @@ void WizardController::SetCurrentScreenSmooth(BaseScreen* new_current,
|
| }
|
| }
|
|
|
| -void WizardController::SetStatusAreaVisible(bool visible) {
|
| - host_->SetStatusAreaVisible(visible);
|
| +void WizardController::UpdateStatusAreaVisibilityForScreen(OobeScreen screen) {
|
| + if (screen == OobeScreen::SCREEN_OOBE_NETWORK) {
|
| + // Hide the status area initially; it only appears after OOBE first animates
|
| + // in. Keep it visible if the user goes back to the existing network screen.
|
| + host_->SetStatusAreaVisible(
|
| + screen_manager_->HasScreen(OobeScreen::SCREEN_OOBE_NETWORK));
|
| + } else if (screen == OobeScreen::SCREEN_OOBE_RESET ||
|
| + screen == OobeScreen::SCREEN_KIOSK_ENABLE ||
|
| + screen == OobeScreen::SCREEN_KIOSK_AUTOLAUNCH ||
|
| + screen == OobeScreen::SCREEN_OOBE_ENABLE_DEBUGGING ||
|
| + screen == OobeScreen::SCREEN_WRONG_HWID ||
|
| + screen == OobeScreen::SCREEN_ARC_KIOSK_SPLASH ||
|
| + screen == OobeScreen::SCREEN_OOBE_CONTROLLER_PAIRING ||
|
| + screen == OobeScreen::SCREEN_OOBE_HOST_PAIRING) {
|
| + host_->SetStatusAreaVisible(false);
|
| + } else {
|
| + host_->SetStatusAreaVisible(true);
|
| + }
|
| }
|
|
|
| void WizardController::SetShowMdOobe(bool show) {
|
| @@ -1310,7 +1327,7 @@ void WizardController::AutoLaunchKioskApp() {
|
| // If the |cros_settings_| are permanently untrusted, show an error message
|
| // and refuse to auto-launch the kiosk app.
|
| GetErrorScreen()->SetUIState(NetworkError::UI_STATE_LOCAL_STATE_ERROR);
|
| - SetStatusAreaVisible(false);
|
| + host_->SetStatusAreaVisible(false);
|
| ShowErrorScreen();
|
| return;
|
| }
|
| @@ -1362,7 +1379,7 @@ void WizardController::OnLocalStateInitialized(bool /* succeeded */) {
|
| return;
|
| }
|
| GetErrorScreen()->SetUIState(NetworkError::UI_STATE_LOCAL_STATE_ERROR);
|
| - SetStatusAreaVisible(false);
|
| + host_->SetStatusAreaVisible(false);
|
| ShowErrorScreen();
|
| }
|
|
|
| @@ -1518,7 +1535,7 @@ void WizardController::StartEnrollmentScreen(bool force_interactive) {
|
|
|
| EnrollmentScreen* screen = EnrollmentScreen::Get(screen_manager());
|
| screen->SetParameters(effective_config, shark_controller_.get());
|
| - SetStatusAreaVisible(true);
|
| + UpdateStatusAreaVisibilityForScreen(OobeScreen::SCREEN_OOBE_ENROLLMENT);
|
| SetCurrentScreen(screen);
|
| }
|
|
|
|
|