| Index: chrome/browser/resources/print_preview/native_layer.js
|
| diff --git a/chrome/browser/resources/print_preview/native_layer.js b/chrome/browser/resources/print_preview/native_layer.js
|
| index efdd55b36073695ca5a34c475a299e408e7ea0a9..d69ec668b0b9cddb3b3a0dd2142cf5b1a8b352c8 100644
|
| --- a/chrome/browser/resources/print_preview/native_layer.js
|
| +++ b/chrome/browser/resources/print_preview/native_layer.js
|
| @@ -46,6 +46,8 @@ cr.define('print_preview', function() {
|
| global['onPrivetCapabilitiesSet'] =
|
| this.onPrivetCapabilitiesSet_.bind(this);
|
| global['onPrivetPrintFailed'] = this.onPrivetPrintFailed_.bind(this);
|
| + global['onEnableManipulateSettingsForTest'] =
|
| + this.onEnableManipulateSettingsForTest_.bind(this);
|
| };
|
|
|
| /**
|
| @@ -77,7 +79,9 @@ cr.define('print_preview', function() {
|
| PRIVET_PRINTER_CHANGED: 'print_preview.NativeLayer.PRIVET_PRINTER_CHANGED',
|
| PRIVET_CAPABILITIES_SET:
|
| 'print_preview.NativeLayer.PRIVET_CAPABILITIES_SET',
|
| - PRIVET_PRINT_FAILED: 'print_preview.NativeLayer.PRIVET_PRINT_FAILED'
|
| + PRIVET_PRINT_FAILED: 'print_preview.NativeLayer.PRIVET_PRINT_FAILED',
|
| + MANIPULATE_SETTINGS_FOR_TEST:
|
| + 'print_preview.NativeLayer.MANIPULATE_SETTINGS_FOR_TEST'
|
| };
|
|
|
| /**
|
| @@ -373,6 +377,10 @@ cr.define('print_preview', function() {
|
| chrome.send('forceOpenNewTab', [url]);
|
| },
|
|
|
| + doneManipulatingSettings: function() {
|
| + chrome.send('UILoadedForTest');
|
| + },
|
| +
|
| /**
|
| * @param {!Object} initialSettings Object containing all initial settings.
|
| */
|
| @@ -672,6 +680,49 @@ cr.define('print_preview', function() {
|
| new Event(NativeLayer.EventType.PRIVET_PRINT_FAILED);
|
| privetPrintFailedEvent.httpError = http_error;
|
| this.dispatchEvent(privetPrintFailedEvent);
|
| + },
|
| +
|
| + /**
|
| + * Function that allows for onManipulateSettings to be called
|
| + * from the native layer, specifically during testing.
|
| + */
|
| + onEnableManipulateSettingsForTest_: function() {
|
| + global['onManipulateSettingsForTest'] =
|
| + this.onManipulateSettingsForTest_.bind(this);
|
| + },
|
| +
|
| + /**
|
| + * Function call from browsertest to start clicking certain buttons.
|
| + * @param {string} messageName The setting that is to be manipulated,
|
| + * such as the layout settings, or page numbers
|
| + * @param {string, boolean, undefined} Is the value that we want to
|
| + * set the particular setting to. For layout settings, page numbers,
|
| + * and margins, its a string. For 'headers and footers' and
|
| + * 'background colors and images,' its a boolean. For Save as PDF,
|
| + * its undefined as it isn't needed.
|
| + */
|
| + onManipulateSettingsForTest_: function(messageName, parameter) {
|
| + var manipulateSettingsEvent =
|
| + new Event(NativeLayer.EventType.MANIPULATE_SETTINGS_FOR_TEST);
|
| + manipulateSettingsEvent.messageName = messageName;
|
| + if (messageName == 'SAVE_AS_PDF') {
|
| + }
|
| + else if (messageName == 'LAYOUT_SETTINGS') {
|
| + manipulateSettingsEvent.isPortrait = parameter;
|
| + }
|
| + else if (messageName == 'PAGE_NUMBERS') {
|
| + manipulateSettingsEvent.pageNumbers = parameter;
|
| + }
|
| + else if (messageName == 'HEADERS_AND_FOOTERS') {
|
| + manipulateSettingsEvent.headersAndFooters = parameter;
|
| + }
|
| + else if (messageName == 'BACKGROUND_COLORS_AND_IMAGES') {
|
| + manipulateSettingsEvent.backgroundColorsAndImages = parameter;
|
| + }
|
| + else if (messageName == 'MARGINS') {
|
| + manipulateSettingsEvent.margins = parameter;
|
| + }
|
| + this.dispatchEvent(manipulateSettingsEvent);
|
| }
|
| };
|
|
|
|
|