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 a58b67059acff82e018587a1bb39000889384b09..8c376945fdbe33d6eed77f04948bde32f8699293 100644 |
--- a/chrome/browser/resources/options/browser_options.js |
+++ b/chrome/browser/resources/options/browser_options.js |
@@ -38,6 +38,13 @@ 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) |
Alexei Svitkine (slow)
2014/08/28 14:46:48
Nit: {}'s
gayane -on leave until 09-2017
2014/09/03 20:20:08
Done.
|
+ $('metricsReportingEnabled').checked = |
+ !$('metricsReportingEnabled').checked; |
Alexei Svitkine (slow)
2014/08/28 14:46:48
Nit: Indent 2 more.
gayane -on leave until 09-2017
2014/09/03 20:20:08
Done.
|
+ }; |
+ |
BrowserOptions.prototype = { |
__proto__: Page.prototype, |
@@ -388,14 +395,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 +1531,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'); |
+ } |
}, |
/** |