| 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 <map> | 8 #include <map> |
| 9 #include <string> | 9 #include <string> |
| 10 | 10 |
| 11 #include "base/basictypes.h" | 11 #include "base/basictypes.h" |
| 12 #include "base/compiler_specific.h" | 12 #include "base/compiler_specific.h" |
| 13 #include "base/containers/hash_tables.h" | 13 #include "base/containers/hash_tables.h" |
| 14 #include "base/gtest_prod_util.h" | 14 #include "base/gtest_prod_util.h" |
| 15 #include "base/memory/linked_ptr.h" | 15 #include "base/memory/linked_ptr.h" |
| 16 #include "base/memory/scoped_ptr.h" | 16 #include "base/memory/scoped_ptr.h" |
| 17 #include "base/memory/weak_ptr.h" | 17 #include "base/memory/weak_ptr.h" |
| 18 #include "base/observer_list.h" | 18 #include "base/observer_list.h" |
| 19 #include "base/time/time.h" | 19 #include "base/time/time.h" |
| 20 #include "base/timer/timer.h" | 20 #include "base/timer/timer.h" |
| 21 #include "chrome/browser/chromeos/accessibility/accessibility_manager.h" | 21 #include "chrome/browser/chromeos/accessibility/accessibility_manager.h" |
| 22 #include "chrome/browser/chromeos/login/screen_manager.h" | 22 #include "chrome/browser/chromeos/login/screen_manager.h" |
| 23 #include "chrome/browser/chromeos/login/screens/eula_screen.h" |
| 23 #include "chrome/browser/chromeos/login/screens/screen_observer.h" | 24 #include "chrome/browser/chromeos/login/screens/screen_observer.h" |
| 24 | 25 |
| 25 class PrefRegistrySimple; | 26 class PrefRegistrySimple; |
| 26 class PrefService; | 27 class PrefService; |
| 27 | 28 |
| 28 namespace base { | 29 namespace base { |
| 29 class DictionaryValue; | 30 class DictionaryValue; |
| 30 } | 31 } |
| 31 | 32 |
| 32 namespace pairing_chromeos { | 33 namespace pairing_chromeos { |
| (...skipping 14 matching lines...) Expand all Loading... |
| 47 class OobeDisplay; | 48 class OobeDisplay; |
| 48 class SimpleGeolocationProvider; | 49 class SimpleGeolocationProvider; |
| 49 class SupervisedUserCreationScreen; | 50 class SupervisedUserCreationScreen; |
| 50 class TimeZoneProvider; | 51 class TimeZoneProvider; |
| 51 struct TimeZoneResponseData; | 52 struct TimeZoneResponseData; |
| 52 class UpdateScreen; | 53 class UpdateScreen; |
| 53 class UserImageScreen; | 54 class UserImageScreen; |
| 54 | 55 |
| 55 // Class that manages control flow between wizard screens. Wizard controller | 56 // Class that manages control flow between wizard screens. Wizard controller |
| 56 // interacts with screen controllers to move the user between screens. | 57 // interacts with screen controllers to move the user between screens. |
| 57 class WizardController : public ScreenObserver, public ScreenManager { | 58 class WizardController : public ScreenObserver, |
| 59 public ScreenManager, |
| 60 public EulaScreen::Delegate { |
| 58 public: | 61 public: |
| 59 // Observes screen changes. | 62 // Observes screen changes. |
| 60 class Observer { | 63 class Observer { |
| 61 public: | 64 public: |
| 62 // Called before a screen change happens. | 65 // Called before a screen change happens. |
| 63 virtual void OnScreenChanged(BaseScreen* next_screen) = 0; | 66 virtual void OnScreenChanged(BaseScreen* next_screen) = 0; |
| 64 | 67 |
| 65 // Called after the browser session has started. | 68 // Called after the browser session has started. |
| 66 virtual void OnSessionStart() = 0; | 69 virtual void OnSessionStart() = 0; |
| 67 }; | 70 }; |
| (...skipping 164 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 232 void PerformPostEulaActions(); | 235 void PerformPostEulaActions(); |
| 233 | 236 |
| 234 // Actions that should be done right after update stage is finished. | 237 // Actions that should be done right after update stage is finished. |
| 235 void PerformOOBECompletedActions(); | 238 void PerformOOBECompletedActions(); |
| 236 | 239 |
| 237 // Overridden from ScreenObserver: | 240 // Overridden from ScreenObserver: |
| 238 virtual void OnExit(ExitCodes exit_code) override; | 241 virtual void OnExit(ExitCodes exit_code) override; |
| 239 virtual void ShowCurrentScreen() override; | 242 virtual void ShowCurrentScreen() override; |
| 240 virtual void OnSetUserNamePassword(const std::string& username, | 243 virtual void OnSetUserNamePassword(const std::string& username, |
| 241 const std::string& password) override; | 244 const std::string& password) override; |
| 242 virtual void SetUsageStatisticsReporting(bool val) override; | |
| 243 virtual bool GetUsageStatisticsReporting() const override; | |
| 244 virtual void SetHostConfiguration() override; | 245 virtual void SetHostConfiguration() override; |
| 245 virtual void ConfigureHost(bool accepted_eula, | 246 virtual void ConfigureHost(bool accepted_eula, |
| 246 const std::string& lang, | 247 const std::string& lang, |
| 247 const std::string& timezone, | 248 const std::string& timezone, |
| 248 bool send_reports, | 249 bool send_reports, |
| 249 const std::string& keyboard_layout) override; | 250 const std::string& keyboard_layout) override; |
| 250 virtual ErrorScreen* GetErrorScreen() override; | 251 virtual ErrorScreen* GetErrorScreen() override; |
| 251 virtual void ShowErrorScreen() override; | 252 virtual void ShowErrorScreen() override; |
| 252 virtual void HideErrorScreen(BaseScreen* parent_screen) override; | 253 virtual void HideErrorScreen(BaseScreen* parent_screen) override; |
| 253 | 254 |
| 255 // Overridden from EulaScreen::Delegate: |
| 256 virtual void SetUsageStatisticsReporting(bool val) override; |
| 257 virtual bool GetUsageStatisticsReporting() const override; |
| 258 |
| 254 // Notification of a change in the state of an accessibility setting. | 259 // Notification of a change in the state of an accessibility setting. |
| 255 void OnAccessibilityStatusChanged( | 260 void OnAccessibilityStatusChanged( |
| 256 const AccessibilityStatusEventDetails& details); | 261 const AccessibilityStatusEventDetails& details); |
| 257 | 262 |
| 258 // Switches from one screen to another. | 263 // Switches from one screen to another. |
| 259 void SetCurrentScreen(BaseScreen* screen); | 264 void SetCurrentScreen(BaseScreen* screen); |
| 260 | 265 |
| 261 // Switches from one screen to another with delay before showing. Calling | 266 // Switches from one screen to another with delay before showing. Calling |
| 262 // ShowCurrentScreen directly forces screen to be shown immediately. | 267 // ShowCurrentScreen directly forces screen to be shown immediately. |
| 263 void SetCurrentScreenSmooth(BaseScreen* screen, bool use_smoothing); | 268 void SetCurrentScreenSmooth(BaseScreen* screen, bool use_smoothing); |
| (...skipping 159 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 423 shark_connection_listener_; | 428 shark_connection_listener_; |
| 424 | 429 |
| 425 base::WeakPtrFactory<WizardController> weak_factory_; | 430 base::WeakPtrFactory<WizardController> weak_factory_; |
| 426 | 431 |
| 427 DISALLOW_COPY_AND_ASSIGN(WizardController); | 432 DISALLOW_COPY_AND_ASSIGN(WizardController); |
| 428 }; | 433 }; |
| 429 | 434 |
| 430 } // namespace chromeos | 435 } // namespace chromeos |
| 431 | 436 |
| 432 #endif // CHROME_BROWSER_CHROMEOS_LOGIN_WIZARD_CONTROLLER_H_ | 437 #endif // CHROME_BROWSER_CHROMEOS_LOGIN_WIZARD_CONTROLLER_H_ |
| OLD | NEW |