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

Unified Diff: chrome/browser/resources/settings/languages_page/add_languages_dialog.js

Issue 2519853005: MD Settings: Enable to search "Add languages" list. (Closed)
Patch Set: Fix to follow JavaScript Style Guide Created 4 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 side-by-side diff with in-line comments
Download patch
Index: chrome/browser/resources/settings/languages_page/add_languages_dialog.js
diff --git a/chrome/browser/resources/settings/languages_page/add_languages_dialog.js b/chrome/browser/resources/settings/languages_page/add_languages_dialog.js
index 43457ca2e1fc70b736c2fdaaf1e4733845e9be1e..08900cfc3e0233768d3d73feec6d980316a01f9b 100644
--- a/chrome/browser/resources/settings/languages_page/add_languages_dialog.js
+++ b/chrome/browser/resources/settings/languages_page/add_languages_dialog.js
@@ -30,6 +30,12 @@ Polymer({
type: Boolean,
value: true,
},
+
+ /** @private */
+ filterValue_: {
+ type: String,
+ value: '',
+ },
},
attached: function() {
@@ -41,18 +47,30 @@ Polymer({
},
/**
- * Returns the supported languages that are not yet enabled, based on
+ * Returns the supported languages that are not yet enabled
+ * and matching with filter keyword, based on
* the LanguageHelper's enabled languages list.
* @param {!Array<!chrome.languageSettingsPrivate.Language>}
* supportedLanguages
* @param {!Object} enabledLanguagesChange Polymer change record for
* |enabledLanguages|.
+ * @param {string} filterValue Keyword to filter languages in
+ * supported languages.
* @return {!Array<!chrome.languageSettingsPrivate.Language>}
* @private
*/
- getAvailableLanguages_: function(supportedLanguages, enabledLanguagesChange) {
+ getAvailableLanguages_: function(supportedLanguages,
+ enabledLanguagesChange,
+ filterValue) {
return supportedLanguages.filter(function(language) {
- return !this.languageHelper.isLanguageEnabled(language.code);
+ var isAvailableLanguage =
+ !this.languageHelper.isLanguageEnabled(language.code);
+ if (!filterValue) {
+ return isAvailableLanguage;
+ } else {
+ return isAvailableLanguage &&
+ Boolean(~language.displayName.indexOf(filterValue));
michaelpg 2016/12/02 03:56:41 the ~ trick is a bit too clever; much more readabl
michaelpg 2016/12/02 03:56:41 This comparison should be case-insensitive (e.g. c
+ }
}.bind(this));
},

Powered by Google App Engine
This is Rietveld 408576698