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

Side by Side Diff: chrome/browser/resources/print_preview/print_header.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('print_preview', function() { 5 cr.define('print_preview', function() {
6 'use strict'; 6 'use strict';
7 7
8 /** 8 /**
9 * Creates a PrintHeader object. This object encapsulates all the elements 9 * Creates a PrintHeader object. This object encapsulates all the elements
10 * and logic related to the top part of the left pane in print_preview.html. 10 * and logic related to the top part of the left pane in print_preview.html.
(...skipping 80 matching lines...) Expand 10 before | Expand all | Expand 10 after
91 decorateInternal: function() { 91 decorateInternal: function() {
92 cr.ui.reverseButtonStrips(this.getElement()); 92 cr.ui.reverseButtonStrips(this.getElement());
93 }, 93 },
94 94
95 /** @override */ 95 /** @override */
96 enterDocument: function() { 96 enterDocument: function() {
97 print_preview.Component.prototype.enterDocument.call(this); 97 print_preview.Component.prototype.enterDocument.call(this);
98 98
99 // User events 99 // User events
100 this.tracker.add( 100 this.tracker.add(
101 this.getChildElement('button.cancel'), 101 this.getChildElement('button.cancel'), 'click',
102 'click',
103 this.onCancelButtonClick_.bind(this)); 102 this.onCancelButtonClick_.bind(this));
104 this.tracker.add( 103 this.tracker.add(
105 this.getChildElement('button.print'), 104 this.getChildElement('button.print'), 'click',
106 'click',
107 this.onPrintButtonClick_.bind(this)); 105 this.onPrintButtonClick_.bind(this));
108 106
109 // Data events. 107 // Data events.
110 this.tracker.add( 108 this.tracker.add(
111 this.printTicketStore_, 109 this.printTicketStore_,
112 print_preview.PrintTicketStore.EventType.INITIALIZE, 110 print_preview.PrintTicketStore.EventType.INITIALIZE,
113 this.onTicketChange_.bind(this)); 111 this.onTicketChange_.bind(this));
114 this.tracker.add( 112 this.tracker.add(
115 this.printTicketStore_, 113 this.printTicketStore_,
116 print_preview.PrintTicketStore.EventType.DOCUMENT_CHANGE, 114 print_preview.PrintTicketStore.EventType.DOCUMENT_CHANGE,
(...skipping 20 matching lines...) Expand all
137 this.onTicketChange_.bind(this)); 135 this.onTicketChange_.bind(this));
138 }, 136 },
139 137
140 /** 138 /**
141 * Updates Print Button state. 139 * Updates Print Button state.
142 * @private 140 * @private
143 */ 141 */
144 updatePrintButtonEnabledState_: function() { 142 updatePrintButtonEnabledState_: function() {
145 this.getChildElement('button.print').disabled = 143 this.getChildElement('button.print').disabled =
146 this.destinationStore_.selectedDestination == null || 144 this.destinationStore_.selectedDestination == null ||
147 !this.isEnabled_ || 145 !this.isEnabled_ || !this.isPrintButtonEnabled_ ||
148 !this.isPrintButtonEnabled_ ||
149 !this.printTicketStore_.isTicketValid(); 146 !this.printTicketStore_.isTicketValid();
150 }, 147 },
151 148
152 /** 149 /**
153 * Updates the summary element based on the currently selected user options. 150 * Updates the summary element based on the currently selected user options.
154 * @private 151 * @private
155 */ 152 */
156 updateSummary_: function() { 153 updateSummary_: function() {
157 if (!this.printTicketStore_.isTicketValid()) { 154 if (!this.printTicketStore_.isTicketValid()) {
158 this.getChildElement('.summary').innerHTML = ''; 155 this.getChildElement('.summary').innerHTML = '';
159 return; 156 return;
160 } 157 }
161 158
162 var saveToPdfOrDrive = this.destinationStore_.selectedDestination && 159 var saveToPdfOrDrive = this.destinationStore_.selectedDestination &&
163 (this.destinationStore_.selectedDestination.id == 160 (this.destinationStore_.selectedDestination.id ==
164 print_preview.Destination.GooglePromotedId.SAVE_AS_PDF || 161 print_preview.Destination.GooglePromotedId.SAVE_AS_PDF ||
165 this.destinationStore_.selectedDestination.id == 162 this.destinationStore_.selectedDestination.id ==
166 print_preview.Destination.GooglePromotedId.DOCS); 163 print_preview.Destination.GooglePromotedId.DOCS);
167 164
168 var numPages = this.printTicketStore_.pageRange.getPageNumberSet().size; 165 var numPages = this.printTicketStore_.pageRange.getPageNumberSet().size;
169 var numSheets = numPages; 166 var numSheets = numPages;
170 if (!saveToPdfOrDrive && this.printTicketStore_.duplex.getValue()) { 167 if (!saveToPdfOrDrive && this.printTicketStore_.duplex.getValue()) {
171 numSheets = Math.ceil(numPages / 2); 168 numSheets = Math.ceil(numPages / 2);
172 } 169 }
173 170
174 var copies = this.printTicketStore_.copies.getValueAsNumber(); 171 var copies = this.printTicketStore_.copies.getValueAsNumber();
175 numSheets *= copies; 172 numSheets *= copies;
176 numPages *= copies; 173 numPages *= copies;
177 174
178 var pagesLabel = loadTimeData.getString('printPreviewPageLabelPlural'); 175 var pagesLabel = loadTimeData.getString('printPreviewPageLabelPlural');
179 var summaryLabel; 176 var summaryLabel;
180 if (numSheets > 1) { 177 if (numSheets > 1) {
181 summaryLabel = saveToPdfOrDrive ? pagesLabel : 178 summaryLabel = saveToPdfOrDrive ?
179 pagesLabel :
182 loadTimeData.getString('printPreviewSheetsLabelPlural'); 180 loadTimeData.getString('printPreviewSheetsLabelPlural');
183 } else { 181 } else {
184 summaryLabel = loadTimeData.getString( 182 summaryLabel = loadTimeData.getString(
185 saveToPdfOrDrive ? 'printPreviewPageLabelSingular' : 183 saveToPdfOrDrive ? 'printPreviewPageLabelSingular' :
186 'printPreviewSheetsLabelSingular'); 184 'printPreviewSheetsLabelSingular');
187 } 185 }
188 186
189 var html; 187 var html;
190 var label; 188 var label;
191 if (numPages != numSheets) { 189 if (numPages != numSheets) {
192 html = loadTimeData.getStringF( 190 html = loadTimeData.getStringF(
193 'printPreviewSummaryFormatLong', 191 'printPreviewSummaryFormatLong',
194 '<b>' + numSheets.toLocaleString() + '</b>', 192 '<b>' + numSheets.toLocaleString() + '</b>',
195 '<b>' + summaryLabel + '</b>', 193 '<b>' + summaryLabel + '</b>', numPages.toLocaleString(),
196 numPages.toLocaleString(),
197 pagesLabel); 194 pagesLabel);
198 label = loadTimeData.getStringF('printPreviewSummaryFormatLong', 195 label = loadTimeData.getStringF(
199 numSheets.toLocaleString(), 196 'printPreviewSummaryFormatLong', numSheets.toLocaleString(),
200 summaryLabel, 197 summaryLabel, numPages.toLocaleString(), pagesLabel);
201 numPages.toLocaleString(),
202 pagesLabel);
203 } else { 198 } else {
204 html = loadTimeData.getStringF( 199 html = loadTimeData.getStringF(
205 'printPreviewSummaryFormatShort', 200 'printPreviewSummaryFormatShort',
206 '<b>' + numSheets.toLocaleString() + '</b>', 201 '<b>' + numSheets.toLocaleString() + '</b>',
207 '<b>' + summaryLabel + '</b>'); 202 '<b>' + summaryLabel + '</b>');
208 label = loadTimeData.getStringF('printPreviewSummaryFormatShort', 203 label = loadTimeData.getStringF(
209 numSheets.toLocaleString(), 204 'printPreviewSummaryFormatShort', numSheets.toLocaleString(),
210 summaryLabel); 205 summaryLabel);
211 } 206 }
212 207
213 // Removing extra spaces from within the string. 208 // Removing extra spaces from within the string.
214 html = html.replace(/\s{2,}/g, ' '); 209 html = html.replace(/\s{2,}/g, ' ');
215 210
216 var summary = this.getChildElement('.summary'); 211 var summary = this.getChildElement('.summary');
217 summary.innerHTML = html; 212 summary.innerHTML = html;
218 summary.setAttribute('aria-label', label); 213 summary.setAttribute('aria-label', label);
219 }, 214 },
220 215
221 /** 216 /**
222 * Called when the print button is clicked. Dispatches a PRINT_DOCUMENT 217 * Called when the print button is clicked. Dispatches a PRINT_DOCUMENT
223 * common event. 218 * common event.
224 * @private 219 * @private
225 */ 220 */
226 onPrintButtonClick_: function() { 221 onPrintButtonClick_: function() {
227 if (this.destinationStore_.selectedDestination.id != 222 if (this.destinationStore_.selectedDestination.id !=
228 print_preview.Destination.GooglePromotedId.SAVE_AS_PDF) { 223 print_preview.Destination.GooglePromotedId.SAVE_AS_PDF) {
229 this.getChildElement('button.print').classList.add('loading'); 224 this.getChildElement('button.print').classList.add('loading');
230 this.getChildElement('button.cancel').classList.add('loading'); 225 this.getChildElement('button.cancel').classList.add('loading');
231 var isSaveLabel = (this.destinationStore_.selectedDestination.id == 226 var isSaveLabel =
227 (this.destinationStore_.selectedDestination.id ==
232 print_preview.Destination.GooglePromotedId.DOCS); 228 print_preview.Destination.GooglePromotedId.DOCS);
233 this.getChildElement('.summary').innerHTML = 229 this.getChildElement('.summary').innerHTML =
234 loadTimeData.getString(isSaveLabel ? 'saving' : 'printing'); 230 loadTimeData.getString(isSaveLabel ? 'saving' : 'printing');
235 } 231 }
236 cr.dispatchSimpleEvent(this, PrintHeader.EventType.PRINT_BUTTON_CLICK); 232 cr.dispatchSimpleEvent(this, PrintHeader.EventType.PRINT_BUTTON_CLICK);
237 }, 233 },
238 234
239 /** 235 /**
240 * Called when the cancel button is clicked. Dispatches a 236 * Called when the cancel button is clicked. Dispatches a
241 * CLOSE_PRINT_PREVIEW event. 237 * CLOSE_PRINT_PREVIEW event.
(...skipping 30 matching lines...) Expand all
272 this.updatePrintButtonEnabledState_(); 268 this.updatePrintButtonEnabledState_();
273 this.updateSummary_(); 269 this.updateSummary_();
274 if (document.activeElement == null || 270 if (document.activeElement == null ||
275 document.activeElement == document.body) { 271 document.activeElement == document.body) {
276 this.getChildElement('button.print').focus(); 272 this.getChildElement('button.print').focus();
277 } 273 }
278 } 274 }
279 }; 275 };
280 276
281 // Export 277 // Export
282 return { 278 return {PrintHeader: PrintHeader};
283 PrintHeader: PrintHeader
284 };
285 }); 279 });
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698