| 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 16af4d0231cbca3ba89434fb804a25f074865f43..2d88886bf2a066d745c0cbb5b0892d4376e871ba 100644
|
| --- a/chrome/browser/resources/options/pref_ui.js
|
| +++ b/chrome/browser/resources/options/pref_ui.js
|
| @@ -98,6 +98,8 @@ cr.define('options', function() {
|
| this.addEventListener(
|
| 'change',
|
| function(e) {
|
| + if (self.customChangeHandler(e))
|
| + return;
|
| var value = self.inverted_pref ? !self.checked : self.checked;
|
| switch(self.valueType) {
|
| case 'number':
|
| @@ -126,6 +128,17 @@ cr.define('options', function() {
|
| setDisabled: function(reason, disabled) {
|
| updateDisabledState_(this, reason, disabled);
|
| },
|
| +
|
| + /**
|
| + * This method is called first while processing an onchange event. If it
|
| + * returns false, regular onchange processing continues (setting the
|
| + * associated pref, etc). If it returns true, the rest of the onchange is
|
| + * not performed. I.e., this works like stopPropagation or cancelBubble.
|
| + * @param {Event} event Change event.
|
| + */
|
| + customChangeHandler: function(event) {
|
| + return false;
|
| + },
|
| };
|
|
|
| /**
|
|
|