| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "chrome/browser/chromeos/login/wizard_controller.h" | 5 #include "chrome/browser/chromeos/login/wizard_controller.h" |
| 6 | 6 |
| 7 #include <signal.h> | 7 #include <signal.h> |
| 8 #include <stdlib.h> | 8 #include <stdlib.h> |
| 9 #include <sys/types.h> | 9 #include <sys/types.h> |
| 10 | 10 |
| (...skipping 16 matching lines...) Expand all Loading... |
| 27 #include "chrome/browser/chromeos/customization_document.h" | 27 #include "chrome/browser/chromeos/customization_document.h" |
| 28 #include "chrome/browser/chromeos/geolocation/simple_geolocation_provider.h" | 28 #include "chrome/browser/chromeos/geolocation/simple_geolocation_provider.h" |
| 29 #include "chrome/browser/chromeos/login/enrollment/auto_enrollment_check_screen.
h" | 29 #include "chrome/browser/chromeos/login/enrollment/auto_enrollment_check_screen.
h" |
| 30 #include "chrome/browser/chromeos/login/enrollment/enrollment_screen.h" | 30 #include "chrome/browser/chromeos/login/enrollment/enrollment_screen.h" |
| 31 #include "chrome/browser/chromeos/login/existing_user_controller.h" | 31 #include "chrome/browser/chromeos/login/existing_user_controller.h" |
| 32 #include "chrome/browser/chromeos/login/helper.h" | 32 #include "chrome/browser/chromeos/login/helper.h" |
| 33 #include "chrome/browser/chromeos/login/hwid_checker.h" | 33 #include "chrome/browser/chromeos/login/hwid_checker.h" |
| 34 #include "chrome/browser/chromeos/login/login_utils.h" | 34 #include "chrome/browser/chromeos/login/login_utils.h" |
| 35 #include "chrome/browser/chromeos/login/screens/controller_pairing_screen.h" | 35 #include "chrome/browser/chromeos/login/screens/controller_pairing_screen.h" |
| 36 #include "chrome/browser/chromeos/login/screens/device_disabled_screen.h" | 36 #include "chrome/browser/chromeos/login/screens/device_disabled_screen.h" |
| 37 #include "chrome/browser/chromeos/login/screens/enable_debugging_screen.h" |
| 37 #include "chrome/browser/chromeos/login/screens/error_screen.h" | 38 #include "chrome/browser/chromeos/login/screens/error_screen.h" |
| 38 #include "chrome/browser/chromeos/login/screens/eula_screen.h" | 39 #include "chrome/browser/chromeos/login/screens/eula_screen.h" |
| 39 #include "chrome/browser/chromeos/login/screens/hid_detection_screen.h" | 40 #include "chrome/browser/chromeos/login/screens/hid_detection_screen.h" |
| 40 #include "chrome/browser/chromeos/login/screens/host_pairing_screen.h" | 41 #include "chrome/browser/chromeos/login/screens/host_pairing_screen.h" |
| 41 #include "chrome/browser/chromeos/login/screens/kiosk_autolaunch_screen.h" | 42 #include "chrome/browser/chromeos/login/screens/kiosk_autolaunch_screen.h" |
| 42 #include "chrome/browser/chromeos/login/screens/kiosk_enable_screen.h" | 43 #include "chrome/browser/chromeos/login/screens/kiosk_enable_screen.h" |
| 43 #include "chrome/browser/chromeos/login/screens/network_screen.h" | 44 #include "chrome/browser/chromeos/login/screens/network_screen.h" |
| 44 #include "chrome/browser/chromeos/login/screens/reset_screen.h" | 45 #include "chrome/browser/chromeos/login/screens/reset_screen.h" |
| 45 #include "chrome/browser/chromeos/login/screens/terms_of_service_screen.h" | 46 #include "chrome/browser/chromeos/login/screens/terms_of_service_screen.h" |
| 46 #include "chrome/browser/chromeos/login/screens/update_screen.h" | 47 #include "chrome/browser/chromeos/login/screens/update_screen.h" |
| (...skipping 96 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 143 | 144 |
| 144 } // namespace | 145 } // namespace |
| 145 | 146 |
| 146 namespace chromeos { | 147 namespace chromeos { |
| 147 | 148 |
| 148 const char WizardController::kNetworkScreenName[] = "network"; | 149 const char WizardController::kNetworkScreenName[] = "network"; |
| 149 const char WizardController::kLoginScreenName[] = "login"; | 150 const char WizardController::kLoginScreenName[] = "login"; |
| 150 const char WizardController::kUpdateScreenName[] = "update"; | 151 const char WizardController::kUpdateScreenName[] = "update"; |
| 151 const char WizardController::kUserImageScreenName[] = "image"; | 152 const char WizardController::kUserImageScreenName[] = "image"; |
| 152 const char WizardController::kEulaScreenName[] = "eula"; | 153 const char WizardController::kEulaScreenName[] = "eula"; |
| 154 const char WizardController::kEnableDebuggingScreenName[] = "debugging"; |
| 153 const char WizardController::kEnrollmentScreenName[] = "enroll"; | 155 const char WizardController::kEnrollmentScreenName[] = "enroll"; |
| 154 const char WizardController::kResetScreenName[] = "reset"; | 156 const char WizardController::kResetScreenName[] = "reset"; |
| 155 const char WizardController::kKioskEnableScreenName[] = "kiosk-enable"; | 157 const char WizardController::kKioskEnableScreenName[] = "kiosk-enable"; |
| 156 const char WizardController::kKioskAutolaunchScreenName[] = "autolaunch"; | 158 const char WizardController::kKioskAutolaunchScreenName[] = "autolaunch"; |
| 157 const char WizardController::kErrorScreenName[] = "error-message"; | 159 const char WizardController::kErrorScreenName[] = "error-message"; |
| 158 const char WizardController::kTermsOfServiceScreenName[] = "tos"; | 160 const char WizardController::kTermsOfServiceScreenName[] = "tos"; |
| 159 const char WizardController::kAutoEnrollmentCheckScreenName[] = | 161 const char WizardController::kAutoEnrollmentCheckScreenName[] = |
| 160 "auto-enrollment-check"; | 162 "auto-enrollment-check"; |
| 161 const char WizardController::kWrongHWIDScreenName[] = "wrong-hwid"; | 163 const char WizardController::kWrongHWIDScreenName[] = "wrong-hwid"; |
| 162 const char WizardController::kSupervisedUserCreationScreenName[] = | 164 const char WizardController::kSupervisedUserCreationScreenName[] = |
| (...skipping 141 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 304 return new chromeos::UserImageScreen( | 306 return new chromeos::UserImageScreen( |
| 305 this, oobe_display_->GetUserImageScreenActor()); | 307 this, oobe_display_->GetUserImageScreenActor()); |
| 306 } else if (screen_name == kEulaScreenName) { | 308 } else if (screen_name == kEulaScreenName) { |
| 307 return new chromeos::EulaScreen(this, oobe_display_->GetEulaScreenActor()); | 309 return new chromeos::EulaScreen(this, oobe_display_->GetEulaScreenActor()); |
| 308 } else if (screen_name == kEnrollmentScreenName) { | 310 } else if (screen_name == kEnrollmentScreenName) { |
| 309 return new chromeos::EnrollmentScreen( | 311 return new chromeos::EnrollmentScreen( |
| 310 this, oobe_display_->GetEnrollmentScreenActor()); | 312 this, oobe_display_->GetEnrollmentScreenActor()); |
| 311 } else if (screen_name == kResetScreenName) { | 313 } else if (screen_name == kResetScreenName) { |
| 312 return new chromeos::ResetScreen(this, | 314 return new chromeos::ResetScreen(this, |
| 313 oobe_display_->GetResetScreenActor()); | 315 oobe_display_->GetResetScreenActor()); |
| 316 } else if (screen_name == kEnableDebuggingScreenName) { |
| 317 return new chromeos::EnableDebuggingScreen( |
| 318 this, |
| 319 oobe_display_->GetEnableDebuggingScreenActor()); |
| 314 } else if (screen_name == kKioskEnableScreenName) { | 320 } else if (screen_name == kKioskEnableScreenName) { |
| 315 return new chromeos::KioskEnableScreen( | 321 return new chromeos::KioskEnableScreen( |
| 316 this, oobe_display_->GetKioskEnableScreenActor()); | 322 this, oobe_display_->GetKioskEnableScreenActor()); |
| 317 } else if (screen_name == kKioskAutolaunchScreenName) { | 323 } else if (screen_name == kKioskAutolaunchScreenName) { |
| 318 return new chromeos::KioskAutolaunchScreen( | 324 return new chromeos::KioskAutolaunchScreen( |
| 319 this, oobe_display_->GetKioskAutolaunchScreenActor()); | 325 this, oobe_display_->GetKioskAutolaunchScreenActor()); |
| 320 } else if (screen_name == kTermsOfServiceScreenName) { | 326 } else if (screen_name == kTermsOfServiceScreenName) { |
| 321 return new chromeos::TermsOfServiceScreen( | 327 return new chromeos::TermsOfServiceScreen( |
| 322 this, oobe_display_->GetTermsOfServiceScreenActor()); | 328 this, oobe_display_->GetTermsOfServiceScreenActor()); |
| 323 } else if (screen_name == kWrongHWIDScreenName) { | 329 } else if (screen_name == kWrongHWIDScreenName) { |
| (...skipping 137 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 461 SetStatusAreaVisible(false); | 467 SetStatusAreaVisible(false); |
| 462 SetCurrentScreen(GetScreen(kKioskEnableScreenName)); | 468 SetCurrentScreen(GetScreen(kKioskEnableScreenName)); |
| 463 } | 469 } |
| 464 | 470 |
| 465 void WizardController::ShowKioskAutolaunchScreen() { | 471 void WizardController::ShowKioskAutolaunchScreen() { |
| 466 VLOG(1) << "Showing kiosk autolaunch screen."; | 472 VLOG(1) << "Showing kiosk autolaunch screen."; |
| 467 SetStatusAreaVisible(false); | 473 SetStatusAreaVisible(false); |
| 468 SetCurrentScreen(GetScreen(kKioskAutolaunchScreenName)); | 474 SetCurrentScreen(GetScreen(kKioskAutolaunchScreenName)); |
| 469 } | 475 } |
| 470 | 476 |
| 477 void WizardController::ShowEnableDebuggingScreen() { |
| 478 VLOG(1) << "Showing enable developer features screen."; |
| 479 SetStatusAreaVisible(false); |
| 480 SetCurrentScreen(GetScreen(kEnableDebuggingScreenName)); |
| 481 } |
| 482 |
| 471 void WizardController::ShowTermsOfServiceScreen() { | 483 void WizardController::ShowTermsOfServiceScreen() { |
| 472 // Only show the Terms of Service when logging into a public account and Terms | 484 // Only show the Terms of Service when logging into a public account and Terms |
| 473 // of Service have been specified through policy. In all other cases, advance | 485 // of Service have been specified through policy. In all other cases, advance |
| 474 // to the user image screen immediately. | 486 // to the user image screen immediately. |
| 475 if (!user_manager::UserManager::Get()->IsLoggedInAsPublicAccount() || | 487 if (!user_manager::UserManager::Get()->IsLoggedInAsPublicAccount() || |
| 476 !ProfileManager::GetActiveUserProfile()->GetPrefs()->IsManagedPreference( | 488 !ProfileManager::GetActiveUserProfile()->GetPrefs()->IsManagedPreference( |
| 477 prefs::kTermsOfServiceURL)) { | 489 prefs::kTermsOfServiceURL)) { |
| 478 ShowUserImageScreen(); | 490 ShowUserImageScreen(); |
| 479 return; | 491 return; |
| 480 } | 492 } |
| (...skipping 210 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 691 PerformOOBECompletedActions(); | 703 PerformOOBECompletedActions(); |
| 692 | 704 |
| 693 // TODO(mnissler): Unify the logic for auto-login for Public Sessions and | 705 // TODO(mnissler): Unify the logic for auto-login for Public Sessions and |
| 694 // Kiosk Apps and make this code cover both cases: http://crbug.com/234694. | 706 // Kiosk Apps and make this code cover both cases: http://crbug.com/234694. |
| 695 if (KioskAppManager::Get()->IsAutoLaunchEnabled()) | 707 if (KioskAppManager::Get()->IsAutoLaunchEnabled()) |
| 696 AutoLaunchKioskApp(); | 708 AutoLaunchKioskApp(); |
| 697 else | 709 else |
| 698 ShowLoginScreen(LoginScreenContext()); | 710 ShowLoginScreen(LoginScreenContext()); |
| 699 } | 711 } |
| 700 | 712 |
| 701 void WizardController::OnResetCanceled() { | 713 void WizardController::OnDeviceModificationCanceled() { |
| 702 if (previous_screen_) { | 714 if (previous_screen_) { |
| 703 SetCurrentScreen(previous_screen_); | 715 SetCurrentScreen(previous_screen_); |
| 704 } else { | 716 } else { |
| 705 ShowLoginScreen(LoginScreenContext()); | 717 ShowLoginScreen(LoginScreenContext()); |
| 706 } | 718 } |
| 707 } | 719 } |
| 708 | 720 |
| 709 void WizardController::OnKioskAutolaunchCanceled() { | 721 void WizardController::OnKioskAutolaunchCanceled() { |
| 710 ShowLoginScreen(LoginScreenContext()); | 722 ShowLoginScreen(LoginScreenContext()); |
| 711 } | 723 } |
| (...skipping 169 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 881 } else if (screen_name == kUserImageScreenName) { | 893 } else if (screen_name == kUserImageScreenName) { |
| 882 ShowUserImageScreen(); | 894 ShowUserImageScreen(); |
| 883 } else if (screen_name == kEulaScreenName) { | 895 } else if (screen_name == kEulaScreenName) { |
| 884 ShowEulaScreen(); | 896 ShowEulaScreen(); |
| 885 } else if (screen_name == kResetScreenName) { | 897 } else if (screen_name == kResetScreenName) { |
| 886 ShowResetScreen(); | 898 ShowResetScreen(); |
| 887 } else if (screen_name == kKioskEnableScreenName) { | 899 } else if (screen_name == kKioskEnableScreenName) { |
| 888 ShowKioskEnableScreen(); | 900 ShowKioskEnableScreen(); |
| 889 } else if (screen_name == kKioskAutolaunchScreenName) { | 901 } else if (screen_name == kKioskAutolaunchScreenName) { |
| 890 ShowKioskAutolaunchScreen(); | 902 ShowKioskAutolaunchScreen(); |
| 903 } else if (screen_name == kEnableDebuggingScreenName) { |
| 904 ShowEnableDebuggingScreen(); |
| 891 } else if (screen_name == kEnrollmentScreenName) { | 905 } else if (screen_name == kEnrollmentScreenName) { |
| 892 ShowEnrollmentScreen(); | 906 ShowEnrollmentScreen(); |
| 893 } else if (screen_name == kTermsOfServiceScreenName) { | 907 } else if (screen_name == kTermsOfServiceScreenName) { |
| 894 ShowTermsOfServiceScreen(); | 908 ShowTermsOfServiceScreen(); |
| 895 } else if (screen_name == kWrongHWIDScreenName) { | 909 } else if (screen_name == kWrongHWIDScreenName) { |
| 896 ShowWrongHWIDScreen(); | 910 ShowWrongHWIDScreen(); |
| 897 } else if (screen_name == kAutoEnrollmentCheckScreenName) { | 911 } else if (screen_name == kAutoEnrollmentCheckScreenName) { |
| 898 ShowAutoEnrollmentCheckScreen(); | 912 ShowAutoEnrollmentCheckScreen(); |
| 899 } else if (screen_name == kSupervisedUserCreationScreenName) { | 913 } else if (screen_name == kSupervisedUserCreationScreenName) { |
| 900 ShowSupervisedUserCreationScreen(); | 914 ShowSupervisedUserCreationScreen(); |
| (...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 960 break; | 974 break; |
| 961 case USER_IMAGE_SELECTED: | 975 case USER_IMAGE_SELECTED: |
| 962 OnUserImageSelected(); | 976 OnUserImageSelected(); |
| 963 break; | 977 break; |
| 964 case EULA_ACCEPTED: | 978 case EULA_ACCEPTED: |
| 965 OnEulaAccepted(); | 979 OnEulaAccepted(); |
| 966 break; | 980 break; |
| 967 case EULA_BACK: | 981 case EULA_BACK: |
| 968 ShowNetworkScreen(); | 982 ShowNetworkScreen(); |
| 969 break; | 983 break; |
| 984 case ENABLE_DEBUGGING_CANCELED: |
| 985 OnDeviceModificationCanceled(); |
| 986 break; |
| 970 case ENTERPRISE_AUTO_ENROLLMENT_CHECK_COMPLETED: | 987 case ENTERPRISE_AUTO_ENROLLMENT_CHECK_COMPLETED: |
| 971 if (skip_update_enroll_after_eula_) | 988 if (skip_update_enroll_after_eula_) |
| 972 ShowEnrollmentScreen(); | 989 ShowEnrollmentScreen(); |
| 973 else | 990 else |
| 974 OnAutoEnrollmentCheckCompleted(); | 991 OnAutoEnrollmentCheckCompleted(); |
| 975 break; | 992 break; |
| 976 case ENTERPRISE_ENROLLMENT_COMPLETED: | 993 case ENTERPRISE_ENROLLMENT_COMPLETED: |
| 977 OnEnrollmentDone(); | 994 OnEnrollmentDone(); |
| 978 break; | 995 break; |
| 979 case ENTERPRISE_ENROLLMENT_BACK: | 996 case ENTERPRISE_ENROLLMENT_BACK: |
| 980 ShowNetworkScreen(); | 997 ShowNetworkScreen(); |
| 981 break; | 998 break; |
| 982 case RESET_CANCELED: | 999 case RESET_CANCELED: |
| 983 OnResetCanceled(); | 1000 OnDeviceModificationCanceled(); |
| 984 break; | 1001 break; |
| 985 case KIOSK_AUTOLAUNCH_CANCELED: | 1002 case KIOSK_AUTOLAUNCH_CANCELED: |
| 986 OnKioskAutolaunchCanceled(); | 1003 OnKioskAutolaunchCanceled(); |
| 987 break; | 1004 break; |
| 988 case KIOSK_AUTOLAUNCH_CONFIRMED: | 1005 case KIOSK_AUTOLAUNCH_CONFIRMED: |
| 989 OnKioskAutolaunchConfirmed(); | 1006 OnKioskAutolaunchConfirmed(); |
| 990 break; | 1007 break; |
| 991 case KIOSK_ENABLE_COMPLETED: | 1008 case KIOSK_ENABLE_COMPLETED: |
| 992 OnKioskEnableCompleted(); | 1009 OnKioskEnableCompleted(); |
| 993 break; | 1010 break; |
| (...skipping 303 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1297 if (accepted_eula) // Always true. | 1314 if (accepted_eula) // Always true. |
| 1298 StartupUtils::MarkEulaAccepted(); | 1315 StartupUtils::MarkEulaAccepted(); |
| 1299 SetUsageStatisticsReporting(send_reports); | 1316 SetUsageStatisticsReporting(send_reports); |
| 1300 NetworkScreenActor* network_actor = oobe_display_->GetNetworkScreenActor(); | 1317 NetworkScreenActor* network_actor = oobe_display_->GetNetworkScreenActor(); |
| 1301 network_actor->SetApplicationLocale(lang); | 1318 network_actor->SetApplicationLocale(lang); |
| 1302 network_actor->SetTimezone(timezone); | 1319 network_actor->SetTimezone(timezone); |
| 1303 network_actor->SetInputMethod(keyboard_layout); | 1320 network_actor->SetInputMethod(keyboard_layout); |
| 1304 } | 1321 } |
| 1305 | 1322 |
| 1306 } // namespace chromeos | 1323 } // namespace chromeos |
| OLD | NEW |