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

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

Issue 2077063002: MD Settings: Allow the user to order the list of languages. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fixed broken tests Created 4 years, 6 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 side-by-side diff with in-line comments
Download patch
Index: chrome/browser/resources/settings/languages_page/languages_page.js
diff --git a/chrome/browser/resources/settings/languages_page/languages_page.js b/chrome/browser/resources/settings/languages_page/languages_page.js
index cd6cfb8c79e5fa28300b7e676df75702be017100..e73aad0ff84e031a0314f266fc28a0de88b32119 100644
--- a/chrome/browser/resources/settings/languages_page/languages_page.js
+++ b/chrome/browser/resources/settings/languages_page/languages_page.js
@@ -71,10 +71,6 @@ Polymer({
if (!cr.isChromeOS && !cr.isWindows)
return;
- // Taps on the paper-icon-button are handled in onShowLanguageDetailTap_.
- if (e.target.tagName == 'PAPER-ICON-BUTTON')
- return;
-
// Set the prospective UI language. This won't take effect until a restart.
if (e.model.item.language.supportsUI)
this.languageHelper_.setUILanguage(e.model.item.language.code);
@@ -104,6 +100,57 @@ Polymer({
},
/**
+ * @param {number} index Index of the language in the list of languages.
+ * @param {!Object} change Polymer change object (provided in the HTML so this
+ * gets called whenever languages.enabled.* changes).
michaelpg 2016/06/21 00:34:42 doesn't |index| change when the list changes?
Moe 2016/06/21 20:10:19 Not really. It may be a Polymer bug. It seems like
michaelpg 2016/06/22 01:06:27 TIL, thanks.
+ * @return {boolean} True if the given language is the first one in the list
+ * of languages.
+ * @private
+ */
+ isFirstLanguage_: function(index, change) {
+ return index == 0;
+ },
+
+ /**
+ * Moves the language up in the list.
+ * @param {!{model: !{item: !LanguageState}}} e
+ * @private
+ */
+ onMoveUpTap_: function(e) {
michaelpg 2016/06/21 00:34:42 nit: put this above onMoveDownTap_
Moe 2016/06/21 20:10:19 Done.
+ this.languageHelper_.moveLanguage(e.model.item.language.code, -1);
+ },
+
+ /**
+ * @param {number} index Index of the language in the list of languages.
+ * @param {!Object} change Polymer change object (provided in the HTML so this
+ * gets called whenever languages.enabled.* changes).
+ * @return {boolean} True if the given language is the last one in the list of
+ * languages.
+ * @private
+ */
+ isLastLanguage_: function(index, change) {
+ return index == this.languages.enabled.length - 1;
+ },
+
+ /**
+ * @param {!Object} change Polymer change object (provided in the HTML so this
michaelpg 2016/06/21 00:34:42 meh, feel free to omit this param altogether, if n
Moe 2016/06/21 20:10:19 Done.
+ * gets called whenever languages.enabled.* changes).
+ * @return {boolean} True if there are less than 2 languages.
+ */
+ isHelpTextHidden_: function(change) {
+ return this.languages.enabled.length <= 1;
+ },
+
+ /**
+ * Moves the language down in the list.
+ * @param {!{model: !{item: !LanguageState}}} e
+ * @private
+ */
+ onMoveDownTap_: function(e) {
+ this.languageHelper_.moveLanguage(e.model.item.language.code, 1);
+ },
+
+ /**
* Opens the Language Detail page for the language.
* @param {!{model: !{item: !LanguageState}}} e
* @private

Powered by Google App Engine
This is Rietveld 408576698