| 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 19 matching lines...) Expand all Loading... |
| 30 class EulaScreen; | 30 class EulaScreen; |
| 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 UpdateScreen; | 37 class UpdateScreen; |
| 38 class UserImageScreen; | 38 class UserImageScreen; |
| 39 class WizardScreen; | 39 class WizardScreen; |
| 40 class WrongHWIDScreen; |
| 40 | 41 |
| 41 // Class that manages control flow between wizard screens. Wizard controller | 42 // Class that manages control flow between wizard screens. Wizard controller |
| 42 // interacts with screen controllers to move the user between screens. | 43 // interacts with screen controllers to move the user between screens. |
| 43 class WizardController : public ScreenObserver { | 44 class WizardController : public ScreenObserver { |
| 44 public: | 45 public: |
| 45 // Observes screen changes. | 46 // Observes screen changes. |
| 46 class Observer { | 47 class Observer { |
| 47 public: | 48 public: |
| 48 // Called before a screen change happens. | 49 // Called before a screen change happens. |
| 49 virtual void OnScreenChanged(WizardScreen* next_screen) = 0; | 50 virtual void OnScreenChanged(WizardScreen* next_screen) = 0; |
| (...skipping 80 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 130 | 131 |
| 131 // Lazy initializers and getters for screens. | 132 // Lazy initializers and getters for screens. |
| 132 NetworkScreen* GetNetworkScreen(); | 133 NetworkScreen* GetNetworkScreen(); |
| 133 UpdateScreen* GetUpdateScreen(); | 134 UpdateScreen* GetUpdateScreen(); |
| 134 UserImageScreen* GetUserImageScreen(); | 135 UserImageScreen* GetUserImageScreen(); |
| 135 EulaScreen* GetEulaScreen(); | 136 EulaScreen* GetEulaScreen(); |
| 136 RegistrationScreen* GetRegistrationScreen(); | 137 RegistrationScreen* GetRegistrationScreen(); |
| 137 HTMLPageScreen* GetHTMLPageScreen(); | 138 HTMLPageScreen* GetHTMLPageScreen(); |
| 138 EnterpriseEnrollmentScreen* GetEnterpriseEnrollmentScreen(); | 139 EnterpriseEnrollmentScreen* GetEnterpriseEnrollmentScreen(); |
| 139 ResetScreen* GetResetScreen(); | 140 ResetScreen* GetResetScreen(); |
| 141 WrongHWIDScreen* GetWrongHWIDScreen(); |
| 140 | 142 |
| 141 // Returns a pointer to the current screen or NULL if there's no such | 143 // Returns a pointer to the current screen or NULL if there's no such |
| 142 // screen. | 144 // screen. |
| 143 WizardScreen* current_screen() const { return current_screen_; } | 145 WizardScreen* current_screen() const { return current_screen_; } |
| 144 | 146 |
| 145 // Returns true if the current wizard instance has reached the login screen. | 147 // Returns true if the current wizard instance has reached the login screen. |
| 146 bool login_screen_started() const { return login_screen_started_; } | 148 bool login_screen_started() const { return login_screen_started_; } |
| 147 | 149 |
| 148 static const char kNetworkScreenName[]; | 150 static const char kNetworkScreenName[]; |
| 149 static const char kLoginScreenName[]; | 151 static const char kLoginScreenName[]; |
| 150 static const char kUpdateScreenName[]; | 152 static const char kUpdateScreenName[]; |
| 151 static const char kUserImageScreenName[]; | 153 static const char kUserImageScreenName[]; |
| 152 static const char kRegistrationScreenName[]; | 154 static const char kRegistrationScreenName[]; |
| 153 static const char kOutOfBoxScreenName[]; | 155 static const char kOutOfBoxScreenName[]; |
| 154 static const char kTestNoScreenName[]; | 156 static const char kTestNoScreenName[]; |
| 155 static const char kEulaScreenName[]; | 157 static const char kEulaScreenName[]; |
| 156 static const char kHTMLPageScreenName[]; | 158 static const char kHTMLPageScreenName[]; |
| 157 static const char kEnterpriseEnrollmentScreenName[]; | 159 static const char kEnterpriseEnrollmentScreenName[]; |
| 158 static const char kResetScreenName[]; | 160 static const char kResetScreenName[]; |
| 161 static const char kWrongHWIDScreenName[]; |
| 159 | 162 |
| 160 private: | 163 private: |
| 161 // Show specific screen. | 164 // Show specific screen. |
| 162 void ShowNetworkScreen(); | 165 void ShowNetworkScreen(); |
| 163 void ShowUpdateScreen(); | 166 void ShowUpdateScreen(); |
| 164 void ShowUserImageScreen(); | 167 void ShowUserImageScreen(); |
| 165 void ShowEulaScreen(); | 168 void ShowEulaScreen(); |
| 166 void ShowRegistrationScreen(); | 169 void ShowRegistrationScreen(); |
| 167 void ShowHTMLPageScreen(); | 170 void ShowHTMLPageScreen(); |
| 168 void ShowEnterpriseEnrollmentScreen(); | 171 void ShowEnterpriseEnrollmentScreen(); |
| 169 void ShowResetScreen(); | 172 void ShowResetScreen(); |
| 173 void ShowWrongHWIDScreen(); |
| 170 | 174 |
| 171 // Shows images login screen. | 175 // Shows images login screen. |
| 172 void ShowLoginScreen(); | 176 void ShowLoginScreen(); |
| 173 | 177 |
| 174 // Resumes a pending login screen. | 178 // Resumes a pending login screen. |
| 175 void ResumeLoginScreen(); | 179 void ResumeLoginScreen(); |
| 176 | 180 |
| 177 // Exit handlers: | 181 // Exit handlers: |
| 178 void OnNetworkConnected(); | 182 void OnNetworkConnected(); |
| 179 void OnNetworkOffline(); | 183 void OnNetworkOffline(); |
| 180 void OnConnectionFailed(); | 184 void OnConnectionFailed(); |
| 181 void OnUpdateCompleted(); | 185 void OnUpdateCompleted(); |
| 182 void OnEulaAccepted(); | 186 void OnEulaAccepted(); |
| 183 void OnUpdateErrorCheckingForUpdate(); | 187 void OnUpdateErrorCheckingForUpdate(); |
| 184 void OnUpdateErrorUpdating(); | 188 void OnUpdateErrorUpdating(); |
| 185 void OnUserImageSelected(); | 189 void OnUserImageSelected(); |
| 186 void OnUserImageSkipped(); | 190 void OnUserImageSkipped(); |
| 187 void OnRegistrationSuccess(); | 191 void OnRegistrationSuccess(); |
| 188 void OnRegistrationSkipped(); | 192 void OnRegistrationSkipped(); |
| 189 void OnEnterpriseEnrollmentDone(); | 193 void OnEnterpriseEnrollmentDone(); |
| 190 void OnEnterpriseAutoEnrollmentDone(); | 194 void OnEnterpriseAutoEnrollmentDone(); |
| 191 void OnResetCanceled(); | 195 void OnResetCanceled(); |
| 196 void OnWrongHWIDWarningSkipped(); |
| 192 void OnOOBECompleted(); | 197 void OnOOBECompleted(); |
| 193 | 198 |
| 194 // Loads brand code on I/O enabled thread and stores to Local State. | 199 // Loads brand code on I/O enabled thread and stores to Local State. |
| 195 void LoadBrandCodeFromFile(); | 200 void LoadBrandCodeFromFile(); |
| 196 | 201 |
| 197 // Called after all post-EULA blocking tasks have been completed. | 202 // Called after all post-EULA blocking tasks have been completed. |
| 198 void OnEulaBlockingTasksDone(); | 203 void OnEulaBlockingTasksDone(); |
| 199 | 204 |
| 200 // Shows update screen and starts update process. | 205 // Shows update screen and starts update process. |
| 201 void InitiateOOBEUpdate(); | 206 void InitiateOOBEUpdate(); |
| (...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 235 // Screens. | 240 // Screens. |
| 236 scoped_ptr<NetworkScreen> network_screen_; | 241 scoped_ptr<NetworkScreen> network_screen_; |
| 237 scoped_ptr<UpdateScreen> update_screen_; | 242 scoped_ptr<UpdateScreen> update_screen_; |
| 238 scoped_ptr<UserImageScreen> user_image_screen_; | 243 scoped_ptr<UserImageScreen> user_image_screen_; |
| 239 scoped_ptr<EulaScreen> eula_screen_; | 244 scoped_ptr<EulaScreen> eula_screen_; |
| 240 scoped_ptr<RegistrationScreen> registration_screen_; | 245 scoped_ptr<RegistrationScreen> registration_screen_; |
| 241 scoped_ptr<ResetScreen> reset_screen_; | 246 scoped_ptr<ResetScreen> reset_screen_; |
| 242 scoped_ptr<HTMLPageScreen> html_page_screen_; | 247 scoped_ptr<HTMLPageScreen> html_page_screen_; |
| 243 scoped_ptr<EnterpriseEnrollmentScreen> | 248 scoped_ptr<EnterpriseEnrollmentScreen> |
| 244 enterprise_enrollment_screen_; | 249 enterprise_enrollment_screen_; |
| 250 scoped_ptr<WrongHWIDScreen> wrong_hwid_screen_; |
| 245 | 251 |
| 246 // Screen that's currently active. | 252 // Screen that's currently active. |
| 247 WizardScreen* current_screen_; | 253 WizardScreen* current_screen_; |
| 248 | 254 |
| 249 // Screen that was active before, or NULL for login screen. | 255 // Screen that was active before, or NULL for login screen. |
| 250 WizardScreen* previous_screen_; | 256 WizardScreen* previous_screen_; |
| 251 | 257 |
| 252 std::string username_; | 258 std::string username_; |
| 253 std::string password_; | 259 std::string password_; |
| 254 | 260 |
| (...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 294 FRIEND_TEST_ALL_PREFIXES(WizardControllerFlowTest, Accelerators); | 300 FRIEND_TEST_ALL_PREFIXES(WizardControllerFlowTest, Accelerators); |
| 295 friend class WizardControllerFlowTest; | 301 friend class WizardControllerFlowTest; |
| 296 friend class WizardInProcessBrowserTest; | 302 friend class WizardInProcessBrowserTest; |
| 297 | 303 |
| 298 DISALLOW_COPY_AND_ASSIGN(WizardController); | 304 DISALLOW_COPY_AND_ASSIGN(WizardController); |
| 299 }; | 305 }; |
| 300 | 306 |
| 301 } // namespace chromeos | 307 } // namespace chromeos |
| 302 | 308 |
| 303 #endif // CHROME_BROWSER_CHROMEOS_LOGIN_WIZARD_CONTROLLER_H_ | 309 #endif // CHROME_BROWSER_CHROMEOS_LOGIN_WIZARD_CONTROLLER_H_ |
| OLD | NEW |