Index: chrome/browser/resources/options/pref_ui.js |
diff --git a/chrome/browser/resources/options/pref_ui.js b/chrome/browser/resources/options/pref_ui.js |
index af87318a67dd532628d81d656e49e614fdb21778..58d49a79358bdfaa8a08ae8c0ba664b0bed55741 100644 |
--- a/chrome/browser/resources/options/pref_ui.js |
+++ b/chrome/browser/resources/options/pref_ui.js |
@@ -140,15 +140,12 @@ cr.define('options', function() { |
}, |
/** |
- * Getter for preference name attribute. |
+ * The name of the preference. |
+ * @type {string} |
*/ |
get pref() { |
return this.getAttribute('pref'); |
}, |
- |
- /** |
- * Setter for preference name attribute. |
- */ |
set pref(name) { |
this.setAttribute('pref', name); |
} |
@@ -408,27 +405,46 @@ cr.define('options', function() { |
// Listen to user events. |
this.addEventListener('change', |
function(e) { |
- if (!self.dataType) |
- console.error('unknown data type for <select> pref'); |
+ if (!self.dataType) { |
+ console.error('undefined data type for <select> pref'); |
+ return; |
+ } |
switch(self.dataType) { |
case 'number': |
Preferences.setIntegerPref(self.pref, |
self.options[self.selectedIndex].value, self.metric); |
break; |
+ case 'real': |
+ Preferences.setRealPref(self.pref, |
+ self.options[self.selectedIndex].value, self.metric); |
+ break; |
case 'boolean': |
var option = self.options[self.selectedIndex]; |
var value = (option.value == 'true') ? true : false; |
Preferences.setBooleanPref(self.pref, value, self.metric); |
break; |
case 'string': |
- case undefined: // Assume the pref is a string. |
Preferences.setStringPref(self.pref, |
self.options[self.selectedIndex].value, self.metric); |
break; |
+ default: |
+ console.error('unknown data type for <select> pref: ' + |
+ self.dataType); |
} |
}); |
}, |
+ |
+ /** |
+ * The data type for the preference options. |
+ * @type {string} |
+ */ |
+ get dataType() { |
arv (Not doing code reviews)
2011/01/13 20:51:10
There is a macro for this.
cr.defineProperty(Pref
|
+ return this.getAttribute('dataType'); |
+ }, |
+ set dataType(name) { |
+ this.setAttribute('dataType', name); |
+ } |
}; |
/** |