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

Side by Side Diff: chrome/browser/resources/options/clear_browser_data_overlay.js

Issue 108273002: Add information that some data may not get deleted (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Replaced [] and {} with || and ## to be left-to-right/right-to-left independent Created 7 years 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 cr.define('options', function() { 5 cr.define('options', function() {
6 var OptionsPage = options.OptionsPage; 6 var OptionsPage = options.OptionsPage;
7 7
8 /** 8 /**
9 * ClearBrowserDataOverlay class 9 * ClearBrowserDataOverlay class
10 * Encapsulated handling of the 'Clear Browser Data' overlay page. 10 * Encapsulated handling of the 'Clear Browser Data' overlay page.
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after
45 Preferences.getInstance().addEventListener(type, f); 45 Preferences.getInstance().addEventListener(type, f);
46 }); 46 });
47 47
48 var checkboxes = document.querySelectorAll( 48 var checkboxes = document.querySelectorAll(
49 '#cbd-content-area input[type=checkbox]'); 49 '#cbd-content-area input[type=checkbox]');
50 for (var i = 0; i < checkboxes.length; i++) { 50 for (var i = 0; i < checkboxes.length; i++) {
51 checkboxes[i].onclick = f; 51 checkboxes[i].onclick = f;
52 } 52 }
53 this.updateCommitButtonState_(); 53 this.updateCommitButtonState_();
54 54
55 this.createStuffRemainsFooter_();
56
55 $('clear-browser-data-dismiss').onclick = function(event) { 57 $('clear-browser-data-dismiss').onclick = function(event) {
56 ClearBrowserDataOverlay.dismiss(); 58 ClearBrowserDataOverlay.dismiss();
57 }; 59 };
58 $('clear-browser-data-commit').onclick = function(event) { 60 $('clear-browser-data-commit').onclick = function(event) {
59 ClearBrowserDataOverlay.setClearingState(true); 61 ClearBrowserDataOverlay.setClearingState(true);
60 chrome.send('performClearBrowserData'); 62 chrome.send('performClearBrowserData');
61 }; 63 };
62 64
63 var show = loadTimeData.getBoolean('showDeleteBrowsingHistoryCheckboxes'); 65 var show = loadTimeData.getBoolean('showDeleteBrowsingHistoryCheckboxes');
64 this.showDeleteHistoryCheckboxes_(show); 66 this.showDeleteHistoryCheckboxes_(show);
65 }, 67 },
66 68
69 // Create a footer that explains that some content is not cleared by the
70 // clear browsing history dialog.
71 createStuffRemainsFooter_: function() {
72 // The localized string is of the form "Saved [content settings] and
73 // {search engines} will not be cleared and may reflect your browsing
74 // habits.". The following parses out the parts in brackts and braces and
75 // converts them into buttons whereas the remainders are represented as
76 // span elements.
77 var footer =
78 document.querySelector('#some-stuff-remains-footer p');
79 var footerFragments =
80 loadTimeData.getString('contentSettingsAndSearchEnginesRemain')
81 .split(/([|#])/);
82 for (var i = 0; i < footerFragments.length;) {
83 var buttonId = '';
84 if (i + 2 < footerFragments.length) {
85 if (footerFragments[i] == '|' && footerFragments[i + 2] == '|') {
86 buttonId = 'open-content-settings-from-clear-browsing-data';
87 } else if (footerFragments[i] == '#' &&
88 footerFragments[i + 2] == '#') {
89 buttonId = 'open-search-engines-from-clear-browsing-data';
90 }
91 }
92
93 if (buttonId != '') {
94 var button = document.createElement('button');
95 button.setAttribute('id', buttonId);
96 button.setAttribute('class', 'link-button');
97 button.textContent = footerFragments[i + 1];
98 footer.appendChild(button);
99 i += 3;
100 } else {
101 var span = document.createElement('span');
102 span.textContent = footerFragments[i];
103 footer.appendChild(span);
104 i += 1;
105 }
106 }
107 $('open-content-settings-from-clear-browsing-data').onclick =
108 function(event) {
109 OptionsPage.navigateToPage('content');
110 }
111 $('open-search-engines-from-clear-browsing-data').onclick =
112 function(event) {
113 OptionsPage.navigateToPage('searchEngines');
114 }
115 },
116
67 // Set the enabled state of the commit button. 117 // Set the enabled state of the commit button.
68 updateCommitButtonState_: function() { 118 updateCommitButtonState_: function() {
69 var checkboxes = document.querySelectorAll( 119 var checkboxes = document.querySelectorAll(
70 '#cbd-content-area input[type=checkbox]'); 120 '#cbd-content-area input[type=checkbox]');
71 var isChecked = false; 121 var isChecked = false;
72 for (var i = 0; i < checkboxes.length; i++) { 122 for (var i = 0; i < checkboxes.length; i++) {
73 if (checkboxes[i].checked) { 123 if (checkboxes[i].checked) {
74 isChecked = true; 124 isChecked = true;
75 break; 125 break;
76 } 126 }
(...skipping 73 matching lines...) Expand 10 before | Expand all | Expand 10 after
150 ClearBrowserDataOverlay.dismiss = function() { 200 ClearBrowserDataOverlay.dismiss = function() {
151 OptionsPage.closeOverlay(); 201 OptionsPage.closeOverlay();
152 this.setClearingState(false); 202 this.setClearingState(false);
153 }; 203 };
154 204
155 // Export 205 // Export
156 return { 206 return {
157 ClearBrowserDataOverlay: ClearBrowserDataOverlay 207 ClearBrowserDataOverlay: ClearBrowserDataOverlay
158 }; 208 };
159 }); 209 });
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698