OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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_UI_OOBE_DISPLAY_H_ | 5 #ifndef CHROME_BROWSER_CHROMEOS_LOGIN_UI_OOBE_DISPLAY_H_ |
6 #define CHROME_BROWSER_CHROMEOS_LOGIN_UI_OOBE_DISPLAY_H_ | 6 #define CHROME_BROWSER_CHROMEOS_LOGIN_UI_OOBE_DISPLAY_H_ |
7 | 7 |
8 #include <string> | 8 #include <string> |
9 | 9 |
10 #include "base/basictypes.h" | 10 #include "base/basictypes.h" |
11 #include "base/callback.h" | 11 #include "base/callback.h" |
12 | 12 |
13 namespace chromeos { | 13 namespace chromeos { |
14 | 14 |
15 class AppLaunchSplashScreenActor; | 15 class AppLaunchSplashScreenActor; |
| 16 class AutoEnrollmentCheckScreenActor; |
16 class CoreOobeActor; | 17 class CoreOobeActor; |
| 18 class ControllerPairingScreenActor; |
17 class EnrollmentScreenActor; | 19 class EnrollmentScreenActor; |
18 class ErrorScreenActor; | 20 class ErrorScreenActor; |
19 class EulaScreenActor; | 21 class EulaScreenActor; |
20 class HIDDetectionScreenActor; | 22 class HIDDetectionScreenActor; |
21 class KioskAutolaunchScreenActor; | 23 class KioskAutolaunchScreenActor; |
22 class KioskEnableScreenActor; | 24 class KioskEnableScreenActor; |
| 25 class LocallyManagedUserCreationScreenHandler; |
23 class NetworkScreenActor; | 26 class NetworkScreenActor; |
24 class ResetScreenActor; | 27 class ResetScreenActor; |
25 class TermsOfServiceScreenActor; | 28 class TermsOfServiceScreenActor; |
26 class UpdateScreenActor; | 29 class UpdateScreenActor; |
27 class UserImageScreenActor; | 30 class UserImageScreenActor; |
28 // TODO(altimofeev): use real actors instead | |
29 class ViewScreenDelegate; | |
30 class WizardScreen; | |
31 class WrongHWIDScreenActor; | 31 class WrongHWIDScreenActor; |
32 class AutoEnrollmentCheckScreenActor; | |
33 class LocallyManagedUserCreationScreenHandler; | |
34 | 32 |
35 // Interface which is used by WizardController to do actual OOBE screens | 33 // Interface which is used by WizardController to do actual OOBE screens |
36 // showing. Also it provides actors for the OOBE screens. | 34 // showing. Also it provides actors for the OOBE screens. |
37 class OobeDisplay { | 35 class OobeDisplay { |
38 public: | 36 public: |
39 enum Screen { | 37 enum Screen { |
40 SCREEN_OOBE_HID_DETECTION = 0, | 38 SCREEN_OOBE_HID_DETECTION = 0, |
41 SCREEN_OOBE_NETWORK, | 39 SCREEN_OOBE_NETWORK, |
42 SCREEN_OOBE_EULA, | 40 SCREEN_OOBE_EULA, |
43 SCREEN_OOBE_UPDATE, | 41 SCREEN_OOBE_UPDATE, |
44 SCREEN_OOBE_ENROLLMENT, | 42 SCREEN_OOBE_ENROLLMENT, |
45 SCREEN_OOBE_RESET, | 43 SCREEN_OOBE_RESET, |
46 SCREEN_GAIA_SIGNIN, | 44 SCREEN_GAIA_SIGNIN, |
47 SCREEN_ACCOUNT_PICKER, | 45 SCREEN_ACCOUNT_PICKER, |
48 SCREEN_KIOSK_AUTOLAUNCH, | 46 SCREEN_KIOSK_AUTOLAUNCH, |
49 SCREEN_KIOSK_ENABLE, | 47 SCREEN_KIOSK_ENABLE, |
50 SCREEN_ERROR_MESSAGE, | 48 SCREEN_ERROR_MESSAGE, |
51 SCREEN_USER_IMAGE_PICKER, | 49 SCREEN_USER_IMAGE_PICKER, |
52 SCREEN_TPM_ERROR, | 50 SCREEN_TPM_ERROR, |
53 SCREEN_PASSWORD_CHANGED, | 51 SCREEN_PASSWORD_CHANGED, |
54 SCREEN_CREATE_MANAGED_USER_DIALOG, | 52 SCREEN_CREATE_MANAGED_USER_DIALOG, |
55 SCREEN_CREATE_MANAGED_USER_FLOW, | 53 SCREEN_CREATE_MANAGED_USER_FLOW, |
56 SCREEN_TERMS_OF_SERVICE, | 54 SCREEN_TERMS_OF_SERVICE, |
57 SCREEN_WRONG_HWID, | 55 SCREEN_WRONG_HWID, |
58 SCREEN_AUTO_ENROLLMENT_CHECK, | 56 SCREEN_AUTO_ENROLLMENT_CHECK, |
59 SCREEN_APP_LAUNCH_SPLASH, | 57 SCREEN_APP_LAUNCH_SPLASH, |
60 SCREEN_CONFIRM_PASSWORD, | 58 SCREEN_CONFIRM_PASSWORD, |
61 SCREEN_FATAL_ERROR, | 59 SCREEN_FATAL_ERROR, |
| 60 SCREEN_OOBE_CONTROLLER_PAIRING, |
62 SCREEN_UNKNOWN | 61 SCREEN_UNKNOWN |
63 }; | 62 }; |
64 | 63 |
65 virtual ~OobeDisplay() {} | 64 virtual ~OobeDisplay() {} |
66 | 65 |
67 // Shows the given screen. | |
68 virtual void ShowScreen(WizardScreen* screen) = 0; | |
69 | |
70 // Hides the given screen. | |
71 virtual void HideScreen(WizardScreen* screen) = 0; | |
72 | |
73 // Pointers to actors which should be used by the specific screens. Actors | 66 // Pointers to actors which should be used by the specific screens. Actors |
74 // must be owned by the OobeDisplay implementation. | 67 // must be owned by the OobeDisplay implementation. |
75 virtual CoreOobeActor* GetCoreOobeActor() = 0; | 68 virtual CoreOobeActor* GetCoreOobeActor() = 0; |
76 virtual UpdateScreenActor* GetUpdateScreenActor() = 0; | 69 virtual UpdateScreenActor* GetUpdateScreenActor() = 0; |
77 virtual NetworkScreenActor* GetNetworkScreenActor() = 0; | 70 virtual NetworkScreenActor* GetNetworkScreenActor() = 0; |
78 virtual EulaScreenActor* GetEulaScreenActor() = 0; | 71 virtual EulaScreenActor* GetEulaScreenActor() = 0; |
79 virtual EnrollmentScreenActor* GetEnrollmentScreenActor() = 0; | 72 virtual EnrollmentScreenActor* GetEnrollmentScreenActor() = 0; |
80 virtual ResetScreenActor* GetResetScreenActor() = 0; | 73 virtual ResetScreenActor* GetResetScreenActor() = 0; |
81 virtual KioskAutolaunchScreenActor* GetKioskAutolaunchScreenActor() = 0; | 74 virtual KioskAutolaunchScreenActor* GetKioskAutolaunchScreenActor() = 0; |
82 virtual KioskEnableScreenActor* GetKioskEnableScreenActor() = 0; | 75 virtual KioskEnableScreenActor* GetKioskEnableScreenActor() = 0; |
83 virtual TermsOfServiceScreenActor* GetTermsOfServiceScreenActor() = 0; | 76 virtual TermsOfServiceScreenActor* GetTermsOfServiceScreenActor() = 0; |
84 virtual UserImageScreenActor* GetUserImageScreenActor() = 0; | 77 virtual UserImageScreenActor* GetUserImageScreenActor() = 0; |
85 virtual ErrorScreenActor* GetErrorScreenActor() = 0; | 78 virtual ErrorScreenActor* GetErrorScreenActor() = 0; |
86 virtual WrongHWIDScreenActor* GetWrongHWIDScreenActor() = 0; | 79 virtual WrongHWIDScreenActor* GetWrongHWIDScreenActor() = 0; |
87 virtual AutoEnrollmentCheckScreenActor* | 80 virtual AutoEnrollmentCheckScreenActor* |
88 GetAutoEnrollmentCheckScreenActor() = 0; | 81 GetAutoEnrollmentCheckScreenActor() = 0; |
89 virtual HIDDetectionScreenActor* GetHIDDetectionScreenActor() = 0; | 82 virtual HIDDetectionScreenActor* GetHIDDetectionScreenActor() = 0; |
90 virtual LocallyManagedUserCreationScreenHandler* | 83 virtual LocallyManagedUserCreationScreenHandler* |
91 GetLocallyManagedUserCreationScreenActor() = 0; | 84 GetLocallyManagedUserCreationScreenActor() = 0; |
92 virtual AppLaunchSplashScreenActor* GetAppLaunchSplashScreenActor() = 0; | 85 virtual AppLaunchSplashScreenActor* GetAppLaunchSplashScreenActor() = 0; |
| 86 virtual ControllerPairingScreenActor* GetControllerPairingScreenActor() = 0; |
93 | 87 |
94 // Returns if JS side is fully loaded and ready to accept messages. | 88 // Returns if JS side is fully loaded and ready to accept messages. |
95 // If |false| is returned, then |display_is_ready_callback| is stored | 89 // If |false| is returned, then |display_is_ready_callback| is stored |
96 // and will be called once display is ready. | 90 // and will be called once display is ready. |
97 virtual bool IsJSReady(const base::Closure& display_is_ready_callback) = 0; | 91 virtual bool IsJSReady(const base::Closure& display_is_ready_callback) = 0; |
98 }; | 92 }; |
99 | 93 |
100 } // namespace chromeos | 94 } // namespace chromeos |
101 | 95 |
102 #endif // CHROME_BROWSER_CHROMEOS_LOGIN_UI_OOBE_DISPLAY_H_ | 96 #endif // CHROME_BROWSER_CHROMEOS_LOGIN_UI_OOBE_DISPLAY_H_ |
OLD | NEW |