| Index: chrome/browser/resources/print_preview.js
|
| diff --git a/chrome/browser/resources/print_preview.js b/chrome/browser/resources/print_preview.js
|
| index 00478b6e5f2b3789297f79cc9c7a25d252d5ada7..323299665fa48348238b11bab74ce72c37791c5a 100644
|
| --- a/chrome/browser/resources/print_preview.js
|
| +++ b/chrome/browser/resources/print_preview.js
|
| @@ -48,10 +48,18 @@ const MANAGE_PRINTERS = 'Manage Printers';
|
| * the printer list.
|
| */
|
| function onLoad() {
|
| + $('system-dialog-link').addEventListener('click', showSystemDialog);
|
| + $('cancel-button').addEventListener('click', handleCancelButtonClick);
|
| + $('dummy-viewer').classList.add('hidden');
|
| +
|
| + if(!checkCompatiblePluginExists()) {
|
| + displayErrorMessage(localStrings.getString('noPlugin'));
|
| + return;
|
| + }
|
| +
|
| $('printer-list').disabled = true;
|
| $('print-button').disabled = true;
|
| $('print-button').addEventListener('click', printFile);
|
| - $('cancel-button').addEventListener('click', handleCancelButtonClick);
|
| $('all-pages').addEventListener('click', onPageSelectionMayHaveChanged);
|
| $('copies').addEventListener('input', copiesFieldChanged);
|
| $('print-pages').addEventListener('click', handleIndividualPagesCheckbox);
|
| @@ -68,7 +76,6 @@ function onLoad() {
|
| $('bw').addEventListener('click', function() { setColor(false); });
|
| $('printer-list').addEventListener(
|
| 'change', updateControlsWithSelectedPrinterCapabilities);
|
| - $('system-dialog-link').addEventListener('click', showSystemDialog);
|
| $('increment').addEventListener('click',
|
| function() { onCopiesButtonsClicked(1); });
|
| $('decrement').addEventListener('click',
|
| @@ -323,7 +330,6 @@ function printFile() {
|
| function requestPrintPreview() {
|
| isPreviewStillLoading = true;
|
| setControlsDisabled(true);
|
| - $('dancing-dots').classList.remove('hidden');
|
| $('dancing-dots').classList.remove('invisible');
|
| chrome.send('getPreview', [getSettingsJSON()]);
|
| }
|
| @@ -390,6 +396,7 @@ function setColor(color) {
|
| */
|
| function displayErrorMessage(errorMessage) {
|
| isPreviewStillLoading = false;
|
| + $('dancing-dots').classList.remove('invisible');
|
| $('dancing-dots-text').classList.add('hidden');
|
| $('error-text').innerHTML = errorMessage;
|
| $('error-text').classList.remove('hidden');
|
| @@ -510,6 +517,14 @@ function createPDFPlugin() {
|
| }
|
|
|
| /**
|
| + * Returns true if a compatible pdf plugin exists, false if it doesn't.
|
| + */
|
| +function checkCompatiblePluginExists() {
|
| + var dummyPlugin = $('dummy-viewer')
|
| + return !!dummyPlugin.onload;
|
| +}
|
| +
|
| +/**
|
| * Updates the state of print button depending on the user selection.
|
| * The button is enabled only when the following conditions are true.
|
| * 1) The selected page ranges are valid.
|
|
|