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

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

Issue 2939273002: DO NOT SUBMIT: what chrome/browser/resources/ could eventually look like with clang-format (Closed)
Patch Set: Created 3 years, 6 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 unified diff | Download patch
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 Page = cr.ui.pageManager.Page; 6 var Page = cr.ui.pageManager.Page;
7 var PageManager = cr.ui.pageManager.PageManager; 7 var PageManager = cr.ui.pageManager.PageManager;
8 8
9 /** 9 /**
10 * ClearBrowserDataOverlay class 10 * ClearBrowserDataOverlay class
11 * Encapsulated handling of the 'Clear Browser Data' overlay page. 11 * Encapsulated handling of the 'Clear Browser Data' overlay page.
12 * @class 12 * @class
13 */ 13 */
14 function ClearBrowserDataOverlay() { 14 function ClearBrowserDataOverlay() {
15 Page.call(this, 'clearBrowserData', 15 Page.call(
16 loadTimeData.getString('clearBrowserDataOverlayTabTitle'), 16 this, 'clearBrowserData',
17 'clear-browser-data-overlay'); 17 loadTimeData.getString('clearBrowserDataOverlayTabTitle'),
18 'clear-browser-data-overlay');
18 } 19 }
19 20
20 cr.addSingletonGetter(ClearBrowserDataOverlay); 21 cr.addSingletonGetter(ClearBrowserDataOverlay);
21 22
22 ClearBrowserDataOverlay.prototype = { 23 ClearBrowserDataOverlay.prototype = {
23 // Inherit ClearBrowserDataOverlay from Page. 24 // Inherit ClearBrowserDataOverlay from Page.
24 __proto__: Page.prototype, 25 __proto__: Page.prototype,
25 26
26 /** 27 /**
27 * Whether deleting history and downloads is allowed. 28 * Whether deleting history and downloads is allowed.
(...skipping 18 matching lines...) Expand all
46 * @type {boolean} 47 * @type {boolean}
47 * @private 48 * @private
48 */ 49 */
49 isInitializationComplete_: false, 50 isInitializationComplete_: false,
50 51
51 /** @override */ 52 /** @override */
52 initializePage: function() { 53 initializePage: function() {
53 Page.prototype.initializePage.call(this); 54 Page.prototype.initializePage.call(this);
54 55
55 var f = this.updateStateOfControls_.bind(this); 56 var f = this.updateStateOfControls_.bind(this);
56 var types = ['browser.clear_data.browsing_history', 57 var types = [
57 'browser.clear_data.download_history', 58 'browser.clear_data.browsing_history',
58 'browser.clear_data.cache', 59 'browser.clear_data.download_history', 'browser.clear_data.cache',
59 'browser.clear_data.cookies', 60 'browser.clear_data.cookies', 'browser.clear_data.passwords',
60 'browser.clear_data.passwords', 61 'browser.clear_data.form_data', 'browser.clear_data.hosted_apps_data',
61 'browser.clear_data.form_data', 62 'browser.clear_data.media_licenses'
62 'browser.clear_data.hosted_apps_data', 63 ];
63 'browser.clear_data.media_licenses'];
64 types.forEach(function(type) { 64 types.forEach(function(type) {
65 Preferences.getInstance().addEventListener(type, f); 65 Preferences.getInstance().addEventListener(type, f);
66 }); 66 });
67 67
68 var checkboxes = document.querySelectorAll( 68 var checkboxes =
69 '#cbd-content-area input[type=checkbox]'); 69 document.querySelectorAll('#cbd-content-area input[type=checkbox]');
70 for (var i = 0; i < checkboxes.length; i++) { 70 for (var i = 0; i < checkboxes.length; i++) {
71 checkboxes[i].onclick = f; 71 checkboxes[i].onclick = f;
72 } 72 }
73 73
74 $('clear-browser-data-dismiss').onclick = function(event) { 74 $('clear-browser-data-dismiss').onclick = function(event) {
75 ClearBrowserDataOverlay.dismiss(); 75 ClearBrowserDataOverlay.dismiss();
76 }; 76 };
77 $('clear-browser-data-commit').onclick = function(event) { 77 $('clear-browser-data-commit').onclick = function(event) {
78 ClearBrowserDataOverlay.setClearing(true); 78 ClearBrowserDataOverlay.setClearing(true);
79 chrome.send('performClearBrowserData'); 79 chrome.send('performClearBrowserData');
(...skipping 25 matching lines...) Expand all
105 * @private 105 * @private
106 */ 106 */
107 createFooter_: function(simple, syncing, showHistoryFooter) { 107 createFooter_: function(simple, syncing, showHistoryFooter) {
108 // The localized string is of the form "Saved [content settings] and 108 // The localized string is of the form "Saved [content settings] and
109 // {search engines} will not be cleared and may reflect your browsing 109 // {search engines} will not be cleared and may reflect your browsing
110 // habits.", or of the form "Some settings that may reflect browsing 110 // habits.", or of the form "Some settings that may reflect browsing
111 // habits |will not be cleared|." if the simplified support string 111 // habits |will not be cleared|." if the simplified support string
112 // experiment is enabled. The following parses out the parts in brackets 112 // experiment is enabled. The following parses out the parts in brackets
113 // and braces and converts them into buttons whereas the remainders are 113 // and braces and converts them into buttons whereas the remainders are
114 // represented as span elements. 114 // represented as span elements.
115 var footer = 115 var footer = document.querySelector('#some-stuff-remains-footer p span');
116 document.querySelector('#some-stuff-remains-footer p span');
117 var footerFragments = 116 var footerFragments =
118 loadTimeData.getString('clearBrowserDataSupportString') 117 loadTimeData.getString('clearBrowserDataSupportString')
119 .split(/([|#])/); 118 .split(/([|#])/);
120 119
121 if (simple) { 120 if (simple) {
122 footerFragments.unshift( 121 footerFragments.unshift(
123 loadTimeData.getString('clearBrowserDataSyncWarning') + 122 loadTimeData.getString('clearBrowserDataSyncWarning') +
124 ' ' // Padding between the sync warning and the rest of the footer. 123 ' ' // Padding between the sync warning and the rest of the footer.
125 ); 124 );
126 } 125 }
127 126
128 for (var i = 0; i < footerFragments.length;) { 127 for (var i = 0; i < footerFragments.length;) {
129 var linkId = ''; 128 var linkId = '';
130 if (i + 2 < footerFragments.length) { 129 if (i + 2 < footerFragments.length) {
131 if (footerFragments[i] == '|' && footerFragments[i + 2] == '|') { 130 if (footerFragments[i] == '|' && footerFragments[i + 2] == '|') {
132 linkId = 'open-content-settings-from-clear-browsing-data'; 131 linkId = 'open-content-settings-from-clear-browsing-data';
133 } else if (footerFragments[i] == '#' && 132 } else if (
134 footerFragments[i + 2] == '#') { 133 footerFragments[i] == '#' && footerFragments[i + 2] == '#') {
135 linkId = 'open-search-engines-from-clear-browsing-data'; 134 linkId = 'open-search-engines-from-clear-browsing-data';
136 } 135 }
137 } 136 }
138 137
139 if (linkId) { 138 if (linkId) {
140 var link = new ActionLink; 139 var link = new ActionLink;
141 link.id = linkId; 140 link.id = linkId;
142 link.textContent = footerFragments[i + 1]; 141 link.textContent = footerFragments[i + 1];
143 footer.appendChild(link); 142 footer.appendChild(link);
144 i += 3; 143 i += 3;
145 } else { 144 } else {
146 var span = document.createElement('span'); 145 var span = document.createElement('span');
147 span.textContent = footerFragments[i]; 146 span.textContent = footerFragments[i];
148 if (simple && i == 0) { 147 if (simple && i == 0) {
149 span.id = 'clear-browser-data-sync-warning'; 148 span.id = 'clear-browser-data-sync-warning';
150 span.hidden = !syncing; 149 span.hidden = !syncing;
151 } 150 }
152 footer.appendChild(span); 151 footer.appendChild(span);
153 i += 1; 152 i += 1;
154 } 153 }
155 } 154 }
156 155
157 if (!simple) { 156 if (!simple) {
158 $('open-content-settings-from-clear-browsing-data').onclick = 157 $('open-content-settings-from-clear-browsing-data').onclick = function(
159 function(event) { 158 event) {
160 PageManager.showPageByName('content'); 159 PageManager.showPageByName('content');
161 }; 160 };
162 $('open-search-engines-from-clear-browsing-data').onclick = 161 $('open-search-engines-from-clear-browsing-data').onclick = function(
163 function(event) { 162 event) {
164 PageManager.showPageByName('searchEngines'); 163 PageManager.showPageByName('searchEngines');
165 }; 164 };
166 } 165 }
167 166
168 $('clear-browser-data-old-learn-more-link').hidden = simple; 167 $('clear-browser-data-old-learn-more-link').hidden = simple;
169 $('clear-browser-data-footer-learn-more-link').hidden = !simple; 168 $('clear-browser-data-footer-learn-more-link').hidden = !simple;
170 $('flash-storage-settings').hidden = simple; 169 $('flash-storage-settings').hidden = simple;
171 $('clear-browser-data-history-footer').hidden = !showHistoryFooter; 170 $('clear-browser-data-history-footer').hidden = !showHistoryFooter;
172 }, 171 },
173 172
(...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after
221 * @private 220 * @private
222 */ 221 */
223 updateStateOfControls_: function() { 222 updateStateOfControls_: function() {
224 // The commit button is enabled if at least one data type selected to be 223 // The commit button is enabled if at least one data type selected to be
225 // cleared, and if we are not already in the process of clearing. 224 // cleared, and if we are not already in the process of clearing.
226 // To prevent the commit button from being hazardously enabled for a very 225 // To prevent the commit button from being hazardously enabled for a very
227 // short time before setClearing() is called the first time by the native 226 // short time before setClearing() is called the first time by the native
228 // side, also disable the button if |isInitializationComplete_| is false. 227 // side, also disable the button if |isInitializationComplete_| is false.
229 var enabled = false; 228 var enabled = false;
230 if (this.isInitializationComplete_ && !this.isClearingInProgress_) { 229 if (this.isInitializationComplete_ && !this.isClearingInProgress_) {
231 var checkboxes = document.querySelectorAll( 230 var checkboxes =
232 '#cbd-content-area input[type=checkbox]'); 231 document.querySelectorAll('#cbd-content-area input[type=checkbox]');
233 for (var i = 0; i < checkboxes.length; i++) { 232 for (var i = 0; i < checkboxes.length; i++) {
234 if (checkboxes[i].checked) { 233 if (checkboxes[i].checked) {
235 enabled = true; 234 enabled = true;
236 break; 235 break;
237 } 236 }
238 } 237 }
239 } 238 }
240 $('clear-browser-data-commit').disabled = !enabled; 239 $('clear-browser-data-commit').disabled = !enabled;
241 240
242 // The checkboxes for clearing history/downloads are enabled unless they 241 // The checkboxes for clearing history/downloads are enabled unless they
(...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after
286 ClearBrowserDataOverlay.getInstance().setAllowDeletingHistory_(allowed); 285 ClearBrowserDataOverlay.getInstance().setAllowDeletingHistory_(allowed);
287 }; 286 };
288 287
289 ClearBrowserDataOverlay.updateCounter = function(pref_name, text) { 288 ClearBrowserDataOverlay.updateCounter = function(pref_name, text) {
290 ClearBrowserDataOverlay.getInstance().updateCounter_(pref_name, text); 289 ClearBrowserDataOverlay.getInstance().updateCounter_(pref_name, text);
291 }; 290 };
292 291
293 ClearBrowserDataOverlay.createFooter = function( 292 ClearBrowserDataOverlay.createFooter = function(
294 simple, syncing, showHistoryFooter) { 293 simple, syncing, showHistoryFooter) {
295 ClearBrowserDataOverlay.getInstance().createFooter_( 294 ClearBrowserDataOverlay.getInstance().createFooter_(
296 simple, syncing, showHistoryFooter); 295 simple, syncing, showHistoryFooter);
297 }; 296 };
298 297
299 ClearBrowserDataOverlay.updateSyncWarningAndHistoryFooter = function( 298 ClearBrowserDataOverlay.updateSyncWarningAndHistoryFooter = function(
300 syncing, showHistoryFooter) { 299 syncing, showHistoryFooter) {
301 ClearBrowserDataOverlay.getInstance().updateSyncWarningAndHistoryFooter_( 300 ClearBrowserDataOverlay.getInstance().updateSyncWarningAndHistoryFooter_(
302 syncing, showHistoryFooter); 301 syncing, showHistoryFooter);
303 }; 302 };
304 303
305 ClearBrowserDataOverlay.setClearing = function(clearing) { 304 ClearBrowserDataOverlay.setClearing = function(clearing) {
306 ClearBrowserDataOverlay.getInstance().setClearing_(clearing); 305 ClearBrowserDataOverlay.getInstance().setClearing_(clearing);
(...skipping 21 matching lines...) Expand all
328 }, 200); 327 }, 200);
329 }; 328 };
330 329
331 ClearBrowserDataOverlay.dismiss = function() { 330 ClearBrowserDataOverlay.dismiss = function() {
332 var topmostVisiblePage = PageManager.getTopmostVisiblePage(); 331 var topmostVisiblePage = PageManager.getTopmostVisiblePage();
333 if (topmostVisiblePage && topmostVisiblePage.name == 'clearBrowserData') 332 if (topmostVisiblePage && topmostVisiblePage.name == 'clearBrowserData')
334 PageManager.closeOverlay(); 333 PageManager.closeOverlay();
335 }; 334 };
336 335
337 // Export 336 // Export
338 return { 337 return {ClearBrowserDataOverlay: ClearBrowserDataOverlay};
339 ClearBrowserDataOverlay: ClearBrowserDataOverlay
340 };
341 }); 338 });
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698