OLD | NEW |
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2010 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_BACKGROUND_VIEW_H_ | 5 #ifndef CHROME_BROWSER_CHROMEOS_LOGIN_BACKGROUND_VIEW_H_ |
6 #define CHROME_BROWSER_CHROMEOS_LOGIN_BACKGROUND_VIEW_H_ | 6 #define CHROME_BROWSER_CHROMEOS_LOGIN_BACKGROUND_VIEW_H_ |
7 #pragma once | 7 #pragma once |
8 | 8 |
9 #include "chrome/browser/chromeos/boot_times_loader.h" | 9 #include "chrome/browser/chromeos/boot_times_loader.h" |
10 #include "chrome/browser/chromeos/cros/cros_library.h" | 10 #include "chrome/browser/chromeos/cros/cros_library.h" |
| 11 #include "chrome/browser/chromeos/login/login_html_dialog.h" |
11 #include "chrome/browser/chromeos/status/status_area_host.h" | 12 #include "chrome/browser/chromeos/status/status_area_host.h" |
12 #include "chrome/browser/chromeos/version_loader.h" | 13 #include "chrome/browser/chromeos/version_loader.h" |
13 #include "views/view.h" | 14 #include "views/view.h" |
14 | 15 |
15 namespace views { | 16 namespace views { |
16 class Label; | 17 class Label; |
17 class TextButton; | 18 class TextButton; |
18 class Widget; | 19 class Widget; |
19 } | 20 } |
20 | 21 |
21 class DOMView; | 22 class DOMView; |
22 class GURL; | 23 class GURL; |
23 class Profile; | 24 class Profile; |
24 | 25 |
25 namespace chromeos { | 26 namespace chromeos { |
26 | 27 |
27 class OobeProgressBar; | 28 class OobeProgressBar; |
28 class ShutdownButton; | 29 class ShutdownButton; |
29 class StatusAreaView; | 30 class StatusAreaView; |
30 | 31 |
31 // View used to render the background during login. BackgroundView contains | 32 // View used to render the background during login. BackgroundView contains |
32 // StatusAreaView. | 33 // StatusAreaView. |
33 class BackgroundView : public views::View, | 34 class BackgroundView : public views::View, |
34 public StatusAreaHost { | 35 public StatusAreaHost, |
| 36 public chromeos::LoginHtmlDialog::Delegate { |
35 public: | 37 public: |
36 enum LoginStep { | 38 enum LoginStep { |
37 SELECT_NETWORK, | 39 SELECT_NETWORK, |
38 #if defined(OFFICIAL_BUILD) | 40 #if defined(OFFICIAL_BUILD) |
39 EULA, | 41 EULA, |
40 #endif | 42 #endif |
41 SIGNIN, | 43 SIGNIN, |
42 #if defined(OFFICIAL_BUILD) | 44 #if defined(OFFICIAL_BUILD) |
43 REGISTRATION, | 45 REGISTRATION, |
44 #endif | 46 #endif |
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
85 bool IsScreenSaverVisible(); | 87 bool IsScreenSaverVisible(); |
86 | 88 |
87 // Tells if screen saver is enabled. | 89 // Tells if screen saver is enabled. |
88 bool ScreenSaverEnabled(); | 90 bool ScreenSaverEnabled(); |
89 | 91 |
90 protected: | 92 protected: |
91 // Overridden from views::View: | 93 // Overridden from views::View: |
92 virtual void Paint(gfx::Canvas* canvas); | 94 virtual void Paint(gfx::Canvas* canvas); |
93 virtual void Layout(); | 95 virtual void Layout(); |
94 virtual void ChildPreferredSizeChanged(View* child); | 96 virtual void ChildPreferredSizeChanged(View* child); |
| 97 virtual void OnLocaleChanged(); |
95 | 98 |
96 // Overridden from StatusAreaHost: | 99 // Overridden from StatusAreaHost: |
97 virtual Profile* GetProfile() const { return NULL; } | 100 virtual Profile* GetProfile() const { return NULL; } |
98 virtual gfx::NativeWindow GetNativeWindow() const; | 101 virtual gfx::NativeWindow GetNativeWindow() const; |
99 virtual void ExecuteBrowserCommand(int id) const {} | 102 virtual void ExecuteBrowserCommand(int id) const {} |
100 virtual bool ShouldOpenButtonOptions( | 103 virtual bool ShouldOpenButtonOptions( |
101 const views::View* button_view) const; | 104 const views::View* button_view) const; |
102 virtual void OpenButtonOptions(const views::View* button_view) const; | 105 virtual void OpenButtonOptions(const views::View* button_view); |
103 virtual bool IsBrowserMode() const; | 106 virtual bool IsBrowserMode() const; |
104 virtual bool IsScreenLockerMode() const; | 107 virtual bool IsScreenLockerMode() const; |
105 | 108 |
| 109 // Overridden from LoginHtmlDialog::Delegate: |
| 110 virtual void OnDialogClosed() {} |
| 111 |
106 private: | 112 private: |
107 // Creates and adds the status_area. | 113 // Creates and adds the status_area. |
108 void InitStatusArea(); | 114 void InitStatusArea(); |
109 // Creates and adds the labels for version and boot time. | 115 // Creates and adds the labels for version and boot time. |
110 void InitInfoLabels(); | 116 void InitInfoLabels(); |
111 // Creates and add OOBE progress bar. | 117 // Creates and add OOBE progress bar. |
112 void InitProgressBar(); | 118 void InitProgressBar(); |
113 | 119 |
114 // Invokes SetWindowType for the window. This is invoked during startup and | 120 // Invokes SetWindowType for the window. This is invoked during startup and |
115 // after we've painted. | 121 // after we've painted. |
(...skipping 26 matching lines...) Expand all Loading... |
142 // manager. | 148 // manager. |
143 // TODO(sky): nuke this when the wm knows when chrome has painted. | 149 // TODO(sky): nuke this when the wm knows when chrome has painted. |
144 bool did_paint_; | 150 bool did_paint_; |
145 | 151 |
146 // True if running official BUILD. | 152 // True if running official BUILD. |
147 bool is_official_build_; | 153 bool is_official_build_; |
148 | 154 |
149 // DOMView for rendering a webpage as a background. | 155 // DOMView for rendering a webpage as a background. |
150 DOMView* background_area_; | 156 DOMView* background_area_; |
151 | 157 |
| 158 // Proxy settings dialog that can be invoked from network menu. |
| 159 scoped_ptr<LoginHtmlDialog> proxy_settings_dialog_; |
| 160 |
152 DISALLOW_COPY_AND_ASSIGN(BackgroundView); | 161 DISALLOW_COPY_AND_ASSIGN(BackgroundView); |
153 }; | 162 }; |
154 | 163 |
155 } // namespace chromeos | 164 } // namespace chromeos |
156 | 165 |
157 #endif // CHROME_BROWSER_CHROMEOS_LOGIN_BACKGROUND_VIEW_H_ | 166 #endif // CHROME_BROWSER_CHROMEOS_LOGIN_BACKGROUND_VIEW_H_ |
OLD | NEW |