Commit ef3bf565 authored by vitalybuka's avatar vitalybuka Committed by Commit bot

PrintingHandler in utility process is required for Windows even without full printing.

Makes possible to print from windows with printing_enabled=2.

BUG=374321

Review URL: https://codereview.chromium.org/549423002

Cr-Commit-Position: refs/heads/master@{#293984}
parent 3f631981
...@@ -172,7 +172,7 @@ ...@@ -172,7 +172,7 @@
}], }],
], ],
}], }],
['enable_printing!=1', { ['enable_printing!=1 and OS!="win"', {
'sources!': [ 'sources!': [
'utility/printing_handler.cc', 'utility/printing_handler.cc',
'utility/printing_handler.h', 'utility/printing_handler.h',
......
...@@ -39,7 +39,7 @@ ...@@ -39,7 +39,7 @@
#include "chrome/utility/media_galleries/media_metadata_parser.h" #include "chrome/utility/media_galleries/media_metadata_parser.h"
#endif #endif
#if defined(ENABLE_FULL_PRINTING) #if defined(ENABLE_FULL_PRINTING) || defined(OS_WIN)
#include "chrome/utility/printing_handler.h" #include "chrome/utility/printing_handler.h"
#endif #endif
...@@ -81,7 +81,7 @@ ChromeContentUtilityClient::ChromeContentUtilityClient() ...@@ -81,7 +81,7 @@ ChromeContentUtilityClient::ChromeContentUtilityClient()
handlers_.push_back(new image_writer::ImageWriterHandler()); handlers_.push_back(new image_writer::ImageWriterHandler());
#endif #endif
#if defined(ENABLE_FULL_PRINTING) #if defined(ENABLE_FULL_PRINTING) || defined(OS_WIN)
handlers_.push_back(new PrintingHandler()); handlers_.push_back(new PrintingHandler());
#endif #endif
...@@ -160,7 +160,7 @@ void ChromeContentUtilityClient::PreSandboxStartup() { ...@@ -160,7 +160,7 @@ void ChromeContentUtilityClient::PreSandboxStartup() {
extensions::ExtensionsHandler::PreSandboxStartup(); extensions::ExtensionsHandler::PreSandboxStartup();
#endif #endif
#if defined(ENABLE_FULL_PRINTING) #if defined(ENABLE_FULL_PRINTING) || defined(OS_WIN)
PrintingHandler::PreSandboxStartup(); PrintingHandler::PreSandboxStartup();
#endif #endif
......
...@@ -263,12 +263,14 @@ bool PrintingHandler::OnMessageReceived(const IPC::Message& message) { ...@@ -263,12 +263,14 @@ bool PrintingHandler::OnMessageReceived(const IPC::Message& message) {
IPC_MESSAGE_HANDLER(ChromeUtilityMsg_RenderPDFPagesToMetafiles, IPC_MESSAGE_HANDLER(ChromeUtilityMsg_RenderPDFPagesToMetafiles,
OnRenderPDFPagesToMetafile) OnRenderPDFPagesToMetafile)
#endif // OS_WIN #endif // OS_WIN
#if defined(ENABLE_FULL_PRINTING)
IPC_MESSAGE_HANDLER(ChromeUtilityMsg_RenderPDFPagesToPWGRaster, IPC_MESSAGE_HANDLER(ChromeUtilityMsg_RenderPDFPagesToPWGRaster,
OnRenderPDFPagesToPWGRaster) OnRenderPDFPagesToPWGRaster)
IPC_MESSAGE_HANDLER(ChromeUtilityMsg_GetPrinterCapsAndDefaults, IPC_MESSAGE_HANDLER(ChromeUtilityMsg_GetPrinterCapsAndDefaults,
OnGetPrinterCapsAndDefaults) OnGetPrinterCapsAndDefaults)
IPC_MESSAGE_HANDLER(ChromeUtilityMsg_GetPrinterSemanticCapsAndDefaults, IPC_MESSAGE_HANDLER(ChromeUtilityMsg_GetPrinterSemanticCapsAndDefaults,
OnGetPrinterSemanticCapsAndDefaults) OnGetPrinterSemanticCapsAndDefaults)
#endif // ENABLE_FULL_PRINTING
IPC_MESSAGE_UNHANDLED(handled = false) IPC_MESSAGE_UNHANDLED(handled = false)
IPC_END_MESSAGE_MAP() IPC_END_MESSAGE_MAP()
return handled; return handled;
...@@ -304,6 +306,7 @@ void PrintingHandler::OnRenderPDFPagesToMetafile( ...@@ -304,6 +306,7 @@ void PrintingHandler::OnRenderPDFPagesToMetafile(
} }
#endif // OS_WIN #endif // OS_WIN
#if defined(ENABLE_FULL_PRINTING)
void PrintingHandler::OnRenderPDFPagesToPWGRaster( void PrintingHandler::OnRenderPDFPagesToPWGRaster(
IPC::PlatformFileForTransit pdf_transit, IPC::PlatformFileForTransit pdf_transit,
const printing::PdfRenderSettings& settings, const printing::PdfRenderSettings& settings,
...@@ -319,6 +322,7 @@ void PrintingHandler::OnRenderPDFPagesToPWGRaster( ...@@ -319,6 +322,7 @@ void PrintingHandler::OnRenderPDFPagesToPWGRaster(
} }
ReleaseProcessIfNeeded(); ReleaseProcessIfNeeded();
} }
#endif // ENABLE_FULL_PRINTING
#if defined(OS_WIN) #if defined(OS_WIN)
bool PrintingHandler::RenderPDFToWinMetafile( bool PrintingHandler::RenderPDFToWinMetafile(
...@@ -405,6 +409,7 @@ bool PrintingHandler::RenderPDFToWinMetafile( ...@@ -405,6 +409,7 @@ bool PrintingHandler::RenderPDFToWinMetafile(
} }
#endif // OS_WIN #endif // OS_WIN
#if defined(ENABLE_FULL_PRINTING)
bool PrintingHandler::RenderPDFPagesToPWGRaster( bool PrintingHandler::RenderPDFPagesToPWGRaster(
base::File pdf_file, base::File pdf_file,
const printing::PdfRenderSettings& settings, const printing::PdfRenderSettings& settings,
...@@ -534,3 +539,4 @@ void PrintingHandler::OnGetPrinterSemanticCapsAndDefaults( ...@@ -534,3 +539,4 @@ void PrintingHandler::OnGetPrinterSemanticCapsAndDefaults(
} }
ReleaseProcessIfNeeded(); ReleaseProcessIfNeeded();
} }
#endif // ENABLE_FULL_PRINTING
...@@ -10,8 +10,8 @@ ...@@ -10,8 +10,8 @@
#include "chrome/utility/utility_message_handler.h" #include "chrome/utility/utility_message_handler.h"
#include "ipc/ipc_platform_file.h" #include "ipc/ipc_platform_file.h"
#if !defined(ENABLE_FULL_PRINTING) #if !defined(ENABLE_FULL_PRINTING) && !defined(OS_WIN)
#error "Full printing must be enabled" #error "Windows or full printing must be enabled"
#endif #endif
namespace printing { namespace printing {
...@@ -40,11 +40,13 @@ class PrintingHandler : public UtilityMessageHandler { ...@@ -40,11 +40,13 @@ class PrintingHandler : public UtilityMessageHandler {
const printing::PdfRenderSettings& settings, const printing::PdfRenderSettings& settings,
const std::vector<printing::PageRange>& page_ranges); const std::vector<printing::PageRange>& page_ranges);
#endif // OS_WIN #endif // OS_WIN
#if defined(ENABLE_FULL_PRINTING)
void OnRenderPDFPagesToPWGRaster( void OnRenderPDFPagesToPWGRaster(
IPC::PlatformFileForTransit pdf_transit, IPC::PlatformFileForTransit pdf_transit,
const printing::PdfRenderSettings& settings, const printing::PdfRenderSettings& settings,
const printing::PwgRasterSettings& bitmap_settings, const printing::PwgRasterSettings& bitmap_settings,
IPC::PlatformFileForTransit bitmap_transit); IPC::PlatformFileForTransit bitmap_transit);
#endif // ENABLE_FULL_PRINTING
#if defined(OS_WIN) #if defined(OS_WIN)
// Helper method for Windows. // Helper method for Windows.
...@@ -60,7 +62,7 @@ class PrintingHandler : public UtilityMessageHandler { ...@@ -60,7 +62,7 @@ class PrintingHandler : public UtilityMessageHandler {
int* highest_rendered_page_number, int* highest_rendered_page_number,
double* scale_factor); double* scale_factor);
#endif // OS_WIN #endif // OS_WIN
#if defined(ENABLE_FULL_PRINTING)
bool RenderPDFPagesToPWGRaster( bool RenderPDFPagesToPWGRaster(
base::File pdf_file, base::File pdf_file,
const printing::PdfRenderSettings& settings, const printing::PdfRenderSettings& settings,
...@@ -69,6 +71,7 @@ class PrintingHandler : public UtilityMessageHandler { ...@@ -69,6 +71,7 @@ class PrintingHandler : public UtilityMessageHandler {
void OnGetPrinterCapsAndDefaults(const std::string& printer_name); void OnGetPrinterCapsAndDefaults(const std::string& printer_name);
void OnGetPrinterSemanticCapsAndDefaults(const std::string& printer_name); void OnGetPrinterSemanticCapsAndDefaults(const std::string& printer_name);
#endif // ENABLE_FULL_PRINTING
DISALLOW_COPY_AND_ASSIGN(PrintingHandler); DISALLOW_COPY_AND_ASSIGN(PrintingHandler);
}; };
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment