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

Side by Side Diff: chrome/browser/resources/print_preview/print_preview.js

Issue 387073002: Print preview changes for App Kiosk mode. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Fix PrintPreviewWebUITest.* Created 6 years, 5 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 | 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 // TODO(rltoscano): Move data/* into print_preview.data namespace 5 // TODO(rltoscano): Move data/* into print_preview.data namespace
6 6
7 var localStrings = new LocalStrings(templateData); 7 var localStrings = new LocalStrings(templateData);
8 8
9 <include src="component.js"/> 9 <include src="component.js"/>
10 10
(...skipping 176 matching lines...) Expand 10 before | Expand all | Expand 10 after
187 * Whether in kiosk mode where print preview can print automatically without 187 * Whether in kiosk mode where print preview can print automatically without
188 * user intervention. See http://crbug.com/31395. Print will start when 188 * user intervention. See http://crbug.com/31395. Print will start when
189 * both the print ticket has been initialized, and an initial printer has 189 * both the print ticket has been initialized, and an initial printer has
190 * been selected. 190 * been selected.
191 * @type {boolean} 191 * @type {boolean}
192 * @private 192 * @private
193 */ 193 */
194 this.isInKioskAutoPrintMode_ = false; 194 this.isInKioskAutoPrintMode_ = false;
195 195
196 /** 196 /**
197 * Whether Print Preview is in App Kiosk mode, basically, use only printers
198 * available for the device.
199 * @type {boolean}
200 * @private
201 */
202 this.isInAppKioskMode_ = false;
203
204 /**
197 * State of the print preview UI. 205 * State of the print preview UI.
198 * @type {print_preview.PrintPreview.UiState_} 206 * @type {print_preview.PrintPreview.UiState_}
199 * @private 207 * @private
200 */ 208 */
201 this.uiState_ = PrintPreview.UiState_.INITIALIZING; 209 this.uiState_ = PrintPreview.UiState_.INITIALIZING;
202 210
203 /** 211 /**
204 * Whether document preview generation is in progress. 212 * Whether document preview generation is in progress.
205 * @type {boolean} 213 * @type {boolean}
206 * @private 214 * @private
(...skipping 316 matching lines...) Expand 10 before | Expand all | Expand 10 after
523 * @private 531 * @private
524 */ 532 */
525 onInitialSettingsSet_: function(event) { 533 onInitialSettingsSet_: function(event) {
526 assert(this.uiState_ == PrintPreview.UiState_.INITIALIZING, 534 assert(this.uiState_ == PrintPreview.UiState_.INITIALIZING,
527 'Updating initial settings when not in initializing state: ' + 535 'Updating initial settings when not in initializing state: ' +
528 this.uiState_); 536 this.uiState_);
529 this.uiState_ = PrintPreview.UiState_.READY; 537 this.uiState_ = PrintPreview.UiState_.READY;
530 538
531 var settings = event.initialSettings; 539 var settings = event.initialSettings;
532 this.isInKioskAutoPrintMode_ = settings.isInKioskAutoPrintMode; 540 this.isInKioskAutoPrintMode_ = settings.isInKioskAutoPrintMode;
541 this.isInAppKioskMode_ = settings.isInAppKioskMode;
533 542
534 // The following components must be initialized in this order. 543 // The following components must be initialized in this order.
535 this.appState_.init( 544 this.appState_.init(
536 settings.serializedAppStateStr, 545 settings.serializedAppStateStr,
537 settings.systemDefaultDestinationId); 546 settings.systemDefaultDestinationId);
538 this.documentInfo_.init( 547 this.documentInfo_.init(
539 settings.isDocumentModifiable, 548 settings.isDocumentModifiable,
540 settings.documentTitle, 549 settings.documentTitle,
541 settings.documentHasSelection); 550 settings.documentHasSelection);
542 this.printTicketStore_.init( 551 this.printTicketStore_.init(
543 settings.thousandsDelimeter, 552 settings.thousandsDelimeter,
544 settings.decimalDelimeter, 553 settings.decimalDelimeter,
545 settings.unitType, 554 settings.unitType,
546 settings.selectionOnly); 555 settings.selectionOnly);
547 this.destinationStore_.init(); 556 this.destinationStore_.init(settings.isInAppKioskMode);
548 this.appState_.setInitialized(); 557 this.appState_.setInitialized();
549 558
550 $('document-title').innerText = settings.documentTitle; 559 $('document-title').innerText = settings.documentTitle;
551 setIsVisible($('system-dialog-link'), 560 setIsVisible($('system-dialog-link'),
552 !settings.hidePrintWithSystemDialogLink); 561 !settings.hidePrintWithSystemDialogLink);
562 setIsVisible($('cloud-print-dialog-link'), !settings.isInAppKioskMode);
553 }, 563 },
554 564
555 /** 565 /**
556 * Calls when the native layer enables Google Cloud Print integration. 566 * Calls when the native layer enables Google Cloud Print integration.
557 * Fetches the user's cloud printers. 567 * Fetches the user's cloud printers.
558 * @param {Event} event Contains the base URL of the Google Cloud Print 568 * @param {Event} event Contains the base URL of the Google Cloud Print
559 * service. 569 * service.
560 * @private 570 * @private
561 */ 571 */
562 onCloudPrintEnable_: function(event) { 572 onCloudPrintEnable_: function(event) {
563 this.cloudPrintInterface_ = new cloudprint.CloudPrintInterface( 573 this.cloudPrintInterface_ = new cloudprint.CloudPrintInterface(
564 event.baseCloudPrintUrl, 574 event.baseCloudPrintUrl,
565 this.nativeLayer_, 575 this.nativeLayer_,
566 this.userInfo_); 576 this.userInfo_,
577 event.appKioskMode);
567 this.tracker.add( 578 this.tracker.add(
568 this.cloudPrintInterface_, 579 this.cloudPrintInterface_,
569 cloudprint.CloudPrintInterface.EventType.SUBMIT_DONE, 580 cloudprint.CloudPrintInterface.EventType.SUBMIT_DONE,
570 this.onCloudPrintSubmitDone_.bind(this)); 581 this.onCloudPrintSubmitDone_.bind(this));
571 this.tracker.add( 582 this.tracker.add(
572 this.cloudPrintInterface_, 583 this.cloudPrintInterface_,
573 cloudprint.CloudPrintInterface.EventType.SEARCH_FAILED, 584 cloudprint.CloudPrintInterface.EventType.SEARCH_FAILED,
574 this.onCloudPrintError_.bind(this)); 585 this.onCloudPrintError_.bind(this));
575 this.tracker.add( 586 this.tracker.add(
576 this.cloudPrintInterface_, 587 this.cloudPrintInterface_,
(...skipping 78 matching lines...) Expand 10 before | Expand all | Expand 10 after
655 }, 666 },
656 667
657 /** 668 /**
658 * Called when there was an error communicating with Google Cloud print. 669 * Called when there was an error communicating with Google Cloud print.
659 * Displays an error message in the print header. 670 * Displays an error message in the print header.
660 * @param {!Event} event Contains the error message. 671 * @param {!Event} event Contains the error message.
661 * @private 672 * @private
662 */ 673 */
663 onCloudPrintError_: function(event) { 674 onCloudPrintError_: function(event) {
664 if (event.status == 403) { 675 if (event.status == 403) {
665 this.destinationSearch_.showCloudPrintPromo(); 676 if (!this.isInAppKioskMode_) {
677 this.destinationSearch_.showCloudPrintPromo();
678 }
666 } else if (event.status == 0) { 679 } else if (event.status == 0) {
667 return; // Ignore, the system does not have internet connectivity. 680 return; // Ignore, the system does not have internet connectivity.
668 } else { 681 } else {
669 this.printHeader_.setErrorMessage(event.message); 682 this.printHeader_.setErrorMessage(event.message);
670 } 683 }
671 if (event.status == 200) { 684 if (event.status == 200) {
672 console.error('Google Cloud Print Error: (' + event.errorCode + ') ' + 685 console.error('Google Cloud Print Error: (' + event.errorCode + ') ' +
673 event.message); 686 event.message);
674 } else { 687 } else {
675 console.error('Google Cloud Print Error: HTTP status ' + event.status); 688 console.error('Google Cloud Print Error: HTTP status ' + event.status);
(...skipping 358 matching lines...) Expand 10 before | Expand all | Expand 10 after
1034 <include src="search/recent_destination_list.js"/> 1047 <include src="search/recent_destination_list.js"/>
1035 <include src="search/destination_list_item.js"/> 1048 <include src="search/destination_list_item.js"/>
1036 <include src="search/destination_search.js"/> 1049 <include src="search/destination_search.js"/>
1037 <include src="search/search_box.js"/> 1050 <include src="search/search_box.js"/>
1038 <include src="search/fedex_tos.js"/> 1051 <include src="search/fedex_tos.js"/>
1039 1052
1040 window.addEventListener('DOMContentLoaded', function() { 1053 window.addEventListener('DOMContentLoaded', function() {
1041 printPreview = new print_preview.PrintPreview(); 1054 printPreview = new print_preview.PrintPreview();
1042 printPreview.initialize(); 1055 printPreview.initialize();
1043 }); 1056 });
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698