| OLD | NEW |
| 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 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_UI_WEBUI_CHROMEOS_LOGIN_OOBE_UI_H_ | 5 #ifndef CHROME_BROWSER_UI_WEBUI_CHROMEOS_LOGIN_OOBE_UI_H_ |
| 6 #define CHROME_BROWSER_UI_WEBUI_CHROMEOS_LOGIN_OOBE_UI_H_ | 6 #define CHROME_BROWSER_UI_WEBUI_CHROMEOS_LOGIN_OOBE_UI_H_ |
| 7 | 7 |
| 8 #include <map> | 8 #include <map> |
| 9 #include <memory> | 9 #include <memory> |
| 10 #include <string> | 10 #include <string> |
| (...skipping 10 matching lines...) Expand all Loading... |
| 21 | 21 |
| 22 namespace ash { | 22 namespace ash { |
| 23 class ScreenDimmer; | 23 class ScreenDimmer; |
| 24 } | 24 } |
| 25 | 25 |
| 26 namespace base { | 26 namespace base { |
| 27 class DictionaryValue; | 27 class DictionaryValue; |
| 28 } // namespace base | 28 } // namespace base |
| 29 | 29 |
| 30 namespace chromeos { | 30 namespace chromeos { |
| 31 class AppLaunchSplashScreenActor; | 31 class AppLaunchSplashScreenView; |
| 32 class ArcKioskSplashScreenActor; | 32 class ArcKioskSplashScreenView; |
| 33 class ArcTermsOfServiceScreenActor; | 33 class ArcTermsOfServiceScreenView; |
| 34 class AutoEnrollmentCheckScreenActor; | 34 class AutoEnrollmentCheckScreenView; |
| 35 class BaseScreenHandler; | 35 class BaseScreenHandler; |
| 36 class ControllerPairingScreenActor; | 36 class ControllerPairingScreenView; |
| 37 class CoreOobeActor; | 37 class CoreOobeView; |
| 38 class DeviceDisabledScreenActor; | 38 class DeviceDisabledScreenView; |
| 39 class EnableDebuggingScreenActor; | 39 class EnableDebuggingScreenView; |
| 40 class EnrollmentScreenActor; | 40 class EnrollmentScreenView; |
| 41 class EulaView; | 41 class EulaView; |
| 42 class ErrorScreen; | 42 class ErrorScreen; |
| 43 class ErrorScreenHandler; | 43 class ErrorScreenHandler; |
| 44 class GaiaScreenHandler; | 44 class GaiaScreenHandler; |
| 45 class HIDDetectionView; | 45 class HIDDetectionView; |
| 46 class HostPairingScreenActor; | 46 class HostPairingScreenView; |
| 47 class KioskAppMenuHandler; | 47 class KioskAppMenuHandler; |
| 48 class KioskAutolaunchScreenActor; | 48 class KioskAutolaunchScreenView; |
| 49 class KioskEnableScreenActor; | 49 class KioskEnableScreenView; |
| 50 class LoginScreenContext; | 50 class LoginScreenContext; |
| 51 class NativeWindowDelegate; | 51 class NativeWindowDelegate; |
| 52 class NetworkDropdownHandler; | 52 class NetworkDropdownHandler; |
| 53 class NetworkStateInformer; | 53 class NetworkStateInformer; |
| 54 class NetworkView; | 54 class NetworkView; |
| 55 class SigninScreenHandler; | 55 class SigninScreenHandler; |
| 56 class SigninScreenHandlerDelegate; | 56 class SigninScreenHandlerDelegate; |
| 57 class SupervisedUserCreationScreenHandler; | 57 class SupervisedUserCreationScreenHandler; |
| 58 class ResetView; | 58 class ResetView; |
| 59 class TermsOfServiceScreenActor; | 59 class TermsOfServiceScreenView; |
| 60 class UserBoardScreenHandler; | 60 class UserBoardScreenHandler; |
| 61 class UserBoardView; | 61 class UserBoardView; |
| 62 class UserImageView; | 62 class UserImageView; |
| 63 class UpdateView; | 63 class UpdateView; |
| 64 class WrongHWIDScreenActor; | 64 class WrongHWIDScreenView; |
| 65 | 65 |
| 66 // A custom WebUI that defines datasource for out-of-box-experience (OOBE) UI: | 66 // A custom WebUI that defines datasource for out-of-box-experience (OOBE) UI: |
| 67 // - welcome screen (setup language/keyboard/network). | 67 // - welcome screen (setup language/keyboard/network). |
| 68 // - eula screen (CrOS (+ OEM) EULA content/TPM password/crash reporting). | 68 // - eula screen (CrOS (+ OEM) EULA content/TPM password/crash reporting). |
| 69 // - update screen. | 69 // - update screen. |
| 70 class OobeUI : public content::WebUIController, | 70 class OobeUI : public content::WebUIController, |
| 71 public CoreOobeHandler::Delegate, | 71 public CoreOobeHandler::Delegate, |
| 72 public ShutdownPolicyHandler::Delegate { | 72 public ShutdownPolicyHandler::Delegate { |
| 73 public: | 73 public: |
| 74 // List of known types of OobeUI. Type added as path in chrome://oobe url, for | 74 // List of known types of OobeUI. Type added as path in chrome://oobe url, for |
| (...skipping 12 matching lines...) Expand all Loading... |
| 87 OobeScreen new_screen) = 0; | 87 OobeScreen new_screen) = 0; |
| 88 | 88 |
| 89 protected: | 89 protected: |
| 90 virtual ~Observer() {} | 90 virtual ~Observer() {} |
| 91 DISALLOW_COPY(Observer); | 91 DISALLOW_COPY(Observer); |
| 92 }; | 92 }; |
| 93 | 93 |
| 94 OobeUI(content::WebUI* web_ui, const GURL& url); | 94 OobeUI(content::WebUI* web_ui, const GURL& url); |
| 95 ~OobeUI() override; | 95 ~OobeUI() override; |
| 96 | 96 |
| 97 CoreOobeActor* GetCoreOobeActor(); | 97 CoreOobeView* GetCoreOobeView(); |
| 98 NetworkView* GetNetworkView(); | 98 NetworkView* GetNetworkView(); |
| 99 EulaView* GetEulaView(); | 99 EulaView* GetEulaView(); |
| 100 UpdateView* GetUpdateView(); | 100 UpdateView* GetUpdateView(); |
| 101 EnableDebuggingScreenActor* GetEnableDebuggingScreenActor(); | 101 EnableDebuggingScreenView* GetEnableDebuggingScreenView(); |
| 102 EnrollmentScreenActor* GetEnrollmentScreenActor(); | 102 EnrollmentScreenView* GetEnrollmentScreenView(); |
| 103 ResetView* GetResetView(); | 103 ResetView* GetResetView(); |
| 104 KioskAutolaunchScreenActor* GetKioskAutolaunchScreenActor(); | 104 KioskAutolaunchScreenView* GetKioskAutolaunchScreenView(); |
| 105 KioskEnableScreenActor* GetKioskEnableScreenActor(); | 105 KioskEnableScreenView* GetKioskEnableScreenView(); |
| 106 TermsOfServiceScreenActor* GetTermsOfServiceScreenActor(); | 106 TermsOfServiceScreenView* GetTermsOfServiceScreenView(); |
| 107 ArcTermsOfServiceScreenActor* GetArcTermsOfServiceScreenActor(); | 107 ArcTermsOfServiceScreenView* GetArcTermsOfServiceScreenView(); |
| 108 UserImageView* GetUserImageView(); | 108 UserImageView* GetUserImageView(); |
| 109 ErrorScreen* GetErrorScreen(); | 109 ErrorScreen* GetErrorScreen(); |
| 110 WrongHWIDScreenActor* GetWrongHWIDScreenActor(); | 110 WrongHWIDScreenView* GetWrongHWIDScreenView(); |
| 111 AutoEnrollmentCheckScreenActor* GetAutoEnrollmentCheckScreenActor(); | 111 AutoEnrollmentCheckScreenView* GetAutoEnrollmentCheckScreenView(); |
| 112 SupervisedUserCreationScreenHandler* GetSupervisedUserCreationScreenActor(); | 112 SupervisedUserCreationScreenHandler* GetSupervisedUserCreationScreenView(); |
| 113 AppLaunchSplashScreenActor* GetAppLaunchSplashScreenActor(); | 113 AppLaunchSplashScreenView* GetAppLaunchSplashScreenView(); |
| 114 ArcKioskSplashScreenActor* GetArcKioskSplashScreenActor(); | 114 ArcKioskSplashScreenView* GetArcKioskSplashScreenView(); |
| 115 bool IsJSReady(const base::Closure& display_is_ready_callback); | |
| 116 HIDDetectionView* GetHIDDetectionView(); | 115 HIDDetectionView* GetHIDDetectionView(); |
| 117 ControllerPairingScreenActor* GetControllerPairingScreenActor(); | 116 ControllerPairingScreenView* GetControllerPairingScreenView(); |
| 118 HostPairingScreenActor* GetHostPairingScreenActor(); | 117 HostPairingScreenView* GetHostPairingScreenView(); |
| 119 DeviceDisabledScreenActor* GetDeviceDisabledScreenActor(); | 118 DeviceDisabledScreenView* GetDeviceDisabledScreenView(); |
| 120 GaiaScreenHandler* GetGaiaScreenActor(); | 119 GaiaScreenHandler* GetGaiaScreenView(); |
| 121 UserBoardView* GetUserBoardScreenActor(); | 120 UserBoardView* GetUserBoardView(); |
| 122 | 121 |
| 123 // ShutdownPolicyHandler::Delegate | 122 // ShutdownPolicyHandler::Delegate |
| 124 void OnShutdownPolicyChanged(bool reboot_on_shutdown) override; | 123 void OnShutdownPolicyChanged(bool reboot_on_shutdown) override; |
| 125 | 124 |
| 126 // Collects localized strings from the owned handlers. | 125 // Collects localized strings from the owned handlers. |
| 127 void GetLocalizedStrings(base::DictionaryValue* localized_strings); | 126 void GetLocalizedStrings(base::DictionaryValue* localized_strings); |
| 128 | 127 |
| 129 // Initializes the handlers. | 128 // Initializes the handlers. |
| 130 void InitializeHandlers(); | 129 void InitializeHandlers(); |
| 131 | 130 |
| 132 // Invoked after the async assets load. The screen handler that has the same | 131 // Invoked after the async assets load. The screen handler that has the same |
| 133 // async assets load id will be initialized. | 132 // async assets load id will be initialized. |
| 134 void OnScreenAssetsLoaded(const std::string& async_assets_load_id); | 133 void OnScreenAssetsLoaded(const std::string& async_assets_load_id); |
| 135 | 134 |
| 135 bool IsJSReady(const base::Closure& display_is_ready_callback); |
| 136 |
| 136 // Shows or hides OOBE UI elements. | 137 // Shows or hides OOBE UI elements. |
| 137 void ShowOobeUI(bool show); | 138 void ShowOobeUI(bool show); |
| 138 | 139 |
| 139 // Shows the signin screen. | 140 // Shows the signin screen. |
| 140 void ShowSigninScreen(const LoginScreenContext& context, | 141 void ShowSigninScreen(const LoginScreenContext& context, |
| 141 SigninScreenHandlerDelegate* delegate, | 142 SigninScreenHandlerDelegate* delegate, |
| 142 NativeWindowDelegate* native_window_delegate); | 143 NativeWindowDelegate* native_window_delegate); |
| 143 | 144 |
| 144 // Resets the delegate set in ShowSigninScreen. | 145 // Resets the delegate set in ShowSigninScreen. |
| 145 void ResetSigninScreenHandlerDelegate(); | 146 void ResetSigninScreenHandlerDelegate(); |
| (...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 179 // state. | 180 // state. |
| 180 scoped_refptr<NetworkStateInformer> network_state_informer_; | 181 scoped_refptr<NetworkStateInformer> network_state_informer_; |
| 181 | 182 |
| 182 // Reference to CoreOobeHandler that handles common requests of Oobe page. | 183 // Reference to CoreOobeHandler that handles common requests of Oobe page. |
| 183 CoreOobeHandler* core_handler_ = nullptr; | 184 CoreOobeHandler* core_handler_ = nullptr; |
| 184 | 185 |
| 185 // Reference to NetworkDropdownHandler that handles interaction with | 186 // Reference to NetworkDropdownHandler that handles interaction with |
| 186 // network dropdown. | 187 // network dropdown. |
| 187 NetworkDropdownHandler* network_dropdown_handler_ = nullptr; | 188 NetworkDropdownHandler* network_dropdown_handler_ = nullptr; |
| 188 | 189 |
| 189 // Screens actors. Note, OobeUI owns them via |handlers_|, not directly here. | 190 // Screens views. Note, OobeUI owns them via |handlers_|, not directly here. |
| 190 UpdateView* update_view_ = nullptr; | 191 UpdateView* update_view_ = nullptr; |
| 191 NetworkView* network_view_ = nullptr; | 192 NetworkView* network_view_ = nullptr; |
| 192 EnableDebuggingScreenActor* debugging_screen_actor_ = nullptr; | 193 EnableDebuggingScreenView* debugging_screen_view_ = nullptr; |
| 193 EulaView* eula_view_ = nullptr; | 194 EulaView* eula_view_ = nullptr; |
| 194 EnrollmentScreenActor* enrollment_screen_actor_ = nullptr; | 195 EnrollmentScreenView* enrollment_screen_view_ = nullptr; |
| 195 ResetView* reset_view_ = nullptr; | 196 ResetView* reset_view_ = nullptr; |
| 196 HIDDetectionView* hid_detection_view_ = nullptr; | 197 HIDDetectionView* hid_detection_view_ = nullptr; |
| 197 KioskAutolaunchScreenActor* autolaunch_screen_actor_ = nullptr; | 198 KioskAutolaunchScreenView* autolaunch_screen_view_ = nullptr; |
| 198 KioskEnableScreenActor* kiosk_enable_screen_actor_ = nullptr; | 199 KioskEnableScreenView* kiosk_enable_screen_view_ = nullptr; |
| 199 WrongHWIDScreenActor* wrong_hwid_screen_actor_ = nullptr; | 200 WrongHWIDScreenView* wrong_hwid_screen_view_ = nullptr; |
| 200 AutoEnrollmentCheckScreenActor* auto_enrollment_check_screen_actor_ = nullptr; | 201 AutoEnrollmentCheckScreenView* auto_enrollment_check_screen_view_ = nullptr; |
| 201 SupervisedUserCreationScreenHandler* supervised_user_creation_screen_actor_ = | 202 SupervisedUserCreationScreenHandler* supervised_user_creation_screen_view_ = |
| 202 nullptr; | 203 nullptr; |
| 203 AppLaunchSplashScreenActor* app_launch_splash_screen_actor_ = nullptr; | 204 AppLaunchSplashScreenView* app_launch_splash_screen_view_ = nullptr; |
| 204 ArcKioskSplashScreenActor* arc_kiosk_splash_screen_actor_ = nullptr; | 205 ArcKioskSplashScreenView* arc_kiosk_splash_screen_view_ = nullptr; |
| 205 ControllerPairingScreenActor* controller_pairing_screen_actor_ = nullptr; | 206 ControllerPairingScreenView* controller_pairing_screen_view_ = nullptr; |
| 206 HostPairingScreenActor* host_pairing_screen_actor_ = nullptr; | 207 HostPairingScreenView* host_pairing_screen_view_ = nullptr; |
| 207 DeviceDisabledScreenActor* device_disabled_screen_actor_ = nullptr; | 208 DeviceDisabledScreenView* device_disabled_screen_view_ = nullptr; |
| 208 | 209 |
| 209 // Reference to ErrorScreenHandler that handles error screen | 210 // Reference to ErrorScreenHandler that handles error screen |
| 210 // requests and forward calls from native code to JS side. | 211 // requests and forward calls from native code to JS side. |
| 211 ErrorScreenHandler* error_screen_handler_ = nullptr; | 212 ErrorScreenHandler* error_screen_handler_ = nullptr; |
| 212 | 213 |
| 213 // Reference to GaiaScreenHandler that handles gaia screen requests and | 214 // Reference to GaiaScreenHandler that handles gaia screen requests and |
| 214 // forwards calls from native code to JS side. | 215 // forwards calls from native code to JS side. |
| 215 GaiaScreenHandler* gaia_screen_handler_ = nullptr; | 216 GaiaScreenHandler* gaia_screen_handler_ = nullptr; |
| 216 | 217 |
| 217 // Reference to UserBoardScreenHandler, that allows to pick user on device | 218 // Reference to UserBoardScreenHandler, that allows to pick user on device |
| 218 // and attempt authentication. | 219 // and attempt authentication. |
| 219 UserBoardScreenHandler* user_board_screen_handler_ = nullptr; | 220 UserBoardScreenHandler* user_board_screen_handler_ = nullptr; |
| 220 | 221 |
| 221 // Reference to SigninScreenHandler that handles sign-in screen requests and | 222 // Reference to SigninScreenHandler that handles sign-in screen requests and |
| 222 // forwards calls from native code to JS side. | 223 // forwards calls from native code to JS side. |
| 223 SigninScreenHandler* signin_screen_handler_ = nullptr; | 224 SigninScreenHandler* signin_screen_handler_ = nullptr; |
| 224 | 225 |
| 225 TermsOfServiceScreenActor* terms_of_service_screen_actor_ = nullptr; | 226 TermsOfServiceScreenView* terms_of_service_screen_view_ = nullptr; |
| 226 ArcTermsOfServiceScreenActor* arc_terms_of_service_screen_actor_ = nullptr; | 227 ArcTermsOfServiceScreenView* arc_terms_of_service_screen_view_ = nullptr; |
| 227 UserImageView* user_image_view_ = nullptr; | 228 UserImageView* user_image_view_ = nullptr; |
| 228 | 229 |
| 229 std::vector<BaseScreenHandler*> handlers_; // Non-owning pointers. | 230 std::vector<BaseScreenHandler*> handlers_; // Non-owning pointers. |
| 230 | 231 |
| 231 KioskAppMenuHandler* kiosk_app_menu_handler_ = | 232 KioskAppMenuHandler* kiosk_app_menu_handler_ = |
| 232 nullptr; // Non-owning pointers. | 233 nullptr; // Non-owning pointers. |
| 233 | 234 |
| 234 std::unique_ptr<ErrorScreen> error_screen_; | 235 std::unique_ptr<ErrorScreen> error_screen_; |
| 235 | 236 |
| 236 // Id of the current oobe/login screen. | 237 // Id of the current oobe/login screen. |
| (...skipping 20 matching lines...) Expand all Loading... |
| 257 std::unique_ptr<ShutdownPolicyHandler> shutdown_policy_handler_; | 258 std::unique_ptr<ShutdownPolicyHandler> shutdown_policy_handler_; |
| 258 | 259 |
| 259 std::unique_ptr<ash::ScreenDimmer> screen_dimmer_; | 260 std::unique_ptr<ash::ScreenDimmer> screen_dimmer_; |
| 260 | 261 |
| 261 DISALLOW_COPY_AND_ASSIGN(OobeUI); | 262 DISALLOW_COPY_AND_ASSIGN(OobeUI); |
| 262 }; | 263 }; |
| 263 | 264 |
| 264 } // namespace chromeos | 265 } // namespace chromeos |
| 265 | 266 |
| 266 #endif // CHROME_BROWSER_UI_WEBUI_CHROMEOS_LOGIN_OOBE_UI_H_ | 267 #endif // CHROME_BROWSER_UI_WEBUI_CHROMEOS_LOGIN_OOBE_UI_H_ |
| OLD | NEW |