| 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 #ifndef CHROME_BROWSER_CHROMEOS_LOGIN_WIZARD_CONTROLLER_H_ | 5 #ifndef CHROME_BROWSER_CHROMEOS_LOGIN_WIZARD_CONTROLLER_H_ |
| 6 #define CHROME_BROWSER_CHROMEOS_LOGIN_WIZARD_CONTROLLER_H_ | 6 #define CHROME_BROWSER_CHROMEOS_LOGIN_WIZARD_CONTROLLER_H_ |
| 7 | 7 |
| 8 #include <string> | 8 #include <string> |
| 9 | 9 |
| 10 #include "base/compiler_specific.h" | 10 #include "base/compiler_specific.h" |
| (...skipping 20 matching lines...) Expand all Loading... |
| 31 class HTMLPageScreen; | 31 class HTMLPageScreen; |
| 32 class LoginDisplayHost; | 32 class LoginDisplayHost; |
| 33 class NetworkScreen; | 33 class NetworkScreen; |
| 34 class OobeDisplay; | 34 class OobeDisplay; |
| 35 class RegistrationScreen; | 35 class RegistrationScreen; |
| 36 class ResetScreen; | 36 class ResetScreen; |
| 37 class TermsOfServiceScreen; | 37 class TermsOfServiceScreen; |
| 38 class UpdateScreen; | 38 class UpdateScreen; |
| 39 class UserImageScreen; | 39 class UserImageScreen; |
| 40 class WizardScreen; | 40 class WizardScreen; |
| 41 class WrongHWIDScreen; |
| 41 | 42 |
| 42 // Class that manages control flow between wizard screens. Wizard controller | 43 // Class that manages control flow between wizard screens. Wizard controller |
| 43 // interacts with screen controllers to move the user between screens. | 44 // interacts with screen controllers to move the user between screens. |
| 44 class WizardController : public ScreenObserver { | 45 class WizardController : public ScreenObserver { |
| 45 public: | 46 public: |
| 46 // Observes screen changes. | 47 // Observes screen changes. |
| 47 class Observer { | 48 class Observer { |
| 48 public: | 49 public: |
| 49 // Called before a screen change happens. | 50 // Called before a screen change happens. |
| 50 virtual void OnScreenChanged(WizardScreen* next_screen) = 0; | 51 virtual void OnScreenChanged(WizardScreen* next_screen) = 0; |
| (...skipping 83 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 134 // Lazy initializers and getters for screens. | 135 // Lazy initializers and getters for screens. |
| 135 NetworkScreen* GetNetworkScreen(); | 136 NetworkScreen* GetNetworkScreen(); |
| 136 UpdateScreen* GetUpdateScreen(); | 137 UpdateScreen* GetUpdateScreen(); |
| 137 UserImageScreen* GetUserImageScreen(); | 138 UserImageScreen* GetUserImageScreen(); |
| 138 EulaScreen* GetEulaScreen(); | 139 EulaScreen* GetEulaScreen(); |
| 139 RegistrationScreen* GetRegistrationScreen(); | 140 RegistrationScreen* GetRegistrationScreen(); |
| 140 HTMLPageScreen* GetHTMLPageScreen(); | 141 HTMLPageScreen* GetHTMLPageScreen(); |
| 141 EnterpriseEnrollmentScreen* GetEnterpriseEnrollmentScreen(); | 142 EnterpriseEnrollmentScreen* GetEnterpriseEnrollmentScreen(); |
| 142 ResetScreen* GetResetScreen(); | 143 ResetScreen* GetResetScreen(); |
| 143 TermsOfServiceScreen* GetTermsOfServiceScreen(); | 144 TermsOfServiceScreen* GetTermsOfServiceScreen(); |
| 145 WrongHWIDScreen* GetWrongHWIDScreen(); |
| 144 | 146 |
| 145 // Returns a pointer to the current screen or NULL if there's no such | 147 // Returns a pointer to the current screen or NULL if there's no such |
| 146 // screen. | 148 // screen. |
| 147 WizardScreen* current_screen() const { return current_screen_; } | 149 WizardScreen* current_screen() const { return current_screen_; } |
| 148 | 150 |
| 149 // Returns true if the current wizard instance has reached the login screen. | 151 // Returns true if the current wizard instance has reached the login screen. |
| 150 bool login_screen_started() const { return login_screen_started_; } | 152 bool login_screen_started() const { return login_screen_started_; } |
| 151 | 153 |
| 152 static const char kNetworkScreenName[]; | 154 static const char kNetworkScreenName[]; |
| 153 static const char kLoginScreenName[]; | 155 static const char kLoginScreenName[]; |
| 154 static const char kUpdateScreenName[]; | 156 static const char kUpdateScreenName[]; |
| 155 static const char kUserImageScreenName[]; | 157 static const char kUserImageScreenName[]; |
| 156 static const char kRegistrationScreenName[]; | 158 static const char kRegistrationScreenName[]; |
| 157 static const char kOutOfBoxScreenName[]; | 159 static const char kOutOfBoxScreenName[]; |
| 158 static const char kTestNoScreenName[]; | 160 static const char kTestNoScreenName[]; |
| 159 static const char kEulaScreenName[]; | 161 static const char kEulaScreenName[]; |
| 160 static const char kHTMLPageScreenName[]; | 162 static const char kHTMLPageScreenName[]; |
| 161 static const char kEnterpriseEnrollmentScreenName[]; | 163 static const char kEnterpriseEnrollmentScreenName[]; |
| 162 static const char kResetScreenName[]; | 164 static const char kResetScreenName[]; |
| 163 static const char kTermsOfServiceScreenName[]; | 165 static const char kTermsOfServiceScreenName[]; |
| 166 static const char kWrongHWIDScreenName[]; |
| 164 | 167 |
| 165 private: | 168 private: |
| 166 // Show specific screen. | 169 // Show specific screen. |
| 167 void ShowNetworkScreen(); | 170 void ShowNetworkScreen(); |
| 168 void ShowUpdateScreen(); | 171 void ShowUpdateScreen(); |
| 169 void ShowUserImageScreen(); | 172 void ShowUserImageScreen(); |
| 170 void ShowEulaScreen(); | 173 void ShowEulaScreen(); |
| 171 void ShowRegistrationScreen(); | 174 void ShowRegistrationScreen(); |
| 172 void ShowHTMLPageScreen(); | 175 void ShowHTMLPageScreen(); |
| 173 void ShowEnterpriseEnrollmentScreen(); | 176 void ShowEnterpriseEnrollmentScreen(); |
| 174 void ShowResetScreen(); | 177 void ShowResetScreen(); |
| 175 void ShowTermsOfServiceScreen(); | 178 void ShowTermsOfServiceScreen(); |
| 179 void ShowWrongHWIDScreen(); |
| 176 | 180 |
| 177 // Shows images login screen. | 181 // Shows images login screen. |
| 178 void ShowLoginScreen(); | 182 void ShowLoginScreen(); |
| 179 | 183 |
| 180 // Resumes a pending login screen. | 184 // Resumes a pending login screen. |
| 181 void ResumeLoginScreen(); | 185 void ResumeLoginScreen(); |
| 182 | 186 |
| 183 // Exit handlers: | 187 // Exit handlers: |
| 184 void OnNetworkConnected(); | 188 void OnNetworkConnected(); |
| 185 void OnNetworkOffline(); | 189 void OnNetworkOffline(); |
| 186 void OnConnectionFailed(); | 190 void OnConnectionFailed(); |
| 187 void OnUpdateCompleted(); | 191 void OnUpdateCompleted(); |
| 188 void OnEulaAccepted(); | 192 void OnEulaAccepted(); |
| 189 void OnUpdateErrorCheckingForUpdate(); | 193 void OnUpdateErrorCheckingForUpdate(); |
| 190 void OnUpdateErrorUpdating(); | 194 void OnUpdateErrorUpdating(); |
| 191 void OnUserImageSelected(); | 195 void OnUserImageSelected(); |
| 192 void OnUserImageSkipped(); | 196 void OnUserImageSkipped(); |
| 193 void OnRegistrationSuccess(); | 197 void OnRegistrationSuccess(); |
| 194 void OnRegistrationSkipped(); | 198 void OnRegistrationSkipped(); |
| 195 void OnEnterpriseEnrollmentDone(); | 199 void OnEnterpriseEnrollmentDone(); |
| 196 void OnEnterpriseAutoEnrollmentDone(); | 200 void OnEnterpriseAutoEnrollmentDone(); |
| 197 void OnResetCanceled(); | 201 void OnResetCanceled(); |
| 202 void OnWrongHWIDWarningSkipped(); |
| 198 void OnOOBECompleted(); | 203 void OnOOBECompleted(); |
| 199 void OnTermsOfServiceDeclined(); | 204 void OnTermsOfServiceDeclined(); |
| 200 void OnTermsOfServiceAccepted(); | 205 void OnTermsOfServiceAccepted(); |
| 201 | 206 |
| 202 // Loads brand code on I/O enabled thread and stores to Local State. | 207 // Loads brand code on I/O enabled thread and stores to Local State. |
| 203 void LoadBrandCodeFromFile(); | 208 void LoadBrandCodeFromFile(); |
| 204 | 209 |
| 205 // Called after all post-EULA blocking tasks have been completed. | 210 // Called after all post-EULA blocking tasks have been completed. |
| 206 void OnEulaBlockingTasksDone(); | 211 void OnEulaBlockingTasksDone(); |
| 207 | 212 |
| (...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 246 scoped_ptr<NetworkScreen> network_screen_; | 251 scoped_ptr<NetworkScreen> network_screen_; |
| 247 scoped_ptr<UpdateScreen> update_screen_; | 252 scoped_ptr<UpdateScreen> update_screen_; |
| 248 scoped_ptr<UserImageScreen> user_image_screen_; | 253 scoped_ptr<UserImageScreen> user_image_screen_; |
| 249 scoped_ptr<EulaScreen> eula_screen_; | 254 scoped_ptr<EulaScreen> eula_screen_; |
| 250 scoped_ptr<RegistrationScreen> registration_screen_; | 255 scoped_ptr<RegistrationScreen> registration_screen_; |
| 251 scoped_ptr<ResetScreen> reset_screen_; | 256 scoped_ptr<ResetScreen> reset_screen_; |
| 252 scoped_ptr<HTMLPageScreen> html_page_screen_; | 257 scoped_ptr<HTMLPageScreen> html_page_screen_; |
| 253 scoped_ptr<EnterpriseEnrollmentScreen> | 258 scoped_ptr<EnterpriseEnrollmentScreen> |
| 254 enterprise_enrollment_screen_; | 259 enterprise_enrollment_screen_; |
| 255 scoped_ptr<TermsOfServiceScreen> terms_of_service_screen_; | 260 scoped_ptr<TermsOfServiceScreen> terms_of_service_screen_; |
| 261 scoped_ptr<WrongHWIDScreen> wrong_hwid_screen_; |
| 256 | 262 |
| 257 // Screen that's currently active. | 263 // Screen that's currently active. |
| 258 WizardScreen* current_screen_; | 264 WizardScreen* current_screen_; |
| 259 | 265 |
| 260 // Screen that was active before, or NULL for login screen. | 266 // Screen that was active before, or NULL for login screen. |
| 261 WizardScreen* previous_screen_; | 267 WizardScreen* previous_screen_; |
| 262 | 268 |
| 263 std::string username_; | 269 std::string username_; |
| 264 std::string password_; | 270 std::string password_; |
| 265 | 271 |
| (...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 305 FRIEND_TEST_ALL_PREFIXES(WizardControllerFlowTest, Accelerators); | 311 FRIEND_TEST_ALL_PREFIXES(WizardControllerFlowTest, Accelerators); |
| 306 friend class WizardControllerFlowTest; | 312 friend class WizardControllerFlowTest; |
| 307 friend class WizardInProcessBrowserTest; | 313 friend class WizardInProcessBrowserTest; |
| 308 | 314 |
| 309 DISALLOW_COPY_AND_ASSIGN(WizardController); | 315 DISALLOW_COPY_AND_ASSIGN(WizardController); |
| 310 }; | 316 }; |
| 311 | 317 |
| 312 } // namespace chromeos | 318 } // namespace chromeos |
| 313 | 319 |
| 314 #endif // CHROME_BROWSER_CHROMEOS_LOGIN_WIZARD_CONTROLLER_H_ | 320 #endif // CHROME_BROWSER_CHROMEOS_LOGIN_WIZARD_CONTROLLER_H_ |
| OLD | NEW |