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

Side by Side Diff: chrome/utility/printing_handler.cc

Issue 516823002: Removed print_web_view_helper_win.cc (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Thu Aug 28 14:04:52 PDT 2014 Created 6 years, 3 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 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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 #include "chrome/utility/printing_handler.h" 5 #include "chrome/utility/printing_handler.h"
6 6
7 #include "base/files/file_util.h" 7 #include "base/files/file_util.h"
8 #include "base/lazy_instance.h" 8 #include "base/lazy_instance.h"
9 #include "base/path_service.h" 9 #include "base/path_service.h"
10 #include "base/scoped_native_library.h" 10 #include "base/scoped_native_library.h"
(...skipping 241 matching lines...) Expand 10 before | Expand all | Expand 10 after
252 PrintingHandler::~PrintingHandler() {} 252 PrintingHandler::~PrintingHandler() {}
253 253
254 // static 254 // static
255 void PrintingHandler::PreSandboxStartup() { 255 void PrintingHandler::PreSandboxStartup() {
256 g_pdf_lib.Get().Init(); 256 g_pdf_lib.Get().Init();
257 } 257 }
258 258
259 bool PrintingHandler::OnMessageReceived(const IPC::Message& message) { 259 bool PrintingHandler::OnMessageReceived(const IPC::Message& message) {
260 bool handled = true; 260 bool handled = true;
261 IPC_BEGIN_MESSAGE_MAP(PrintingHandler, message) 261 IPC_BEGIN_MESSAGE_MAP(PrintingHandler, message)
262 #if defined(WIN_PDF_METAFILE_FOR_PRINTING) 262 #if defined(OS_WIN)
263 IPC_MESSAGE_HANDLER(ChromeUtilityMsg_RenderPDFPagesToMetafiles, 263 IPC_MESSAGE_HANDLER(ChromeUtilityMsg_RenderPDFPagesToMetafiles,
264 OnRenderPDFPagesToMetafile) 264 OnRenderPDFPagesToMetafile)
265 #endif 265 #endif // OS_WIN
266 IPC_MESSAGE_HANDLER(ChromeUtilityMsg_RenderPDFPagesToPWGRaster, 266 IPC_MESSAGE_HANDLER(ChromeUtilityMsg_RenderPDFPagesToPWGRaster,
267 OnRenderPDFPagesToPWGRaster) 267 OnRenderPDFPagesToPWGRaster)
268 IPC_MESSAGE_HANDLER(ChromeUtilityMsg_GetPrinterCapsAndDefaults, 268 IPC_MESSAGE_HANDLER(ChromeUtilityMsg_GetPrinterCapsAndDefaults,
269 OnGetPrinterCapsAndDefaults) 269 OnGetPrinterCapsAndDefaults)
270 IPC_MESSAGE_HANDLER(ChromeUtilityMsg_GetPrinterSemanticCapsAndDefaults, 270 IPC_MESSAGE_HANDLER(ChromeUtilityMsg_GetPrinterSemanticCapsAndDefaults,
271 OnGetPrinterSemanticCapsAndDefaults) 271 OnGetPrinterSemanticCapsAndDefaults)
272 IPC_MESSAGE_UNHANDLED(handled = false) 272 IPC_MESSAGE_UNHANDLED(handled = false)
273 IPC_END_MESSAGE_MAP() 273 IPC_END_MESSAGE_MAP()
274 return handled; 274 return handled;
275 } 275 }
276 276
277 #if defined(WIN_PDF_METAFILE_FOR_PRINTING) 277 #if defined(OS_WIN)
278 void PrintingHandler::OnRenderPDFPagesToMetafile( 278 void PrintingHandler::OnRenderPDFPagesToMetafile(
279 IPC::PlatformFileForTransit pdf_transit, 279 IPC::PlatformFileForTransit pdf_transit,
280 const base::FilePath& metafile_path, 280 const base::FilePath& metafile_path,
281 const printing::PdfRenderSettings& settings, 281 const printing::PdfRenderSettings& settings,
282 const std::vector<printing::PageRange>& page_ranges_const) { 282 const std::vector<printing::PageRange>& page_ranges_const) {
283 bool succeeded = false; 283 bool succeeded = false;
284 base::File pdf_file = IPC::PlatformFileForTransitToFile(pdf_transit); 284 base::File pdf_file = IPC::PlatformFileForTransitToFile(pdf_transit);
285 int highest_rendered_page_number = 0; 285 int highest_rendered_page_number = 0;
286 double scale_factor = 1.0; 286 double scale_factor = 1.0;
287 std::vector<printing::PageRange> page_ranges = page_ranges_const; 287 std::vector<printing::PageRange> page_ranges = page_ranges_const;
288 succeeded = RenderPDFToWinMetafile(pdf_file.Pass(), 288 succeeded = RenderPDFToWinMetafile(pdf_file.Pass(),
289 metafile_path, 289 metafile_path,
290 settings, 290 settings,
291 &page_ranges, 291 &page_ranges,
292 &highest_rendered_page_number, 292 &highest_rendered_page_number,
293 &scale_factor); 293 &scale_factor);
294 if (succeeded) { 294 if (succeeded) {
295 // TODO(vitalybuka|scottmg): http://crbug.com/170859. These could 295 // TODO(vitalybuka|scottmg): http://crbug.com/170859. These could
296 // potentially be sent as each page is converted so that the spool could 296 // potentially be sent as each page is converted so that the spool could
297 // start sooner. 297 // start sooner.
298 Send(new ChromeUtilityHostMsg_RenderPDFPagesToMetafiles_Succeeded( 298 Send(new ChromeUtilityHostMsg_RenderPDFPagesToMetafiles_Succeeded(
299 page_ranges, scale_factor)); 299 page_ranges, scale_factor));
300 } else { 300 } else {
301 Send(new ChromeUtilityHostMsg_RenderPDFPagesToMetafile_Failed()); 301 Send(new ChromeUtilityHostMsg_RenderPDFPagesToMetafile_Failed());
302 } 302 }
303 ReleaseProcessIfNeeded(); 303 ReleaseProcessIfNeeded();
304 } 304 }
305 #endif 305 #endif // OS_WIN
306 306
307 void PrintingHandler::OnRenderPDFPagesToPWGRaster( 307 void PrintingHandler::OnRenderPDFPagesToPWGRaster(
308 IPC::PlatformFileForTransit pdf_transit, 308 IPC::PlatformFileForTransit pdf_transit,
309 const printing::PdfRenderSettings& settings, 309 const printing::PdfRenderSettings& settings,
310 const printing::PwgRasterSettings& bitmap_settings, 310 const printing::PwgRasterSettings& bitmap_settings,
311 IPC::PlatformFileForTransit bitmap_transit) { 311 IPC::PlatformFileForTransit bitmap_transit) {
312 base::File pdf = IPC::PlatformFileForTransitToFile(pdf_transit); 312 base::File pdf = IPC::PlatformFileForTransitToFile(pdf_transit);
313 base::File bitmap = IPC::PlatformFileForTransitToFile(bitmap_transit); 313 base::File bitmap = IPC::PlatformFileForTransitToFile(bitmap_transit);
314 if (RenderPDFPagesToPWGRaster(pdf.Pass(), settings, bitmap_settings, 314 if (RenderPDFPagesToPWGRaster(pdf.Pass(), settings, bitmap_settings,
315 bitmap.Pass())) { 315 bitmap.Pass())) {
316 Send(new ChromeUtilityHostMsg_RenderPDFPagesToPWGRaster_Succeeded()); 316 Send(new ChromeUtilityHostMsg_RenderPDFPagesToPWGRaster_Succeeded());
317 } else { 317 } else {
318 Send(new ChromeUtilityHostMsg_RenderPDFPagesToPWGRaster_Failed()); 318 Send(new ChromeUtilityHostMsg_RenderPDFPagesToPWGRaster_Failed());
319 } 319 }
320 ReleaseProcessIfNeeded(); 320 ReleaseProcessIfNeeded();
321 } 321 }
322 322
323 #if defined(WIN_PDF_METAFILE_FOR_PRINTING) 323 #if defined(OS_WIN)
324 bool PrintingHandler::RenderPDFToWinMetafile( 324 bool PrintingHandler::RenderPDFToWinMetafile(
325 base::File pdf_file, 325 base::File pdf_file,
326 const base::FilePath& metafile_path, 326 const base::FilePath& metafile_path,
327 const printing::PdfRenderSettings& settings, 327 const printing::PdfRenderSettings& settings,
328 std::vector<printing::PageRange>* page_ranges, 328 std::vector<printing::PageRange>* page_ranges,
329 int* highest_rendered_page_number, 329 int* highest_rendered_page_number,
330 double* scale_factor) { 330 double* scale_factor) {
331 DCHECK(page_ranges); 331 DCHECK(page_ranges);
332 *highest_rendered_page_number = -1; 332 *highest_rendered_page_number = -1;
333 *scale_factor = 1.0; 333 *scale_factor = 1.0;
(...skipping 62 matching lines...) Expand 10 before | Expand all | Expand 10 after
396 if (*highest_rendered_page_number < page_number) 396 if (*highest_rendered_page_number < page_number)
397 *highest_rendered_page_number = page_number; 397 *highest_rendered_page_number = page_number;
398 ret = true; 398 ret = true;
399 } 399 }
400 metafile.FinishPage(); 400 metafile.FinishPage();
401 metafile.FinishDocument(); 401 metafile.FinishDocument();
402 } 402 }
403 } 403 }
404 return ret; 404 return ret;
405 } 405 }
406 #endif // defined(WIN_PDF_METAFILE_FOR_PRINTING) 406 #endif // OS_WIN
407 407
408 bool PrintingHandler::RenderPDFPagesToPWGRaster( 408 bool PrintingHandler::RenderPDFPagesToPWGRaster(
409 base::File pdf_file, 409 base::File pdf_file,
410 const printing::PdfRenderSettings& settings, 410 const printing::PdfRenderSettings& settings,
411 const printing::PwgRasterSettings& bitmap_settings, 411 const printing::PwgRasterSettings& bitmap_settings,
412 base::File bitmap_file) { 412 base::File bitmap_file) {
413 bool autoupdate = true; 413 bool autoupdate = true;
414 if (!g_pdf_lib.Get().IsValid()) 414 if (!g_pdf_lib.Get().IsValid())
415 return false; 415 return false;
416 416
(...skipping 110 matching lines...) Expand 10 before | Expand all | Expand 10 after
527 if (print_backend->GetPrinterSemanticCapsAndDefaults(printer_name, 527 if (print_backend->GetPrinterSemanticCapsAndDefaults(printer_name,
528 &printer_info)) { 528 &printer_info)) {
529 Send(new ChromeUtilityHostMsg_GetPrinterSemanticCapsAndDefaults_Succeeded( 529 Send(new ChromeUtilityHostMsg_GetPrinterSemanticCapsAndDefaults_Succeeded(
530 printer_name, printer_info)); 530 printer_name, printer_info));
531 } else { 531 } else {
532 Send(new ChromeUtilityHostMsg_GetPrinterSemanticCapsAndDefaults_Failed( 532 Send(new ChromeUtilityHostMsg_GetPrinterSemanticCapsAndDefaults_Failed(
533 printer_name)); 533 printer_name));
534 } 534 }
535 ReleaseProcessIfNeeded(); 535 ReleaseProcessIfNeeded();
536 } 536 }
OLDNEW
« no previous file with comments | « chrome/utility/printing_handler.h ('k') | content/renderer/pepper/pepper_plugin_instance_impl.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698