Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(2552)

Unified Diff: chrome/browser/resources/options/browser_options.js

Issue 506663003: Consolidates accessing and setting the UMA pref to be within metrics code (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: MetricsReporting handling moved to browser_options_handler. JS callback is not called if the… Created 6 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
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..b442047c6e74f6be890f46a1c15861c3bfa8e0d3 100644
--- a/chrome/browser/resources/options/browser_options.js
+++ b/chrome/browser/resources/options/browser_options.js
@@ -38,6 +38,15 @@ cr.define('options', function() {
return section.style.height == '' || section.style.height == '0px';
};
+ /**
+ * Callback function after status of MetricsReporting checkbox failed to be
+ * changed (for non ChromeOS).
+ */
+ BrowserOptions.reverseMetricsReportingState = function() {
+ $('metricsReportingEnabled').checked =
+ !$('metricsReportingEnabled').checked;
+ };
+
BrowserOptions.prototype = {
__proto__: Page.prototype,
@@ -388,14 +397,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('metricsReportingCheckboxChanged',
+ [Boolean(event.currentTarget.checked)]);
+ updateMetricsRestartButton();
+ };
+ $('metricsReportingEnabled').checked =
+ loadTimeData.getBoolean('metricsReportingEnabledAtStart');
updateMetricsRestartButton();
}
$('networkPredictionOptions').onchange = function(event) {
@@ -1519,6 +1533,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');
+ }
},
/**

Powered by Google App Engine
This is Rietveld 408576698