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 #pragma once | 7 #pragma once |
8 | 8 |
| 9 #include <vector> |
| 10 |
| 11 #include "base/compiler_specific.h" |
9 #include "chrome/browser/chromeos/login/oobe_display.h" | 12 #include "chrome/browser/chromeos/login/oobe_display.h" |
10 #include "content/browser/webui/web_ui.h" | |
11 #include "content/public/browser/web_ui_controller.h" | 13 #include "content/public/browser/web_ui_controller.h" |
12 | 14 |
13 namespace base { | 15 namespace base { |
14 class DictionaryValue; | 16 class DictionaryValue; |
15 } | 17 } |
16 | 18 |
17 namespace chromeos { | 19 namespace chromeos { |
18 class BaseScreenHandler; | 20 class BaseScreenHandler; |
19 class CoreOobeHandler; | 21 class CoreOobeHandler; |
20 class SigninScreenHandler; | 22 class SigninScreenHandler; |
21 class SigninScreenHandlerDelegate; | 23 class SigninScreenHandlerDelegate; |
22 } | 24 } |
23 | 25 |
24 namespace chromeos { | 26 namespace chromeos { |
25 | 27 |
26 // A custom WebUI that defines datasource for out-of-box-experience (OOBE) UI: | 28 // A custom WebUI that defines datasource for out-of-box-experience (OOBE) UI: |
27 // - welcome screen (setup language/keyboard/network). | 29 // - welcome screen (setup language/keyboard/network). |
28 // - eula screen (CrOS (+ OEM) EULA content/TPM password/crash reporting). | 30 // - eula screen (CrOS (+ OEM) EULA content/TPM password/crash reporting). |
29 // - update screen. | 31 // - update screen. |
30 class OobeUI : public OobeDisplay, | 32 class OobeUI : public OobeDisplay, |
31 public WebUI, public content::WebUIController { | 33 public content::WebUIController { |
32 public: | 34 public: |
33 explicit OobeUI(content::WebContents* contents); | 35 explicit OobeUI(WebUI* web_ui); |
34 | 36 |
35 // OobeDisplay implementation: | 37 // OobeDisplay implementation: |
36 virtual void ShowScreen(WizardScreen* screen) OVERRIDE; | 38 virtual void ShowScreen(WizardScreen* screen) OVERRIDE; |
37 virtual void HideScreen(WizardScreen* screen) OVERRIDE; | 39 virtual void HideScreen(WizardScreen* screen) OVERRIDE; |
38 virtual UpdateScreenActor* GetUpdateScreenActor() OVERRIDE; | 40 virtual UpdateScreenActor* GetUpdateScreenActor() OVERRIDE; |
39 virtual NetworkScreenActor* GetNetworkScreenActor() OVERRIDE; | 41 virtual NetworkScreenActor* GetNetworkScreenActor() OVERRIDE; |
40 virtual EulaScreenActor* GetEulaScreenActor() OVERRIDE; | 42 virtual EulaScreenActor* GetEulaScreenActor() OVERRIDE; |
41 virtual EnterpriseEnrollmentScreenActor* GetEnterpriseEnrollmentScreenActor() | 43 virtual EnterpriseEnrollmentScreenActor* GetEnterpriseEnrollmentScreenActor() |
42 OVERRIDE; | 44 OVERRIDE; |
43 virtual UserImageScreenActor* GetUserImageScreenActor() OVERRIDE; | 45 virtual UserImageScreenActor* GetUserImageScreenActor() OVERRIDE; |
(...skipping 28 matching lines...) Expand all Loading... |
72 UpdateScreenActor* update_screen_actor_; | 74 UpdateScreenActor* update_screen_actor_; |
73 NetworkScreenActor* network_screen_actor_; | 75 NetworkScreenActor* network_screen_actor_; |
74 EulaScreenActor* eula_screen_actor_; | 76 EulaScreenActor* eula_screen_actor_; |
75 EnterpriseEnrollmentScreenActor* enterprise_enrollment_screen_actor_; | 77 EnterpriseEnrollmentScreenActor* enterprise_enrollment_screen_actor_; |
76 | 78 |
77 // Reference to SigninScreenHandler that handles sign-in screen requrests and | 79 // Reference to SigninScreenHandler that handles sign-in screen requrests and |
78 // forward calls from native code to JS side. | 80 // forward calls from native code to JS side. |
79 SigninScreenHandler* signin_screen_handler_; | 81 SigninScreenHandler* signin_screen_handler_; |
80 UserImageScreenActor* user_image_screen_actor_; | 82 UserImageScreenActor* user_image_screen_actor_; |
81 | 83 |
| 84 std::vector<BaseScreenHandler*> handlers_; // Non-owning pointers. |
| 85 |
82 DISALLOW_COPY_AND_ASSIGN(OobeUI); | 86 DISALLOW_COPY_AND_ASSIGN(OobeUI); |
83 }; | 87 }; |
84 | 88 |
85 } // namespace chromeos | 89 } // namespace chromeos |
86 | 90 |
87 #endif // CHROME_BROWSER_UI_WEBUI_CHROMEOS_LOGIN_OOBE_UI_H_ | 91 #endif // CHROME_BROWSER_UI_WEBUI_CHROMEOS_LOGIN_OOBE_UI_H_ |
OLD | NEW |