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_WEBUI_LOGIN_VIEW_H_ | 5 #ifndef CHROME_BROWSER_CHROMEOS_LOGIN_UI_WEBUI_LOGIN_VIEW_H_ |
6 #define CHROME_BROWSER_CHROMEOS_LOGIN_UI_WEBUI_LOGIN_VIEW_H_ | 6 #define CHROME_BROWSER_CHROMEOS_LOGIN_UI_WEBUI_LOGIN_VIEW_H_ |
7 | 7 |
8 #include <map> | 8 #include <map> |
9 #include <string> | 9 #include <string> |
10 | 10 |
(...skipping 26 matching lines...) Expand all Loading... |
37 | 37 |
38 // View used to render a WebUI supporting Widget. This widget is used for the | 38 // View used to render a WebUI supporting Widget. This widget is used for the |
39 // WebUI based start up and lock screens. It contains a WebView. | 39 // WebUI based start up and lock screens. It contains a WebView. |
40 class WebUILoginView : public views::View, | 40 class WebUILoginView : public views::View, |
41 public content::WebContentsDelegate, | 41 public content::WebContentsDelegate, |
42 public content::WebContentsObserver, | 42 public content::WebContentsObserver, |
43 public content::NotificationObserver, | 43 public content::NotificationObserver, |
44 public ChromeWebModalDialogManagerDelegate, | 44 public ChromeWebModalDialogManagerDelegate, |
45 public web_modal::WebContentsModalDialogHost { | 45 public web_modal::WebContentsModalDialogHost { |
46 public: | 46 public: |
| 47 class FrameObserver { |
| 48 public: |
| 49 // Called when a frame failed to load. |
| 50 virtual void OnFrameError(const std::string& frame_unique_name) = 0; |
| 51 }; |
| 52 |
47 // Internal class name. | 53 // Internal class name. |
48 static const char kViewClassName[]; | 54 static const char kViewClassName[]; |
49 | 55 |
50 WebUILoginView(); | 56 WebUILoginView(); |
51 virtual ~WebUILoginView(); | 57 virtual ~WebUILoginView(); |
52 | 58 |
53 // Initializes the webui login view. | 59 // Initializes the webui login view. |
54 virtual void Init(); | 60 virtual void Init(); |
55 | 61 |
56 // Overridden from views::View: | 62 // Overridden from views::View: |
(...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
98 | 104 |
99 void set_is_hidden(bool hidden) { is_hidden_ = hidden; } | 105 void set_is_hidden(bool hidden) { is_hidden_ = hidden; } |
100 | 106 |
101 bool webui_visible() const { return webui_visible_; } | 107 bool webui_visible() const { return webui_visible_; } |
102 | 108 |
103 // Let suppress emission of this signal. | 109 // Let suppress emission of this signal. |
104 void set_should_emit_login_prompt_visible(bool emit) { | 110 void set_should_emit_login_prompt_visible(bool emit) { |
105 should_emit_login_prompt_visible_ = emit; | 111 should_emit_login_prompt_visible_ = emit; |
106 } | 112 } |
107 | 113 |
| 114 void AddFrameObserver(FrameObserver* frame_observer); |
| 115 void RemoveFrameObserver(FrameObserver* frame_observer); |
| 116 |
108 protected: | 117 protected: |
109 // Overridden from views::View: | 118 // Overridden from views::View: |
110 virtual void Layout() OVERRIDE; | 119 virtual void Layout() OVERRIDE; |
111 virtual void OnLocaleChanged() OVERRIDE; | 120 virtual void OnLocaleChanged() OVERRIDE; |
112 virtual void ChildPreferredSizeChanged(View* child) OVERRIDE; | 121 virtual void ChildPreferredSizeChanged(View* child) OVERRIDE; |
113 virtual void AboutToRequestFocusFromTabTraversal(bool reverse) OVERRIDE; | 122 virtual void AboutToRequestFocusFromTabTraversal(bool reverse) OVERRIDE; |
114 | 123 |
115 // Overridden from content::NotificationObserver. | 124 // Overridden from content::NotificationObserver. |
116 virtual void Observe(int type, | 125 virtual void Observe(int type, |
117 const content::NotificationSource& source, | 126 const content::NotificationSource& source, |
(...skipping 58 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
176 // Should we emit the login-prompt-visible signal when the login page is | 185 // Should we emit the login-prompt-visible signal when the login page is |
177 // displayed? | 186 // displayed? |
178 bool should_emit_login_prompt_visible_; | 187 bool should_emit_login_prompt_visible_; |
179 | 188 |
180 // True to forward keyboard event. | 189 // True to forward keyboard event. |
181 bool forward_keyboard_event_; | 190 bool forward_keyboard_event_; |
182 | 191 |
183 scoped_ptr<ScopedGaiaAuthExtension> auth_extension_; | 192 scoped_ptr<ScopedGaiaAuthExtension> auth_extension_; |
184 | 193 |
185 ObserverList<web_modal::ModalDialogHostObserver> observer_list_; | 194 ObserverList<web_modal::ModalDialogHostObserver> observer_list_; |
| 195 ObserverList<FrameObserver> frame_observer_list_; |
186 | 196 |
187 DISALLOW_COPY_AND_ASSIGN(WebUILoginView); | 197 DISALLOW_COPY_AND_ASSIGN(WebUILoginView); |
188 }; | 198 }; |
189 | 199 |
190 } // namespace chromeos | 200 } // namespace chromeos |
191 | 201 |
192 #endif // CHROME_BROWSER_CHROMEOS_LOGIN_UI_WEBUI_LOGIN_VIEW_H_ | 202 #endif // CHROME_BROWSER_CHROMEOS_LOGIN_UI_WEBUI_LOGIN_VIEW_H_ |
OLD | NEW |