Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1200)

Side by Side Diff: chrome/browser/ui/webui/chromeos/login/oobe_ui.h

Issue 9224002: Make WebUI objects not derive from WebUI. WebUI objects own the controller. This is the ownership... (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: sync to head to clear linux_chromeos browsertest failures Created 8 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
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
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_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698