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

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

Issue 672203003: ScreenContext is moved to components/login. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Rebase. Created 6 years, 1 month 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
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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_BASE_SCREEN_HANDLER_H_ 5 #ifndef CHROME_BROWSER_UI_WEBUI_CHROMEOS_LOGIN_BASE_SCREEN_HANDLER_H_
6 #define CHROME_BROWSER_UI_WEBUI_CHROMEOS_LOGIN_BASE_SCREEN_HANDLER_H_ 6 #define CHROME_BROWSER_UI_WEBUI_CHROMEOS_LOGIN_BASE_SCREEN_HANDLER_H_
7 7
8 #include <string> 8 #include <string>
9 9
10 #include "base/bind.h" 10 #include "base/bind.h"
11 #include "base/bind_helpers.h" 11 #include "base/bind_helpers.h"
12 #include "base/callback.h" 12 #include "base/callback.h"
13 #include "base/strings/string16.h" 13 #include "base/strings/string16.h"
14 #include "chrome/browser/ui/webui/chromeos/login/base_screen_handler_utils.h" 14 #include "components/login/base_screen_handler_utils.h"
15 #include "content/public/browser/web_ui.h" 15 #include "content/public/browser/web_ui.h"
16 #include "content/public/browser/web_ui_message_handler.h" 16 #include "content/public/browser/web_ui_message_handler.h"
17 #include "ui/gfx/native_widget_types.h" 17 #include "ui/gfx/native_widget_types.h"
18 18
19 namespace base { 19 namespace base {
20 class DictionaryValue; 20 class DictionaryValue;
21 class ListValue; 21 class ListValue;
22 class Value; 22 class Value;
23 } 23 }
24 24
(...skipping 83 matching lines...) Expand 10 before | Expand all | Expand 10 after
108 // Subclasses can override these methods to pass additional parameters 108 // Subclasses can override these methods to pass additional parameters
109 // to loadTimeData. Generally, it is a bad approach, and it should be replaced 109 // to loadTimeData. Generally, it is a bad approach, and it should be replaced
110 // with Context at some point. 110 // with Context at some point.
111 virtual void GetAdditionalParameters(base::DictionaryValue* parameters); 111 virtual void GetAdditionalParameters(base::DictionaryValue* parameters);
112 112
113 // Shortcut for calling JS methods on WebUI side. 113 // Shortcut for calling JS methods on WebUI side.
114 void CallJS(const std::string& method); 114 void CallJS(const std::string& method);
115 115
116 template<typename A1> 116 template<typename A1>
117 void CallJS(const std::string& method, const A1& arg1) { 117 void CallJS(const std::string& method, const A1& arg1) {
118 web_ui()->CallJavascriptFunction(FullMethodPath(method), MakeValue(arg1)); 118 web_ui()->CallJavascriptFunction(FullMethodPath(method),
119 ::login::MakeValue(arg1));
119 } 120 }
120 121
121 template<typename A1, typename A2> 122 template<typename A1, typename A2>
122 void CallJS(const std::string& method, const A1& arg1, const A2& arg2) { 123 void CallJS(const std::string& method, const A1& arg1, const A2& arg2) {
123 web_ui()->CallJavascriptFunction(FullMethodPath(method), MakeValue(arg1), 124 web_ui()->CallJavascriptFunction(FullMethodPath(method),
124 MakeValue(arg2)); 125 ::login::MakeValue(arg1),
126 ::login::MakeValue(arg2));
125 } 127 }
126 128
127 template<typename A1, typename A2, typename A3> 129 template<typename A1, typename A2, typename A3>
128 void CallJS(const std::string& method, 130 void CallJS(const std::string& method,
129 const A1& arg1, 131 const A1& arg1,
130 const A2& arg2, 132 const A2& arg2,
131 const A3& arg3) { 133 const A3& arg3) {
132 web_ui()->CallJavascriptFunction(FullMethodPath(method), 134 web_ui()->CallJavascriptFunction(FullMethodPath(method),
133 MakeValue(arg1), 135 ::login::MakeValue(arg1),
134 MakeValue(arg2), 136 ::login::MakeValue(arg2),
135 MakeValue(arg3)); 137 ::login::MakeValue(arg3));
136 } 138 }
137 139
138 template<typename A1, typename A2, typename A3, typename A4> 140 template<typename A1, typename A2, typename A3, typename A4>
139 void CallJS(const std::string& method, 141 void CallJS(const std::string& method,
140 const A1& arg1, 142 const A1& arg1,
141 const A2& arg2, 143 const A2& arg2,
142 const A3& arg3, 144 const A3& arg3,
143 const A4& arg4) { 145 const A4& arg4) {
144 web_ui()->CallJavascriptFunction(FullMethodPath(method), 146 web_ui()->CallJavascriptFunction(FullMethodPath(method),
145 MakeValue(arg1), 147 ::login::MakeValue(arg1),
146 MakeValue(arg2), 148 ::login::MakeValue(arg2),
147 MakeValue(arg3), 149 ::login::MakeValue(arg3),
148 MakeValue(arg4)); 150 ::login::MakeValue(arg4));
149 } 151 }
150 152
151 // Shortcut methods for adding WebUI callbacks. 153 // Shortcut methods for adding WebUI callbacks.
152 template<typename T> 154 template<typename T>
153 void AddRawCallback(const std::string& name, 155 void AddRawCallback(const std::string& name,
154 void (T::*method)(const base::ListValue* args)) { 156 void (T::*method)(const base::ListValue* args)) {
155 web_ui()->RegisterMessageCallback( 157 web_ui()->RegisterMessageCallback(
156 name, 158 name,
157 base::Bind(method, base::Unretained(static_cast<T*>(this)))); 159 base::Bind(method, base::Unretained(static_cast<T*>(this))));
158 } 160 }
159 161
160 template<typename T> 162 template<typename T>
161 void AddCallback(const std::string& name, void (T::*method)()) { 163 void AddCallback(const std::string& name, void (T::*method)()) {
162 base::Callback<void()> callback = 164 base::Callback<void()> callback =
163 base::Bind(method, base::Unretained(static_cast<T*>(this))); 165 base::Bind(method, base::Unretained(static_cast<T*>(this)));
164 web_ui()->RegisterMessageCallback( 166 web_ui()->RegisterMessageCallback(
165 name, base::Bind(&CallbackWrapper0, callback)); 167 name, base::Bind(&::login::CallbackWrapper0, callback));
166 } 168 }
167 169
168 template<typename T, typename A1> 170 template<typename T, typename A1>
169 void AddCallback(const std::string& name, void (T::*method)(A1 arg1)) { 171 void AddCallback(const std::string& name, void (T::*method)(A1 arg1)) {
170 base::Callback<void(A1)> callback = 172 base::Callback<void(A1)> callback =
171 base::Bind(method, base::Unretained(static_cast<T*>(this))); 173 base::Bind(method, base::Unretained(static_cast<T*>(this)));
172 web_ui()->RegisterMessageCallback( 174 web_ui()->RegisterMessageCallback(
173 name, base::Bind(&CallbackWrapper1<A1>, callback)); 175 name, base::Bind(&::login::CallbackWrapper1<A1>, callback));
174 } 176 }
175 177
176 template<typename T, typename A1, typename A2> 178 template<typename T, typename A1, typename A2>
177 void AddCallback(const std::string& name, 179 void AddCallback(const std::string& name,
178 void (T::*method)(A1 arg1, A2 arg2)) { 180 void (T::*method)(A1 arg1, A2 arg2)) {
179 base::Callback<void(A1, A2)> callback = 181 base::Callback<void(A1, A2)> callback =
180 base::Bind(method, base::Unretained(static_cast<T*>(this))); 182 base::Bind(method, base::Unretained(static_cast<T*>(this)));
181 web_ui()->RegisterMessageCallback( 183 web_ui()->RegisterMessageCallback(
182 name, base::Bind(&CallbackWrapper2<A1, A2>, callback)); 184 name, base::Bind(&::login::CallbackWrapper2<A1, A2>, callback));
183 } 185 }
184 186
185 template<typename T, typename A1, typename A2, typename A3> 187 template<typename T, typename A1, typename A2, typename A3>
186 void AddCallback(const std::string& name, 188 void AddCallback(const std::string& name,
187 void (T::*method)(A1 arg1, A2 arg2, A3 arg3)) { 189 void (T::*method)(A1 arg1, A2 arg2, A3 arg3)) {
188 base::Callback<void(A1, A2, A3)> callback = 190 base::Callback<void(A1, A2, A3)> callback =
189 base::Bind(method, base::Unretained(static_cast<T*>(this))); 191 base::Bind(method, base::Unretained(static_cast<T*>(this)));
190 web_ui()->RegisterMessageCallback( 192 web_ui()->RegisterMessageCallback(
191 name, base::Bind(&CallbackWrapper3<A1, A2, A3>, callback)); 193 name, base::Bind(&::login::CallbackWrapper3<A1, A2, A3>, callback));
192 } 194 }
193 195
194 template<typename T, typename A1, typename A2, typename A3, typename A4> 196 template<typename T, typename A1, typename A2, typename A3, typename A4>
195 void AddCallback(const std::string& name, 197 void AddCallback(const std::string& name,
196 void (T::*method)(A1 arg1, A2 arg2, A3 arg3, A4 arg4)) { 198 void (T::*method)(A1 arg1, A2 arg2, A3 arg3, A4 arg4)) {
197 base::Callback<void(A1, A2, A3, A4)> callback = 199 base::Callback<void(A1, A2, A3, A4)> callback =
198 base::Bind(method, base::Unretained(static_cast<T*>(this))); 200 base::Bind(method, base::Unretained(static_cast<T*>(this)));
199 web_ui()->RegisterMessageCallback( 201 web_ui()->RegisterMessageCallback(
200 name, base::Bind(&CallbackWrapper4<A1, A2, A3, A4>, callback)); 202 name, base::Bind(&::login::CallbackWrapper4<A1, A2, A3, A4>, callback));
201 } 203 }
202 204
203 template <typename Method> 205 template <typename Method>
204 void AddPrefixedCallback(const std::string& unprefixed_name, 206 void AddPrefixedCallback(const std::string& unprefixed_name,
205 const Method& method) { 207 const Method& method) {
206 AddCallback(FullMethodPath(unprefixed_name), method); 208 AddCallback(FullMethodPath(unprefixed_name), method);
207 } 209 }
208 210
209 // Called when the page is ready and handler can do initialization. 211 // Called when the page is ready and handler can do initialization.
210 virtual void Initialize() = 0; 212 virtual void Initialize() = 0;
(...skipping 27 matching lines...) Expand all
238 // non empty value, the Initialize will be deferred until the underlying load 240 // non empty value, the Initialize will be deferred until the underlying load
239 // is finished. 241 // is finished.
240 std::string async_assets_load_id_; 242 std::string async_assets_load_id_;
241 243
242 DISALLOW_COPY_AND_ASSIGN(BaseScreenHandler); 244 DISALLOW_COPY_AND_ASSIGN(BaseScreenHandler);
243 }; 245 };
244 246
245 } // namespace chromeos 247 } // namespace chromeos
246 248
247 #endif // CHROME_BROWSER_UI_WEBUI_CHROMEOS_LOGIN_BASE_SCREEN_HANDLER_H_ 249 #endif // CHROME_BROWSER_UI_WEBUI_CHROMEOS_LOGIN_BASE_SCREEN_HANDLER_H_
OLDNEW
« no previous file with comments | « chrome/browser/ui/webui/chromeos/DEPS ('k') | chrome/browser/ui/webui/chromeos/login/base_screen_handler_utils.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698