| Index: chrome/browser/resources/options/browser_options.js
|
| diff --git a/chrome/browser/resources/options/browser_options.js b/chrome/browser/resources/options/browser_options.js
|
| index aea83e6ea6f85d6c80d20e75eed3bac97f7a7da1..0204857f566ced235b7864798ad29cecf56a016a 100644
|
| --- a/chrome/browser/resources/options/browser_options.js
|
| +++ b/chrome/browser/resources/options/browser_options.js
|
| @@ -38,6 +38,14 @@ cr.define('options', function() {
|
| return section.style.height == '' || section.style.height == '0px';
|
| };
|
|
|
| + BrowserOptions.setMetricsReportingJSCallback = function(success) {
|
| + // if no success then reverse the checkbox state.
|
| + if (!success) {
|
| + $('metricsReportingEnabled').checked =
|
| + !$('metricsReportingEnabled').checked;
|
| + }
|
| + };
|
| +
|
| BrowserOptions.prototype = {
|
| __proto__: Page.prototype,
|
|
|
| @@ -388,14 +396,19 @@ cr.define('options', function() {
|
| restartElements[1].onclick = function(event) {
|
| chrome.send('restartBrowser');
|
| };
|
| + // Attach the listener for updating the checkbox and restart button.
|
| var updateMetricsRestartButton = function() {
|
| $('metrics-reporting-reset-restart').hidden =
|
| loadTimeData.getBoolean('metricsReportingEnabledAtStart') ==
|
| $('metricsReportingEnabled').checked;
|
| };
|
| - Preferences.getInstance().addEventListener(
|
| - $('metricsReportingEnabled').getAttribute('pref'),
|
| - updateMetricsRestartButton);
|
| + $('metricsReportingEnabled').onclick = function(event) {
|
| + chrome.send('coreOptionsMetricsReportingChange',
|
| + [Boolean(event.currentTarget.checked)]);
|
| + updateMetricsRestartButton();
|
| + };
|
| + $('metricsReportingEnabled').checked =
|
| + loadTimeData.getBoolean('metricsReportingEnabledAtStart');
|
| updateMetricsRestartButton();
|
| }
|
| $('networkPredictionOptions').onchange = function(event) {
|
| @@ -1519,6 +1532,10 @@ cr.define('options', function() {
|
| setMetricsReportingCheckboxState_: function(checked, disabled) {
|
| $('metricsReportingEnabled').checked = checked;
|
| $('metricsReportingEnabled').disabled = disabled;
|
| + if (disabled) {
|
| + $('metrics-reporting-disabled-icon').setAttribute('controlled-by',
|
| + 'policy');
|
| + }
|
| },
|
|
|
| /**
|
|
|