Index: chrome/browser/resources/options/clear_browser_data_overlay.js |
diff --git a/chrome/browser/resources/options/clear_browser_data_overlay.js b/chrome/browser/resources/options/clear_browser_data_overlay.js |
index 501e462927513019b5c1a9cc6a1f598b892ab883..b4b8e5922ca6efd2e2908a633b6d0a3e231956c4 100644 |
--- a/chrome/browser/resources/options/clear_browser_data_overlay.js |
+++ b/chrome/browser/resources/options/clear_browser_data_overlay.js |
@@ -42,6 +42,7 @@ cr.define('options', function() { |
'browser.clear_data.cache', |
'browser.clear_data.cookies', |
'browser.clear_data.passwords', |
+ 'browser.clear_data.lso_data', |
'browser.clear_data.form_data']; |
types.forEach(function(type) { |
Preferences.getInstance().addEventListener(type, f); |
@@ -54,6 +55,40 @@ cr.define('options', function() { |
} |
this.updateCommitButtonState_(); |
+ (function(self, pref) { |
Evan Stade
2010/12/22 00:16:40
why is this a single use function and not just a b
Bernhard Bauer
2010/12/22 03:40:05
To restrict the scope of |self| and |pref| to this
Evan Stade
2010/12/22 21:36:16
yes please
Bernhard Bauer
2011/01/03 11:56:30
Done.
|
+ // Listen to pref changes. |
+ Preferences.getInstance().addEventListener( |
+ pref, |
+ function(event) { |
+ var value = event.value && event.value['value'] != undefined ? |
+ event.value['value'] : event.value; |
Evan Stade
2010/12/22 00:16:40
as long as you're casting to boolean, can't you ju
Bernhard Bauer
2010/12/22 03:40:05
Probably. I have to admit, I copied that piece of
Bernhard Bauer
2011/01/03 11:56:30
Done.
|
+ self.pref_value = Boolean(value); |
+ self.managed = event.value && |
+ event.value['managed'] != undefined ? |
+ event.value['managed'] : false; |
+ self.updateState(); |
+ }); |
+ |
+ ClearBrowserDataOverlay.setClearPluginLSODataEnabled = |
+ function(enabled) { |
+ self.manually_disabled = !enabled; |
+ self.updateState(); |
+ }; |
+ |
+ // Listen to user events. |
+ self.addEventListener('click', |
Evan Stade
2010/12/22 00:16:40
self.addEventListener('click', function (e) {
[.
Bernhard Bauer
2010/12/22 03:40:05
Done.
|
+ function(e) { |
+ Preferences.setBooleanPref(pref, self.checked, self.metric); |
+ }); |
+ |
+ self.updateState = function() { |
+ self.checked = self.pref_value && !self.manually_disabled; |
+ self.disabled = self.managed || self.manually_disabled; |
+ f(); |
Evan Stade
2010/12/22 00:16:40
what
Bernhard Bauer
2010/12/22 03:40:05
|f| is the updateCommitButtonState_ function bound
Evan Stade
2010/12/22 21:36:16
oh, I see. Yes, it should have a better name.
Bernhard Bauer
2011/01/03 11:56:30
Done.
|
+ }; |
+ |
+ })($('deleteLSODataCheckbox'), 'browser.clear_data.lso_data'); |
+ |
// Setup click handler for the clear(Ok) button. |
$('clearBrowsingDataCommit').onclick = function(event) { |
chrome.send('performClearBrowserData'); |
@@ -85,6 +120,7 @@ cr.define('options', function() { |
$('deleteCookiesCheckbox').disabled = state; |
$('deletePasswordsCheckbox').disabled = state; |
$('deleteFormDataCheckbox').disabled = state; |
+ $('deleteLSODataCheckbox').disabled = state; |
$('clearBrowsingDataTimePeriod').disabled = state; |
$('clearBrowsingDataDismiss').disabled = state; |
$('cbdThrobber').style.visibility = state ? 'visible' : 'hidden'; |