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 17 matching lines...) Expand all Loading... | |
28 #include "chrome/browser/chromeos/login/enrollment/auto_enrollment_check_screen. h" | 28 #include "chrome/browser/chromeos/login/enrollment/auto_enrollment_check_screen. h" |
29 #include "chrome/browser/chromeos/login/enrollment/enrollment_screen.h" | 29 #include "chrome/browser/chromeos/login/enrollment/enrollment_screen.h" |
30 #include "chrome/browser/chromeos/login/existing_user_controller.h" | 30 #include "chrome/browser/chromeos/login/existing_user_controller.h" |
31 #include "chrome/browser/chromeos/login/helper.h" | 31 #include "chrome/browser/chromeos/login/helper.h" |
32 #include "chrome/browser/chromeos/login/hwid_checker.h" | 32 #include "chrome/browser/chromeos/login/hwid_checker.h" |
33 #include "chrome/browser/chromeos/login/login_utils.h" | 33 #include "chrome/browser/chromeos/login/login_utils.h" |
34 #include "chrome/browser/chromeos/login/screens/device_disabled_screen.h" | 34 #include "chrome/browser/chromeos/login/screens/device_disabled_screen.h" |
35 #include "chrome/browser/chromeos/login/screens/enable_debugging_screen.h" | 35 #include "chrome/browser/chromeos/login/screens/enable_debugging_screen.h" |
36 #include "chrome/browser/chromeos/login/screens/error_screen.h" | 36 #include "chrome/browser/chromeos/login/screens/error_screen.h" |
37 #include "chrome/browser/chromeos/login/screens/eula_screen.h" | 37 #include "chrome/browser/chromeos/login/screens/eula_screen.h" |
38 #include "chrome/browser/chromeos/login/screens/hid_detection_screen.h" | 38 #include "chrome/browser/chromeos/login/screens/hid_detection_view.h" |
39 #include "chrome/browser/chromeos/login/screens/kiosk_autolaunch_screen.h" | 39 #include "chrome/browser/chromeos/login/screens/kiosk_autolaunch_screen.h" |
40 #include "chrome/browser/chromeos/login/screens/kiosk_enable_screen.h" | 40 #include "chrome/browser/chromeos/login/screens/kiosk_enable_screen.h" |
41 #include "chrome/browser/chromeos/login/screens/network_view.h" | 41 #include "chrome/browser/chromeos/login/screens/network_view.h" |
42 #include "chrome/browser/chromeos/login/screens/reset_screen.h" | 42 #include "chrome/browser/chromeos/login/screens/reset_screen.h" |
43 #include "chrome/browser/chromeos/login/screens/terms_of_service_screen.h" | 43 #include "chrome/browser/chromeos/login/screens/terms_of_service_screen.h" |
44 #include "chrome/browser/chromeos/login/screens/update_screen.h" | 44 #include "chrome/browser/chromeos/login/screens/update_screen.h" |
45 #include "chrome/browser/chromeos/login/screens/user_image_screen.h" | 45 #include "chrome/browser/chromeos/login/screens/user_image_screen.h" |
46 #include "chrome/browser/chromeos/login/screens/wrong_hwid_screen.h" | 46 #include "chrome/browser/chromeos/login/screens/wrong_hwid_screen.h" |
47 #include "chrome/browser/chromeos/login/startup_utils.h" | 47 #include "chrome/browser/chromeos/login/startup_utils.h" |
48 #include "chrome/browser/chromeos/login/supervised/supervised_user_creation_scre en.h" | 48 #include "chrome/browser/chromeos/login/supervised/supervised_user_creation_scre en.h" |
(...skipping 157 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
206 is_out_of_box_(false), | 206 is_out_of_box_(false), |
207 host_(host), | 207 host_(host), |
208 oobe_display_(oobe_display), | 208 oobe_display_(oobe_display), |
209 usage_statistics_reporting_(true), | 209 usage_statistics_reporting_(true), |
210 skip_update_enroll_after_eula_(false), | 210 skip_update_enroll_after_eula_(false), |
211 retry_auto_enrollment_check_(false), | 211 retry_auto_enrollment_check_(false), |
212 login_screen_started_(false), | 212 login_screen_started_(false), |
213 user_image_screen_return_to_previous_hack_(false), | 213 user_image_screen_return_to_previous_hack_(false), |
214 timezone_resolved_(false), | 214 timezone_resolved_(false), |
215 shark_controller_detected_(false), | 215 shark_controller_detected_(false), |
216 hid_screen_(nullptr), | |
216 weak_factory_(this) { | 217 weak_factory_(this) { |
217 DCHECK(default_controller_ == NULL); | 218 DCHECK(default_controller_ == NULL); |
218 default_controller_ = this; | 219 default_controller_ = this; |
219 AccessibilityManager* accessibility_manager = AccessibilityManager::Get(); | 220 AccessibilityManager* accessibility_manager = AccessibilityManager::Get(); |
220 CHECK(accessibility_manager); | 221 CHECK(accessibility_manager); |
221 accessibility_subscription_ = accessibility_manager->RegisterCallback( | 222 accessibility_subscription_ = accessibility_manager->RegisterCallback( |
222 base::Bind(&WizardController::OnAccessibilityStatusChanged, | 223 base::Bind(&WizardController::OnAccessibilityStatusChanged, |
223 base::Unretained(this))); | 224 base::Unretained(this))); |
224 } | 225 } |
225 | 226 |
(...skipping 98 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
324 } else if (screen_name == kTermsOfServiceScreenName) { | 325 } else if (screen_name == kTermsOfServiceScreenName) { |
325 return new chromeos::TermsOfServiceScreen( | 326 return new chromeos::TermsOfServiceScreen( |
326 this, oobe_display_->GetTermsOfServiceScreenActor()); | 327 this, oobe_display_->GetTermsOfServiceScreenActor()); |
327 } else if (screen_name == kWrongHWIDScreenName) { | 328 } else if (screen_name == kWrongHWIDScreenName) { |
328 return new chromeos::WrongHWIDScreen( | 329 return new chromeos::WrongHWIDScreen( |
329 this, oobe_display_->GetWrongHWIDScreenActor()); | 330 this, oobe_display_->GetWrongHWIDScreenActor()); |
330 } else if (screen_name == kSupervisedUserCreationScreenName) { | 331 } else if (screen_name == kSupervisedUserCreationScreenName) { |
331 return new chromeos::SupervisedUserCreationScreen( | 332 return new chromeos::SupervisedUserCreationScreen( |
332 this, oobe_display_->GetSupervisedUserCreationScreenActor()); | 333 this, oobe_display_->GetSupervisedUserCreationScreenActor()); |
333 } else if (screen_name == kHIDDetectionScreenName) { | 334 } else if (screen_name == kHIDDetectionScreenName) { |
334 return new chromeos::HIDDetectionScreen( | 335 scoped_ptr<HIDDetectionScreen> screen(new chromeos::HIDDetectionScreen( |
335 this, oobe_display_->GetHIDDetectionScreenActor()); | 336 this, oobe_display_->GetHIDDetectionView())); |
337 screen->Initialize(nullptr /* context */); | |
338 return screen.release(); | |
336 } else if (screen_name == kAutoEnrollmentCheckScreenName) { | 339 } else if (screen_name == kAutoEnrollmentCheckScreenName) { |
337 return new chromeos::AutoEnrollmentCheckScreen( | 340 return new chromeos::AutoEnrollmentCheckScreen( |
338 this, oobe_display_->GetAutoEnrollmentCheckScreenActor()); | 341 this, oobe_display_->GetAutoEnrollmentCheckScreenActor()); |
339 } else if (screen_name == kControllerPairingScreenName) { | 342 } else if (screen_name == kControllerPairingScreenName) { |
340 if (!shark_controller_) { | 343 if (!shark_controller_) { |
341 shark_controller_.reset( | 344 shark_controller_.reset( |
342 new pairing_chromeos::BluetoothControllerPairingController()); | 345 new pairing_chromeos::BluetoothControllerPairingController()); |
343 } | 346 } |
344 return new ControllerPairingScreen( | 347 return new ControllerPairingScreen( |
345 this, | 348 this, |
(...skipping 11 matching lines...) Expand all Loading... | |
357 oobe_display_->GetHostPairingScreenActor(), | 360 oobe_display_->GetHostPairingScreenActor(), |
358 remora_controller_.get()); | 361 remora_controller_.get()); |
359 } else if (screen_name == kDeviceDisabledScreenName) { | 362 } else if (screen_name == kDeviceDisabledScreenName) { |
360 return new chromeos::DeviceDisabledScreen( | 363 return new chromeos::DeviceDisabledScreen( |
361 this, oobe_display_->GetDeviceDisabledScreenActor()); | 364 this, oobe_display_->GetDeviceDisabledScreenActor()); |
362 } | 365 } |
363 | 366 |
364 return NULL; | 367 return NULL; |
365 } | 368 } |
366 | 369 |
367 void WizardController::ShowNetworkScreen() { | 370 void WizardController::ShowNetworkScreen() { |
Denis Kuznetsov (DE-MUC)
2015/02/03 13:31:42
Do you still need this debug output?
merkulova
2015/02/03 14:41:01
Done.
| |
371 LOG(ERROR) << "Showing network screen."; | |
368 VLOG(1) << "Showing network screen."; | 372 VLOG(1) << "Showing network screen."; |
369 // Hide the status area initially; it only appears after OOBE first animates | 373 // Hide the status area initially; it only appears after OOBE first animates |
370 // in. Keep it visible if the user goes back to the existing network screen. | 374 // in. Keep it visible if the user goes back to the existing network screen. |
371 SetStatusAreaVisible(HasScreen(kNetworkScreenName)); | 375 SetStatusAreaVisible(HasScreen(kNetworkScreenName)); |
372 SetCurrentScreen(GetScreen(kNetworkScreenName)); | 376 SetCurrentScreen(GetScreen(kNetworkScreenName)); |
373 | 377 |
374 MaybeStartListeningForSharkConnection(); | 378 MaybeStartListeningForSharkConnection(); |
375 } | 379 } |
376 | 380 |
377 void WizardController::ShowLoginScreen(const LoginScreenContext& context) { | 381 void WizardController::ShowLoginScreen(const LoginScreenContext& context) { |
(...skipping 423 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
801 // Restart to make the login page pick up the policy changes resulting from | 805 // Restart to make the login page pick up the policy changes resulting from |
802 // enrollment recovery. | 806 // enrollment recovery. |
803 // TODO(tnagel): Find a way to update login page without reboot. | 807 // TODO(tnagel): Find a way to update login page without reboot. |
804 if (prescribed_enrollment_config_.mode == | 808 if (prescribed_enrollment_config_.mode == |
805 policy::EnrollmentConfig::MODE_RECOVERY) { | 809 policy::EnrollmentConfig::MODE_RECOVERY) { |
806 chrome::AttemptRestart(); | 810 chrome::AttemptRestart(); |
807 } | 811 } |
808 } | 812 } |
809 | 813 |
810 void WizardController::SetCurrentScreen(BaseScreen* new_current) { | 814 void WizardController::SetCurrentScreen(BaseScreen* new_current) { |
815 LOG(ERROR) << "SetCurrentScreen"; | |
Denis Kuznetsov (DE-MUC)
2015/02/03 13:31:42
same here
merkulova
2015/02/03 14:41:01
Done.
| |
811 SetCurrentScreenSmooth(new_current, false); | 816 SetCurrentScreenSmooth(new_current, false); |
812 } | 817 } |
813 | 818 |
814 void WizardController::ShowCurrentScreen() { | 819 void WizardController::ShowCurrentScreen() { |
815 // ShowCurrentScreen may get called by smooth_show_timer_ even after | 820 // ShowCurrentScreen may get called by smooth_show_timer_ even after |
816 // flow has been switched to sign in screen (ExistingUserController). | 821 // flow has been switched to sign in screen (ExistingUserController). |
822 LOG(ERROR) << "ShowCurrentScreen"; | |
Denis Kuznetsov (DE-MUC)
2015/02/03 13:31:42
And here
merkulova
2015/02/03 14:41:01
Done.
| |
817 if (!oobe_display_) | 823 if (!oobe_display_) |
818 return; | 824 return; |
819 | 825 |
820 // First remember how far have we reached so that we can resume if needed. | 826 // First remember how far have we reached so that we can resume if needed. |
821 if (is_out_of_box_ && IsResumableScreen(current_screen_->GetName())) | 827 if (is_out_of_box_ && IsResumableScreen(current_screen_->GetName())) |
822 StartupUtils::SaveOobePendingScreen(current_screen_->GetName()); | 828 StartupUtils::SaveOobePendingScreen(current_screen_->GetName()); |
823 | 829 |
824 smooth_show_timer_.Stop(); | 830 smooth_show_timer_.Stop(); |
825 | 831 |
826 FOR_EACH_OBSERVER(Observer, observer_list_, OnScreenChanged(current_screen_)); | 832 FOR_EACH_OBSERVER(Observer, observer_list_, OnScreenChanged(current_screen_)); |
827 | 833 |
828 current_screen_->Show(); | 834 current_screen_->Show(); |
829 } | 835 } |
830 | 836 |
831 void WizardController::SetCurrentScreenSmooth(BaseScreen* new_current, | 837 void WizardController::SetCurrentScreenSmooth(BaseScreen* new_current, |
832 bool use_smoothing) { | 838 bool use_smoothing) { |
839 LOG(ERROR) << "SetCurrentScreenSmooth"; | |
Denis Kuznetsov (DE-MUC)
2015/02/03 13:31:42
Here and below
merkulova
2015/02/03 14:41:01
Done.
| |
833 if (current_screen_ == new_current || | 840 if (current_screen_ == new_current || |
834 new_current == NULL || | 841 new_current == NULL || |
835 oobe_display_ == NULL) { | 842 oobe_display_ == NULL) { |
843 LOG(ERROR) << "1"; | |
836 return; | 844 return; |
837 } | 845 } |
838 | 846 |
839 smooth_show_timer_.Stop(); | 847 smooth_show_timer_.Stop(); |
840 | 848 |
841 if (current_screen_) | 849 if (current_screen_) |
842 current_screen_->Hide(); | 850 current_screen_->Hide(); |
843 | 851 |
844 std::string screen_id = new_current->GetName(); | 852 std::string screen_id = new_current->GetName(); |
845 if (IsOOBEStepToTrack(screen_id)) | 853 if (IsOOBEStepToTrack(screen_id)) |
(...skipping 15 matching lines...) Expand all Loading... | |
861 | 869 |
862 void WizardController::SetStatusAreaVisible(bool visible) { | 870 void WizardController::SetStatusAreaVisible(bool visible) { |
863 host_->SetStatusAreaVisible(visible); | 871 host_->SetStatusAreaVisible(visible); |
864 } | 872 } |
865 | 873 |
866 void WizardController::OnHIDScreenNecessityCheck(bool screen_needed) { | 874 void WizardController::OnHIDScreenNecessityCheck(bool screen_needed) { |
867 if (!oobe_display_) | 875 if (!oobe_display_) |
868 return; | 876 return; |
869 if (screen_needed) | 877 if (screen_needed) |
870 ShowHIDDetectionScreen(); | 878 ShowHIDDetectionScreen(); |
879 | |
Denis Kuznetsov (DE-MUC)
2015/02/03 13:31:42
Drop empty line
merkulova
2015/02/03 14:41:01
Done.
| |
871 else | 880 else |
872 ShowNetworkScreen(); | 881 ShowNetworkScreen(); |
873 } | 882 } |
874 | 883 |
875 void WizardController::AdvanceToScreen(const std::string& screen_name) { | 884 void WizardController::AdvanceToScreen(const std::string& screen_name) { |
876 if (screen_name == kNetworkScreenName) { | 885 if (screen_name == kNetworkScreenName) { |
877 ShowNetworkScreen(); | 886 ShowNetworkScreen(); |
878 } else if (screen_name == kLoginScreenName) { | 887 } else if (screen_name == kLoginScreenName) { |
879 ShowLoginScreen(LoginScreenContext()); | 888 ShowLoginScreen(LoginScreenContext()); |
880 } else if (screen_name == kUpdateScreenName) { | 889 } else if (screen_name == kUpdateScreenName) { |
(...skipping 29 matching lines...) Expand all Loading... | |
910 } else if (screen_name == kHostPairingScreenName) { | 919 } else if (screen_name == kHostPairingScreenName) { |
911 ShowHostPairingScreen(); | 920 ShowHostPairingScreen(); |
912 } else if (screen_name == kDeviceDisabledScreenName) { | 921 } else if (screen_name == kDeviceDisabledScreenName) { |
913 ShowDeviceDisabledScreen(); | 922 ShowDeviceDisabledScreen(); |
914 } else if (screen_name != kTestNoScreenName) { | 923 } else if (screen_name != kTestNoScreenName) { |
915 if (is_out_of_box_) { | 924 if (is_out_of_box_) { |
916 time_oobe_started_ = base::Time::Now(); | 925 time_oobe_started_ = base::Time::Now(); |
917 if (IsHostPairingOobe()) { | 926 if (IsHostPairingOobe()) { |
918 ShowHostPairingScreen(); | 927 ShowHostPairingScreen(); |
919 } else if (CanShowHIDDetectionScreen()) { | 928 } else if (CanShowHIDDetectionScreen()) { |
929 hid_screen_ = GetScreen(kHIDDetectionScreenName); | |
920 base::Callback<void(bool)> on_check = base::Bind( | 930 base::Callback<void(bool)> on_check = base::Bind( |
921 &WizardController::OnHIDScreenNecessityCheck, | 931 &WizardController::OnHIDScreenNecessityCheck, |
922 weak_factory_.GetWeakPtr()); | 932 weak_factory_.GetWeakPtr()); |
923 oobe_display_->GetHIDDetectionScreenActor()->CheckIsScreenRequired( | 933 LOG(ERROR) << "Before check"; |
Denis Kuznetsov (DE-MUC)
2015/02/03 13:31:42
Debug outut
merkulova
2015/02/03 14:41:01
Done.
| |
924 on_check); | 934 oobe_display_->GetHIDDetectionView()->CheckIsScreenRequired(on_check); |
925 } else { | 935 } else { |
926 ShowNetworkScreen(); | 936 ShowNetworkScreen(); |
927 } | 937 } |
928 } else { | 938 } else { |
929 ShowLoginScreen(LoginScreenContext()); | 939 ShowLoginScreen(LoginScreenContext()); |
930 } | 940 } |
931 } | 941 } |
932 } | 942 } |
933 | 943 |
934 /////////////////////////////////////////////////////////////////////////////// | 944 /////////////////////////////////////////////////////////////////////////////// |
(...skipping 367 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1302 } | 1312 } |
1303 | 1313 |
1304 EnrollmentScreen* screen = EnrollmentScreen::Get(this); | 1314 EnrollmentScreen* screen = EnrollmentScreen::Get(this); |
1305 screen->SetParameters(effective_config, shark_controller_.get(), | 1315 screen->SetParameters(effective_config, shark_controller_.get(), |
1306 remora_controller_.get()); | 1316 remora_controller_.get()); |
1307 SetStatusAreaVisible(true); | 1317 SetStatusAreaVisible(true); |
1308 SetCurrentScreen(screen); | 1318 SetCurrentScreen(screen); |
1309 } | 1319 } |
1310 | 1320 |
1311 } // namespace chromeos | 1321 } // namespace chromeos |
OLD | NEW |