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

Side by Side Diff: chrome/browser/resources/settings/languages_page/languages.js

Issue 2351963003: MD Settings: Replace language detail page with dropdown menu items (Closed)
Patch Set: rebase Created 4 years, 3 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 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 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 'settings-languages' handles Chrome's language and input 6 * @fileoverview 'settings-languages' handles Chrome's language and input
7 * method settings. The 'languages' property, which reflects the current 7 * method settings. The 'languages' property, which reflects the current
8 * language settings, must not be changed directly. Instead, changes to 8 * language settings, must not be changed directly. Instead, changes to
9 * language settings should be made using the LanguageHelper APIs provided by 9 * language settings should be made using the LanguageHelper APIs provided by
10 * this class via languageHelper. 10 * this class via languageHelper.
(...skipping 216 matching lines...) Expand 10 before | Expand all | Expand 10 after
227 } 227 }
228 }, 228 },
229 229
230 /** @private */ 230 /** @private */
231 translateLanguagesPrefChanged_: function() { 231 translateLanguagesPrefChanged_: function() {
232 var translateBlockedPref = this.getPref('translate_blocked_languages'); 232 var translateBlockedPref = this.getPref('translate_blocked_languages');
233 var translateBlockedSet = this.makeSetFromArray_( 233 var translateBlockedSet = this.makeSetFromArray_(
234 /** @type {!Array<string>} */(translateBlockedPref.value)); 234 /** @type {!Array<string>} */(translateBlockedPref.value));
235 235
236 for (var i = 0; i < this.languages.enabled.length; i++) { 236 for (var i = 0; i < this.languages.enabled.length; i++) {
237 if (this.languages.enabled[i].language.code == navigator.language)
238 continue;
237 var translateCode = this.convertLanguageCodeForTranslate( 239 var translateCode = this.convertLanguageCodeForTranslate(
238 this.languages.enabled[i].language.code); 240 this.languages.enabled[i].language.code);
239 this.set( 241 this.set(
240 'languages.enabled.' + i + '.translateEnabled', 242 'languages.enabled.' + i + '.translateEnabled',
241 !translateBlockedSet.has(translateCode)); 243 !translateBlockedSet.has(translateCode));
242 } 244 }
243 }, 245 },
244 246
245 /** 247 /**
246 * Constructs the languages model. 248 * Constructs the languages model.
(...skipping 87 matching lines...) Expand 10 before | Expand all | Expand 10 after
334 // Skip unsupported languages. 336 // Skip unsupported languages.
335 if (!language) 337 if (!language)
336 continue; 338 continue;
337 var languageState = /** @type {LanguageState} */({}); 339 var languageState = /** @type {LanguageState} */({});
338 languageState.language = language; 340 languageState.language = language;
339 languageState.spellCheckEnabled = !!spellCheckSet.has(code); 341 languageState.spellCheckEnabled = !!spellCheckSet.has(code);
340 // Translate is considered disabled if this language maps to any translate 342 // Translate is considered disabled if this language maps to any translate
341 // language that is blocked. 343 // language that is blocked.
342 var translateCode = this.convertLanguageCodeForTranslate(code); 344 var translateCode = this.convertLanguageCodeForTranslate(code);
343 languageState.translateEnabled = !!language.supportsTranslate && 345 languageState.translateEnabled = !!language.supportsTranslate &&
346 code != navigator.language &&
344 !translateBlockedSet.has(translateCode) && 347 !translateBlockedSet.has(translateCode) &&
345 translateCode != translateTarget; 348 translateCode != translateTarget;
346 enabledLanguageStates.push(languageState); 349 enabledLanguageStates.push(languageState);
347 } 350 }
348 return enabledLanguageStates; 351 return enabledLanguageStates;
349 }, 352 },
350 353
351 /** 354 /**
352 * Returns a list of enabled input methods. 355 * Returns a list of enabled input methods.
353 * @return {!Array<!chrome.languageSettingsPrivate.InputMethod>} 356 * @return {!Array<!chrome.languageSettingsPrivate.InputMethod>}
(...skipping 369 matching lines...) Expand 10 before | Expand all | Expand 10 after
723 this.updateEnabledInputMethods_(); 726 this.updateEnabledInputMethods_();
724 }, 727 },
725 728
726 /** @param {string} id Removed input method ID. */ 729 /** @param {string} id Removed input method ID. */
727 onInputMethodRemoved_: function(id) { 730 onInputMethodRemoved_: function(id) {
728 assert(cr.isChromeOS); 731 assert(cr.isChromeOS);
729 this.updateEnabledInputMethods_(); 732 this.updateEnabledInputMethods_();
730 }, 733 },
731 }); 734 });
732 })(); 735 })();
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698