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 275 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
286 | 286 |
287 WizardScreen* WizardController::CreateScreen(const std::string& screen_name) { | 287 WizardScreen* WizardController::CreateScreen(const std::string& screen_name) { |
288 if (screen_name == kNetworkScreenName) { | 288 if (screen_name == kNetworkScreenName) { |
289 return new chromeos::NetworkScreen(this, | 289 return new chromeos::NetworkScreen(this, |
290 oobe_display_->GetNetworkScreenActor()); | 290 oobe_display_->GetNetworkScreenActor()); |
291 } else if (screen_name == kErrorScreenName) { | 291 } else if (screen_name == kErrorScreenName) { |
292 return new chromeos::ErrorScreen(this, | 292 return new chromeos::ErrorScreen(this, |
293 oobe_display_->GetErrorScreenActor()); | 293 oobe_display_->GetErrorScreenActor()); |
294 } else if (screen_name == kUpdateScreenName) { | 294 } else if (screen_name == kUpdateScreenName) { |
295 chromeos::UpdateScreen* result = | 295 chromeos::UpdateScreen* result = |
296 new chromeos::UpdateScreen(this, oobe_display_->GetUpdateScreenActor()); | 296 new chromeos::UpdateScreen(this, |
| 297 oobe_display_->GetUpdateScreenActor(), |
| 298 remora_controller_.get()); |
297 result->SetRebootCheckDelay(kWaitForRebootTimeSec); | 299 result->SetRebootCheckDelay(kWaitForRebootTimeSec); |
298 return result; | 300 return result; |
299 } else if (screen_name == kUserImageScreenName) { | 301 } else if (screen_name == kUserImageScreenName) { |
300 return new chromeos::UserImageScreen( | 302 return new chromeos::UserImageScreen( |
301 this, oobe_display_->GetUserImageScreenActor()); | 303 this, oobe_display_->GetUserImageScreenActor()); |
302 } else if (screen_name == kEulaScreenName) { | 304 } else if (screen_name == kEulaScreenName) { |
303 return new chromeos::EulaScreen(this, oobe_display_->GetEulaScreenActor()); | 305 return new chromeos::EulaScreen(this, oobe_display_->GetEulaScreenActor()); |
304 } else if (screen_name == kEnrollmentScreenName) { | 306 } else if (screen_name == kEnrollmentScreenName) { |
305 return new chromeos::EnrollmentScreen( | 307 return new chromeos::EnrollmentScreen( |
306 this, oobe_display_->GetEnrollmentScreenActor()); | 308 this, oobe_display_->GetEnrollmentScreenActor()); |
(...skipping 15 matching lines...) Expand all Loading... |
322 } else if (screen_name == kSupervisedUserCreationScreenName) { | 324 } else if (screen_name == kSupervisedUserCreationScreenName) { |
323 return new chromeos::SupervisedUserCreationScreen( | 325 return new chromeos::SupervisedUserCreationScreen( |
324 this, oobe_display_->GetSupervisedUserCreationScreenActor()); | 326 this, oobe_display_->GetSupervisedUserCreationScreenActor()); |
325 } else if (screen_name == kHIDDetectionScreenName) { | 327 } else if (screen_name == kHIDDetectionScreenName) { |
326 return new chromeos::HIDDetectionScreen( | 328 return new chromeos::HIDDetectionScreen( |
327 this, oobe_display_->GetHIDDetectionScreenActor()); | 329 this, oobe_display_->GetHIDDetectionScreenActor()); |
328 } else if (screen_name == kAutoEnrollmentCheckScreenName) { | 330 } else if (screen_name == kAutoEnrollmentCheckScreenName) { |
329 return new chromeos::AutoEnrollmentCheckScreen( | 331 return new chromeos::AutoEnrollmentCheckScreen( |
330 this, oobe_display_->GetAutoEnrollmentCheckScreenActor()); | 332 this, oobe_display_->GetAutoEnrollmentCheckScreenActor()); |
331 } else if (screen_name == kControllerPairingScreenName) { | 333 } else if (screen_name == kControllerPairingScreenName) { |
332 if (!controller_pairing_controller_) { | 334 if (!shark_controller_) { |
333 controller_pairing_controller_.reset( | 335 shark_controller_.reset( |
334 new pairing_chromeos::BluetoothControllerPairingController()); | 336 new pairing_chromeos::BluetoothControllerPairingController()); |
335 } | 337 } |
336 return new ControllerPairingScreen( | 338 return new ControllerPairingScreen( |
337 this, oobe_display_->GetControllerPairingScreenActor(), | 339 this, oobe_display_->GetControllerPairingScreenActor(), |
338 controller_pairing_controller_.get()); | 340 shark_controller_.get()); |
339 } else if (screen_name == kHostPairingScreenName) { | 341 } else if (screen_name == kHostPairingScreenName) { |
340 if (!host_pairing_controller_) { | 342 if (!remora_controller_) { |
341 host_pairing_controller_.reset( | 343 remora_controller_.reset( |
342 new pairing_chromeos::BluetoothHostPairingController()); | 344 new pairing_chromeos::BluetoothHostPairingController()); |
343 host_pairing_controller_->StartPairing(); | 345 remora_controller_->StartPairing(); |
344 } | 346 } |
345 return new HostPairingScreen(this, | 347 return new HostPairingScreen(this, |
346 oobe_display_->GetHostPairingScreenActor(), | 348 oobe_display_->GetHostPairingScreenActor(), |
347 host_pairing_controller_.get()); | 349 remora_controller_.get()); |
348 } | 350 } |
349 return NULL; | 351 return NULL; |
350 } | 352 } |
351 | 353 |
352 void WizardController::ShowNetworkScreen() { | 354 void WizardController::ShowNetworkScreen() { |
353 VLOG(1) << "Showing network screen."; | 355 VLOG(1) << "Showing network screen."; |
354 // Hide the status area initially; it only appears after OOBE first animates | 356 // Hide the status area initially; it only appears after OOBE first animates |
355 // in. Keep it visible if the user goes back to the existing network screen. | 357 // in. Keep it visible if the user goes back to the existing network screen. |
356 SetStatusAreaVisible(HasScreen(kNetworkScreenName)); | 358 SetStatusAreaVisible(HasScreen(kNetworkScreenName)); |
357 SetCurrentScreen(GetScreen(kNetworkScreenName)); | 359 SetCurrentScreen(GetScreen(kNetworkScreenName)); |
(...skipping 71 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
429 std::string enrollment_domain = GetForcedEnrollmentDomain(); | 431 std::string enrollment_domain = GetForcedEnrollmentDomain(); |
430 if (is_auto_enrollment) { | 432 if (is_auto_enrollment) { |
431 mode = EnrollmentScreenActor::ENROLLMENT_MODE_AUTO; | 433 mode = EnrollmentScreenActor::ENROLLMENT_MODE_AUTO; |
432 } else if (enrollment_recovery_) { | 434 } else if (enrollment_recovery_) { |
433 mode = EnrollmentScreenActor::ENROLLMENT_MODE_RECOVERY; | 435 mode = EnrollmentScreenActor::ENROLLMENT_MODE_RECOVERY; |
434 enrollment_domain = GetEnrollmentRecoveryDomain(); | 436 enrollment_domain = GetEnrollmentRecoveryDomain(); |
435 } else if (ShouldAutoStartEnrollment() && !CanExitEnrollment()) { | 437 } else if (ShouldAutoStartEnrollment() && !CanExitEnrollment()) { |
436 mode = EnrollmentScreenActor::ENROLLMENT_MODE_FORCED; | 438 mode = EnrollmentScreenActor::ENROLLMENT_MODE_FORCED; |
437 } | 439 } |
438 | 440 |
439 screen->SetParameters(mode, enrollment_domain, user, auth_token_, | 441 screen->SetParameters(mode, enrollment_domain, user, |
440 controller_pairing_controller_.get(), | 442 shark_controller_.get(), |
441 host_pairing_controller_.get()); | 443 remora_controller_.get()); |
442 SetCurrentScreen(screen); | 444 SetCurrentScreen(screen); |
443 } | 445 } |
444 | 446 |
445 void WizardController::ShowResetScreen() { | 447 void WizardController::ShowResetScreen() { |
446 VLOG(1) << "Showing reset screen."; | 448 VLOG(1) << "Showing reset screen."; |
447 SetStatusAreaVisible(false); | 449 SetStatusAreaVisible(false); |
448 SetCurrentScreen(GetScreen(kResetScreenName)); | 450 SetCurrentScreen(GetScreen(kResetScreenName)); |
449 } | 451 } |
450 | 452 |
451 void WizardController::ShowKioskEnableScreen() { | 453 void WizardController::ShowKioskEnableScreen() { |
(...skipping 122 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
574 ShowLoginScreen(LoginScreenContext()); | 576 ShowLoginScreen(LoginScreenContext()); |
575 } | 577 } |
576 | 578 |
577 void WizardController::OnUpdateCompleted() { | 579 void WizardController::OnUpdateCompleted() { |
578 const bool is_shark = g_browser_process->platform_part() | 580 const bool is_shark = g_browser_process->platform_part() |
579 ->browser_policy_connector_chromeos() | 581 ->browser_policy_connector_chromeos() |
580 ->GetDeviceCloudPolicyManager() | 582 ->GetDeviceCloudPolicyManager() |
581 ->IsSharkRequisition(); | 583 ->IsSharkRequisition(); |
582 if (is_shark) { | 584 if (is_shark) { |
583 ShowControllerPairingScreen(); | 585 ShowControllerPairingScreen(); |
584 } else if (!auth_token_.empty()) { | |
585 // TODO(achuith): There is an issue with the auto enrollment check and | |
586 // remote enrollment. crbug.com/403147. | |
587 ShowEnrollmentScreen(); | |
588 } else { | 586 } else { |
589 ShowAutoEnrollmentCheckScreen(); | 587 ShowAutoEnrollmentCheckScreen(); |
590 } | 588 } |
591 } | 589 } |
592 | 590 |
593 void WizardController::OnEulaAccepted() { | 591 void WizardController::OnEulaAccepted() { |
594 time_eula_accepted_ = base::Time::Now(); | 592 time_eula_accepted_ = base::Time::Now(); |
595 StartupUtils::MarkEulaAccepted(); | 593 StartupUtils::MarkEulaAccepted(); |
596 InitiateMetricsReportingChange( | 594 InitiateMetricsReportingChange( |
597 usage_statistics_reporting_, | 595 usage_statistics_reporting_, |
(...skipping 648 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1246 | 1244 |
1247 if (!shark_connection_listener_) { | 1245 if (!shark_connection_listener_) { |
1248 shark_connection_listener_.reset( | 1246 shark_connection_listener_.reset( |
1249 new pairing_chromeos::SharkConnectionListener( | 1247 new pairing_chromeos::SharkConnectionListener( |
1250 base::Bind(&WizardController::OnSharkConnected, | 1248 base::Bind(&WizardController::OnSharkConnected, |
1251 weak_factory_.GetWeakPtr()))); | 1249 weak_factory_.GetWeakPtr()))); |
1252 } | 1250 } |
1253 } | 1251 } |
1254 | 1252 |
1255 void WizardController::OnSharkConnected( | 1253 void WizardController::OnSharkConnected( |
1256 scoped_ptr<pairing_chromeos::HostPairingController> pairing_controller) { | 1254 scoped_ptr<pairing_chromeos::HostPairingController> remora_controller) { |
1257 VLOG(1) << "OnSharkConnected"; | 1255 VLOG(1) << "OnSharkConnected"; |
1258 host_pairing_controller_ = pairing_controller.Pass(); | 1256 remora_controller_ = remora_controller.Pass(); |
1259 base::MessageLoop::current()->DeleteSoon( | 1257 base::MessageLoop::current()->DeleteSoon( |
1260 FROM_HERE, shark_connection_listener_.release()); | 1258 FROM_HERE, shark_connection_listener_.release()); |
1261 shark_controller_detected_ = true; | 1259 shark_controller_detected_ = true; |
1262 ShowHostPairingScreen(); | 1260 ShowHostPairingScreen(); |
1263 } | 1261 } |
1264 | 1262 |
1265 } // namespace chromeos | 1263 } // namespace chromeos |
OLD | NEW |