Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(866)

Side by Side Diff: chrome/browser/chromeos/login/wizard_controller.cc

Issue 10928088: Factory reset screen is added (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 8 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
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 15 matching lines...) Expand all
26 #include "chrome/browser/chromeos/login/enrollment/enterprise_enrollment_screen. h" 26 #include "chrome/browser/chromeos/login/enrollment/enterprise_enrollment_screen. h"
27 #include "chrome/browser/chromeos/login/eula_screen.h" 27 #include "chrome/browser/chromeos/login/eula_screen.h"
28 #include "chrome/browser/chromeos/login/existing_user_controller.h" 28 #include "chrome/browser/chromeos/login/existing_user_controller.h"
29 #include "chrome/browser/chromeos/login/helper.h" 29 #include "chrome/browser/chromeos/login/helper.h"
30 #include "chrome/browser/chromeos/login/html_page_screen.h" 30 #include "chrome/browser/chromeos/login/html_page_screen.h"
31 #include "chrome/browser/chromeos/login/login_display_host.h" 31 #include "chrome/browser/chromeos/login/login_display_host.h"
32 #include "chrome/browser/chromeos/login/login_utils.h" 32 #include "chrome/browser/chromeos/login/login_utils.h"
33 #include "chrome/browser/chromeos/login/network_screen.h" 33 #include "chrome/browser/chromeos/login/network_screen.h"
34 #include "chrome/browser/chromeos/login/oobe_display.h" 34 #include "chrome/browser/chromeos/login/oobe_display.h"
35 #include "chrome/browser/chromeos/login/registration_screen.h" 35 #include "chrome/browser/chromeos/login/registration_screen.h"
36 #include "chrome/browser/chromeos/login/reset_screen.h"
36 #include "chrome/browser/chromeos/login/update_screen.h" 37 #include "chrome/browser/chromeos/login/update_screen.h"
37 #include "chrome/browser/chromeos/login/user_image_screen.h" 38 #include "chrome/browser/chromeos/login/user_image_screen.h"
38 #include "chrome/browser/chromeos/login/user_manager.h" 39 #include "chrome/browser/chromeos/login/user_manager.h"
39 #include "chrome/browser/chromeos/settings/cros_settings.h" 40 #include "chrome/browser/chromeos/settings/cros_settings.h"
40 #include "chrome/browser/chromeos/settings/cros_settings_names.h" 41 #include "chrome/browser/chromeos/settings/cros_settings_names.h"
41 #include "chrome/browser/prefs/pref_service.h" 42 #include "chrome/browser/prefs/pref_service.h"
42 #include "chrome/browser/profiles/profile_manager.h" 43 #include "chrome/browser/profiles/profile_manager.h"
43 #include "chrome/browser/ui/options/options_util.h" 44 #include "chrome/browser/ui/options/options_util.h"
44 #include "chrome/common/chrome_notification_types.h" 45 #include "chrome/common/chrome_notification_types.h"
45 #include "chrome/common/pref_names.h" 46 #include "chrome/common/pref_names.h"
(...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after
103 namespace chromeos { 104 namespace chromeos {
104 105
105 const char WizardController::kNetworkScreenName[] = "network"; 106 const char WizardController::kNetworkScreenName[] = "network";
106 const char WizardController::kLoginScreenName[] = "login"; 107 const char WizardController::kLoginScreenName[] = "login";
107 const char WizardController::kUpdateScreenName[] = "update"; 108 const char WizardController::kUpdateScreenName[] = "update";
108 const char WizardController::kUserImageScreenName[] = "image"; 109 const char WizardController::kUserImageScreenName[] = "image";
109 const char WizardController::kEulaScreenName[] = "eula"; 110 const char WizardController::kEulaScreenName[] = "eula";
110 const char WizardController::kRegistrationScreenName[] = "register"; 111 const char WizardController::kRegistrationScreenName[] = "register";
111 const char WizardController::kHTMLPageScreenName[] = "html"; 112 const char WizardController::kHTMLPageScreenName[] = "html";
112 const char WizardController::kEnterpriseEnrollmentScreenName[] = "enroll"; 113 const char WizardController::kEnterpriseEnrollmentScreenName[] = "enroll";
114 const char WizardController::kResetScreenName[] = "reset";
113 115
114 // Passing this parameter as a "first screen" initiates full OOBE flow. 116 // Passing this parameter as a "first screen" initiates full OOBE flow.
115 const char WizardController::kOutOfBoxScreenName[] = "oobe"; 117 const char WizardController::kOutOfBoxScreenName[] = "oobe";
116 118
117 // Special test value that commands not to create any window yet. 119 // Special test value that commands not to create any window yet.
118 const char WizardController::kTestNoScreenName[] = "test:nowindow"; 120 const char WizardController::kTestNoScreenName[] = "test:nowindow";
119 121
120 // Initialize default controller. 122 // Initialize default controller.
121 // static 123 // static
122 WizardController* WizardController::default_controller_ = NULL; 124 WizardController* WizardController::default_controller_ = NULL;
(...skipping 114 matching lines...) Expand 10 before | Expand all | Expand 10 after
237 chromeos::EnterpriseEnrollmentScreen* 239 chromeos::EnterpriseEnrollmentScreen*
238 WizardController::GetEnterpriseEnrollmentScreen() { 240 WizardController::GetEnterpriseEnrollmentScreen() {
239 if (!enterprise_enrollment_screen_.get()) { 241 if (!enterprise_enrollment_screen_.get()) {
240 enterprise_enrollment_screen_.reset( 242 enterprise_enrollment_screen_.reset(
241 new chromeos::EnterpriseEnrollmentScreen( 243 new chromeos::EnterpriseEnrollmentScreen(
242 this, oobe_display_->GetEnterpriseEnrollmentScreenActor())); 244 this, oobe_display_->GetEnterpriseEnrollmentScreenActor()));
243 } 245 }
244 return enterprise_enrollment_screen_.get(); 246 return enterprise_enrollment_screen_.get();
245 } 247 }
246 248
249 chromeos::ResetScreen* WizardController::GetResetScreen() {
250 if (!reset_screen_.get()) {
251 reset_screen_.reset(
252 new chromeos::ResetScreen(this, oobe_display_->GetResetScreenActor()));
253 }
254 return reset_screen_.get();
255 }
256
247 void WizardController::ShowNetworkScreen() { 257 void WizardController::ShowNetworkScreen() {
248 VLOG(1) << "Showing network screen."; 258 VLOG(1) << "Showing network screen.";
249 SetStatusAreaVisible(false); 259 SetStatusAreaVisible(false);
250 SetCurrentScreen(GetNetworkScreen()); 260 SetCurrentScreen(GetNetworkScreen());
251 } 261 }
252 262
253 void WizardController::ShowLoginScreen() { 263 void WizardController::ShowLoginScreen() {
254 if (!time_eula_accepted_.is_null()) { 264 if (!time_eula_accepted_.is_null()) {
255 base::TimeDelta delta = base::Time::Now() - time_eula_accepted_; 265 base::TimeDelta delta = base::Time::Now() - time_eula_accepted_;
256 UMA_HISTOGRAM_MEDIUM_TIMES("OOBE.EULAToSignInTime", delta); 266 UMA_HISTOGRAM_MEDIUM_TIMES("OOBE.EULAToSignInTime", delta);
(...skipping 68 matching lines...) Expand 10 before | Expand all | Expand 10 after
325 if (screen_parameters_.get()) { 335 if (screen_parameters_.get()) {
326 screen_parameters_->GetBoolean("is_auto_enrollment", &is_auto_enrollment); 336 screen_parameters_->GetBoolean("is_auto_enrollment", &is_auto_enrollment);
327 screen_parameters_->GetString("user", &user); 337 screen_parameters_->GetString("user", &user);
328 } 338 }
329 339
330 EnterpriseEnrollmentScreen* screen = GetEnterpriseEnrollmentScreen(); 340 EnterpriseEnrollmentScreen* screen = GetEnterpriseEnrollmentScreen();
331 screen->SetParameters(is_auto_enrollment, user); 341 screen->SetParameters(is_auto_enrollment, user);
332 SetCurrentScreen(screen); 342 SetCurrentScreen(screen);
333 } 343 }
334 344
345 void WizardController::ShowResetScreen() {
346 VLOG(1) << "Showing reset screen.";
347 SetStatusAreaVisible(false);
348 SetCurrentScreen(GetResetScreen());
349 }
350
335 void WizardController::SkipToLoginForTesting() { 351 void WizardController::SkipToLoginForTesting() {
336 MarkEulaAccepted(); 352 MarkEulaAccepted();
337 PerformPostEulaActions(); 353 PerformPostEulaActions();
338 PerformPostUpdateActions(); 354 PerformPostUpdateActions();
339 ShowLoginScreen(); 355 ShowLoginScreen();
340 } 356 }
341 357
342 void WizardController::SkipImageSelectionForTesting() { 358 void WizardController::SkipImageSelectionForTesting() {
343 skip_user_image_selection_ = true; 359 skip_user_image_selection_ = true;
344 } 360 }
(...skipping 259 matching lines...) Expand 10 before | Expand all | Expand 10 after
604 ShowUserImageScreen(); 620 ShowUserImageScreen();
605 } else if (screen_name == kEulaScreenName) { 621 } else if (screen_name == kEulaScreenName) {
606 ShowEulaScreen(); 622 ShowEulaScreen();
607 } else if (screen_name == kRegistrationScreenName) { 623 } else if (screen_name == kRegistrationScreenName) {
608 if (is_official_build_) { 624 if (is_official_build_) {
609 ShowRegistrationScreen(); 625 ShowRegistrationScreen();
610 } else { 626 } else {
611 // Just proceed to image screen. 627 // Just proceed to image screen.
612 OnRegistrationSuccess(); 628 OnRegistrationSuccess();
613 } 629 }
630 } else if (screen_name == kResetScreenName) {
631 ShowResetScreen();
614 } else if (screen_name == kHTMLPageScreenName) { 632 } else if (screen_name == kHTMLPageScreenName) {
615 ShowHTMLPageScreen(); 633 ShowHTMLPageScreen();
616 } else if (screen_name == kEnterpriseEnrollmentScreenName) { 634 } else if (screen_name == kEnterpriseEnrollmentScreenName) {
617 ShowEnterpriseEnrollmentScreen(); 635 ShowEnterpriseEnrollmentScreen();
618 } else if (screen_name != kTestNoScreenName) { 636 } else if (screen_name != kTestNoScreenName) {
619 if (is_out_of_box_) { 637 if (is_out_of_box_) {
620 ShowNetworkScreen(); 638 ShowNetworkScreen();
621 } else { 639 } else {
622 ShowLoginScreen(); 640 ShowLoginScreen();
623 } 641 }
(...skipping 138 matching lines...) Expand 10 before | Expand all | Expand 10 after
762 case EULA_BACK: 780 case EULA_BACK:
763 ShowNetworkScreen(); 781 ShowNetworkScreen();
764 break; 782 break;
765 case REGISTRATION_SUCCESS: 783 case REGISTRATION_SUCCESS:
766 OnRegistrationSuccess(); 784 OnRegistrationSuccess();
767 break; 785 break;
768 case REGISTRATION_SKIPPED: 786 case REGISTRATION_SKIPPED:
769 OnRegistrationSkipped(); 787 OnRegistrationSkipped();
770 break; 788 break;
771 case ENTERPRISE_ENROLLMENT_COMPLETED: 789 case ENTERPRISE_ENROLLMENT_COMPLETED:
790 case RESET_CANCELED:
772 OnEnterpriseEnrollmentDone(); 791 OnEnterpriseEnrollmentDone();
Nikita (slow) 2012/09/12 13:22:21 You should not rely on OnEnterpriseEnrollmentDone(
glotov 2012/09/12 22:40:25 But we are not supposed to run from other screen e
Nikita (slow) 2012/09/13 07:35:59 That may change in future so your new code should
glotov 2012/09/14 16:37:02 Done.
773 break; 792 break;
774 case ENTERPRISE_AUTO_MAGIC_ENROLLMENT_COMPLETED: 793 case ENTERPRISE_AUTO_MAGIC_ENROLLMENT_COMPLETED:
775 OnEnterpriseAutoEnrollmentDone(); 794 OnEnterpriseAutoEnrollmentDone();
776 break; 795 break;
777 default: 796 default:
778 NOTREACHED(); 797 NOTREACHED();
779 } 798 }
780 } 799 }
781 800
782 void WizardController::OnSetUserNamePassword(const std::string& username, 801 void WizardController::OnSetUserNamePassword(const std::string& username,
(...skipping 15 matching lines...) Expand all
798 return zero_delay_enabled_; 817 return zero_delay_enabled_;
799 } 818 }
800 819
801 // static 820 // static
802 void WizardController::SetZeroDelays() { 821 void WizardController::SetZeroDelays() {
803 kShowDelayMs = 0; 822 kShowDelayMs = 0;
804 zero_delay_enabled_ = true; 823 zero_delay_enabled_ = true;
805 } 824 }
806 825
807 } // namespace chromeos 826 } // namespace chromeos
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698