 Chromium Code Reviews
 Chromium Code Reviews Issue 898453002:
  HID-detection screen moved to screenContext.  (Closed) 
  Base URL: https://chromium.googlesource.com/chromium/src.git@master
    
  
    Issue 898453002:
  HID-detection screen moved to screenContext.  (Closed) 
  Base URL: https://chromium.googlesource.com/chromium/src.git@master| 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 |