| Index: chrome/browser/resources/instant/instant.js
|
| diff --git a/chrome/browser/resources/instant/instant.js b/chrome/browser/resources/instant/instant.js
|
| index 8fa494bb6d372f94c5c32d2ed728d3311a192edf..ee825bf6aeced6a1e5bcd39dce199eec2e2665bb 100644
|
| --- a/chrome/browser/resources/instant/instant.js
|
| +++ b/chrome/browser/resources/instant/instant.js
|
| @@ -18,9 +18,18 @@ var instantConfig = (function() {
|
| var FIELDS = [
|
| {
|
| key: 'instant.animation_scale_factor',
|
| - label: 'Slow down animations by a factor of',
|
| - units: 'no units, range 1 to 10',
|
| - default: 1
|
| + type: 'number',
|
| + label: 'Slow down animations by a factor of ',
|
| + units: 'no units, range 1 to 20',
|
| + default: 1,
|
| + min: 1,
|
| + max: 20
|
| + },
|
| + {
|
| + key: 'instant.show_search_provider_logo',
|
| + type: 'checkbox',
|
| + label: 'Show search provider logo',
|
| + default: false
|
| }
|
| ];
|
|
|
| @@ -52,7 +61,7 @@ var instantConfig = (function() {
|
| row.appendChild(label);
|
|
|
| var input = createElementWithClass('input', 'row-input');
|
| - input.type = 'number';
|
| + input.type = field.type;
|
| input.size = 3;
|
| input.id = field.key;
|
| input.min = field.min || 0;
|
| @@ -77,7 +86,7 @@ var instantConfig = (function() {
|
| for (var i = 0; i < FIELDS.length; i++) {
|
| var field = FIELDS[i];
|
| $(field.key).onchange = (function(key) {
|
| - setPreferenceValue(key, $(key).value);
|
| + setPreferenceValue(key);
|
| }).bind(null, field.key);
|
| }
|
| }
|
| @@ -98,18 +107,27 @@ var instantConfig = (function() {
|
| * @param {value} value The current value associated with prefName.
|
| */
|
| function getPreferenceValueResult(prefName, value) {
|
| - $(prefName).value = value;
|
| + if ($(prefName).type == 'checkbox')
|
| + $(prefName).checked = value;
|
| + else
|
| + $(prefName).value = value;
|
| }
|
|
|
| /**
|
| - * Set a preference setting's value.
|
| + * Set a preference setting's value stored in the element with prefName.
|
| * @param {string} prefName The name of the preference value being set.
|
| - * @param {value} value The value to be associated with prefName.
|
| */
|
| - function setPreferenceValue(prefName, value) {
|
| + function setPreferenceValue(prefName) {
|
| + var value;
|
| + if ($(prefName).type == 'checkbox')
|
| + value = $(prefName).checked;
|
| + else if ($(prefName).type == 'number')
|
| + value = parseFloat($(prefName).value);
|
| + else
|
| + value = $(prefName).value;
|
| chrome.send(
|
| 'setPreferenceValue',
|
| - [prefName, parseFloat(value)]);
|
| + [prefName, value]);
|
| }
|
|
|
| /**
|
| @@ -119,8 +137,11 @@ var instantConfig = (function() {
|
| function onReset() {
|
| for (var i = 0; i < FIELDS.length; i++) {
|
| var field = FIELDS[i];
|
| - $(field.key).value = field.default;
|
| - setPreferenceValue(field.key, field.default);
|
| + if ($(field.key).type == 'checkbox')
|
| + $(field.key).checked = field.default;
|
| + else
|
| + $(field.key).value = field.default;
|
| + setPreferenceValue(field.key);
|
| }
|
| return false;
|
| }
|
| @@ -131,7 +152,7 @@ var instantConfig = (function() {
|
| function onSave() {
|
| for (var i = 0; i < FIELDS.length; i++) {
|
| var field = FIELDS[i];
|
| - setPreferenceValue(field.key, $(field.key).value);
|
| + setPreferenceValue(field.key);
|
| }
|
| return false;
|
| }
|
|
|