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

Side by Side Diff: chrome/browser/resources/chromeos/login/oobe_welcome.js

Issue 2886843005: [i18n] use Polymer data binding to change locale strings (Closed)
Patch Set: i18nDynamic test Created 3 years, 7 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
OLDNEW
1 // Copyright 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 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 /** 5 /**
6 * @fileoverview Polymer element for displaying material design OOBE. 6 * @fileoverview Polymer element for displaying material design OOBE.
7 */ 7 */
8 8
9 Polymer({ 9 Polymer({
10 is: 'oobe-welcome-md', 10 is: 'oobe-welcome-md',
11 11
12 behaviors: [I18nBehavior],
13
12 properties: { 14 properties: {
13 /** 15 /**
14 * Currently selected system language (display name). 16 * Currently selected system language (display name).
15 */ 17 */
16 currentLanguage: { 18 currentLanguage: {
17 type: String, 19 type: String,
18 value: '', 20 value: '',
19 }, 21 },
20 22
21 /** 23 /**
22 * Currently selected input method (display name). 24 * Currently selected input method (display name).
23 */ 25 */
24 currentKeyboard: { 26 currentKeyboard: {
25 type: String, 27 type: String,
26 value: '', 28 value: '',
27 }, 29 },
28 30
29 /** 31 /**
30 * List of languages for language selector dropdown. 32 * List of languages for language selector dropdown.
31 * @type {!Array<OobeTypes.LanguageDsc>} 33 * @type {!Array<OobeTypes.LanguageDsc>}
32 */ 34 */
33 languages: { 35 languages: {
34 type: Array, 36 type: Array,
35 observer: "onLanguagesChanged_", 37 observer: 'onLanguagesChanged_',
36 }, 38 },
37 39
38 /** 40 /**
39 * List of keyboards for keyboard selector dropdown. 41 * List of keyboards for keyboard selector dropdown.
40 * @type {!Array<OobeTypes.IMEDsc>} 42 * @type {!Array<OobeTypes.IMEDsc>}
41 */ 43 */
42 keyboards: { 44 keyboards: {
43 type: Array, 45 type: Array,
44 observer: "onKeyboardsChanged_", 46 observer: 'onKeyboardsChanged_',
45 }, 47 },
46 48
47 /** 49 /**
48 * Flag that enables MD-OOBE. 50 * Flag that enables MD-OOBE.
49 */ 51 */
50 enabled: { 52 enabled: {
51 type: Boolean, 53 type: Boolean,
52 value: false, 54 value: false,
53 }, 55 },
54 56
(...skipping 27 matching lines...) Expand all
82 * @private 84 * @private
83 */ 85 */
84 isConnected_: { 86 isConnected_: {
85 type: Boolean, 87 type: Boolean,
86 value: false, 88 value: false,
87 }, 89 },
88 90
89 /** 91 /**
90 * Controls displaying of "Enable debugging features" link. 92 * Controls displaying of "Enable debugging features" link.
91 */ 93 */
92 debuggingLinkVisible: Boolean, 94 debuggingLinkVisible: Boolean,
93 }, 95 },
94 96
95 /** 97 /**
96 * GUID of the user-selected network. It is remembered after user taps on 98 * GUID of the user-selected network. It is remembered after user taps on
97 * network entry. After we receive event "connected" on this network, 99 * network entry. After we receive event "connected" on this network,
98 * OOBE will proceed. 100 * OOBE will proceed.
99 */ 101 */
100 networkLastSelectedGuid_: '', 102 networkLastSelectedGuid_: '',
101 103
102 /** @override */ 104 /** @override */
(...skipping 20 matching lines...) Expand all
123 networkListItemNotConnected: 125 networkListItemNotConnected:
124 loadTimeData.getString('networkListItemNotConnected'), 126 loadTimeData.getString('networkListItemNotConnected'),
125 vpnNameTemplate: loadTimeData.getString('vpnNameTemplate'), 127 vpnNameTemplate: loadTimeData.getString('vpnNameTemplate'),
126 128
127 // Additional strings for custom items. 129 // Additional strings for custom items.
128 addMobileNetworkMenuName: 130 addMobileNetworkMenuName:
129 loadTimeData.getString('addMobileNetworkMenuName'), 131 loadTimeData.getString('addMobileNetworkMenuName'),
130 addWiFiNetworkMenuName: loadTimeData.getString('addWiFiNetworkMenuName'), 132 addWiFiNetworkMenuName: loadTimeData.getString('addWiFiNetworkMenuName'),
131 proxySettingsMenuName: loadTimeData.getString('proxySettingsMenuName'), 133 proxySettingsMenuName: loadTimeData.getString('proxySettingsMenuName'),
132 }; 134 };
135
136 this.i18nUpdateLocale();
133 }, 137 },
134 138
135 /** 139 /**
136 * Hides all screens to help switching from one screen to another. 140 * Hides all screens to help switching from one screen to another.
137 * @private 141 * @private
138 */ 142 */
139 hideAllScreens_: function() { 143 hideAllScreens_: function() {
140 this.$.welcomeScreen.hidden = true; 144 this.$.welcomeScreen.hidden = true;
141 145
142 var screens = Polymer.dom(this.root).querySelectorAll('oobe-dialog') 146 var screens = Polymer.dom(this.root).querySelectorAll('oobe-dialog');
143 for (var i = 0; i < screens.length; ++i) { 147 for (var i = 0; i < screens.length; ++i) {
144 screens[i].hidden = true; 148 screens[i].hidden = true;
145 } 149 }
146 }, 150 },
147 151
148 /** 152 /**
149 * Shows given screen. 153 * Shows given screen.
150 * @param id String Screen ID. 154 * @param id String Screen ID.
151 * @private 155 * @private
152 */ 156 */
153 showScreen_: function(id) { 157 showScreen_: function(id) {
154 this.hideAllScreens_(); 158 this.hideAllScreens_();
155 159
156 var screen = this.$[id]; 160 var screen = this.$[id];
157 assert(screen); 161 assert(screen);
158 screen.hidden = false; 162 screen.hidden = false;
159 screen.show(); 163 screen.show();
160 }, 164 },
161 165
162 /** 166 /**
163 * Returns active screen object. 167 * Returns active screen object.
164 * @private 168 * @private
165 */ 169 */
166 getActiveScreen_: function() { 170 getActiveScreen_: function() {
167 var screens = Polymer.dom(this.root).querySelectorAll('oobe-dialog') 171 var screens = Polymer.dom(this.root).querySelectorAll('oobe-dialog');
168 for (var i = 0; i < screens.length; ++i) { 172 for (var i = 0; i < screens.length; ++i) {
169 if (!screens[i].hidden) 173 if (!screens[i].hidden)
170 return screens[i]; 174 return screens[i];
171 } 175 }
172 return this.$.welcomeScreen; 176 return this.$.welcomeScreen;
173 }, 177 },
174 178
175 focus: function() { 179 focus: function() {
176 this.getActiveScreen_().focus(); 180 this.getActiveScreen_().focus();
177 }, 181 },
(...skipping 22 matching lines...) Expand all
200 * when connected to a network. 204 * when connected to a network.
201 * @private 205 * @private
202 */ 206 */
203 getNetworkCustomItems_: function(isConnected_) { 207 getNetworkCustomItems_: function(isConnected_) {
204 var self = this; 208 var self = this;
205 var items = [ 209 var items = [
206 { 210 {
207 customItemName: 'proxySettingsMenuName', 211 customItemName: 'proxySettingsMenuName',
208 polymerIcon: 'oobe-welcome-20:add-proxy', 212 polymerIcon: 'oobe-welcome-20:add-proxy',
209 customData: { 213 customData: {
210 onTap: function() { self.OpenProxySettingsDialog_(); }, 214 onTap: function() {
215 self.OpenProxySettingsDialog_();
216 },
211 }, 217 },
212 }, 218 },
213 { 219 {
214 customItemName: 'addWiFiNetworkMenuName', 220 customItemName: 'addWiFiNetworkMenuName',
215 polymerIcon: 'oobe-welcome-20:add-wifi', 221 polymerIcon: 'oobe-welcome-20:add-wifi',
216 customData: { 222 customData: {
217 onTap: function() { self.OpenAddWiFiNetworkDialog_(); }, 223 onTap: function() {
224 self.OpenAddWiFiNetworkDialog_();
225 },
218 }, 226 },
219 }, 227 },
220 { 228 {
221 customItemName: 'addMobileNetworkMenuName', 229 customItemName: 'addMobileNetworkMenuName',
222 polymerIcon: 'oobe-welcome-20:add-cellular', 230 polymerIcon: 'oobe-welcome-20:add-cellular',
223 customData: { 231 customData: {
224 onTap: function() { self.OpenAddWiFiNetworkDialog_(); }, 232 onTap: function() {
233 self.OpenAddWiFiNetworkDialog_();
234 },
225 }, 235 },
226 }, 236 },
227 ]; 237 ];
228 if (isConnected_) 238 if (isConnected_)
229 return items; 239 return items;
230 return items.slice(1); 240 return items.slice(1);
231 }, 241 },
232 242
233 /** 243 /**
234 * Returns true if timezone button should be visible. 244 * Returns true if timezone button should be visible.
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after
268 /** 278 /**
269 * Handle "Timezone" button for "Welcome" screen. 279 * Handle "Timezone" button for "Welcome" screen.
270 * 280 *
271 * @private 281 * @private
272 */ 282 */
273 onWelcomeTimezoneButtonClicked_: function() { 283 onWelcomeTimezoneButtonClicked_: function() {
274 this.showScreen_('timezoneScreen'); 284 this.showScreen_('timezoneScreen');
275 }, 285 },
276 286
277 /** 287 /**
278 * Handle Networwork Setup screen "Proxy settings" button. 288 * Handle Network Setup screen "Proxy settings" button.
279 * 289 *
280 * @private 290 * @private
281 */ 291 */
282 OpenProxySettingsDialog_: function(item) { 292 OpenProxySettingsDialog_: function(item) {
283 chrome.send('launchProxySettingsDialog'); 293 chrome.send('launchProxySettingsDialog');
284 }, 294 },
285 295
286 /** 296 /**
287 * Handle Networwork Setup screen "Add WiFi network" button. 297 * Handle Network Setup screen "Add WiFi network" button.
288 * 298 *
289 * @private 299 * @private
290 */ 300 */
291 OpenAddWiFiNetworkDialog_: function(item) { 301 OpenAddWiFiNetworkDialog_: function(item) {
292 chrome.send('launchAddWiFiNetworkDialog'); 302 chrome.send('launchAddWiFiNetworkDialog');
293 }, 303 },
294 304
295 /** 305 /**
296 * Handle Networwork Setup screen "Add cellular network" button. 306 * Handle Network Setup screen "Add cellular network" button.
297 * 307 *
298 * @private 308 * @private
299 */ 309 */
300 OpenAddMobileNetworkDialog_: function(item) { 310 OpenAddMobileNetworkDialog_: function(item) {
301 chrome.send('launchAddMobileNetworkDialog'); 311 chrome.send('launchAddMobileNetworkDialog');
302 }, 312 },
303 313
304 /** 314 /**
305 * This is called when network setup is done. 315 * This is called when network setup is done.
306 * 316 *
(...skipping 180 matching lines...) Expand 10 before | Expand all | Expand 10 after
487 * @private 497 * @private
488 */ 498 */
489 onTimezoneSelected_: function(event) { 499 onTimezoneSelected_: function(event) {
490 var item = event.detail; 500 var item = event.detail;
491 if (!item) 501 if (!item)
492 return; 502 return;
493 503
494 this.screen.onTimezoneSelected_(item.value); 504 this.screen.onTimezoneSelected_(item.value);
495 }, 505 },
496 }); 506 });
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698