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

Unified Diff: chrome/browser/printing/print_view_manager_base.h

Issue 255543006: Printing on Windows via PDF (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: almost working; SafePlayback failing in final print Created 6 years, 8 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 side-by-side diff with in-line comments
Download patch
Index: chrome/browser/printing/print_view_manager_base.h
diff --git a/chrome/browser/printing/print_view_manager_base.h b/chrome/browser/printing/print_view_manager_base.h
index bd627a2706b7ab7618b9d703f5a2654fc1dfb5c6..fbfe2921c72959838f2b27951e052a7eff88cb9c 100644
--- a/chrome/browser/printing/print_view_manager_base.h
+++ b/chrome/browser/printing/print_view_manager_base.h
@@ -12,6 +12,7 @@
#include "content/public/browser/notification_registrar.h"
#include "content/public/browser/web_contents_observer.h"
#include "content/public/browser/web_contents_user_data.h"
+#include "printing/metafile_impl.h"
#include "printing/printed_pages_source.h"
struct PrintHostMsg_DidPrintPage_Params;
@@ -23,6 +24,7 @@ class RenderViewHost;
namespace printing {
class JobEventDetails;
+class PdfToEmfConverter;
class PrintJob;
class PrintJobWorkerOwner;
class PrintQueriesQueue;
@@ -130,6 +132,13 @@ class PrintViewManagerBase : public content::NotificationObserver,
// Release the PrinterQuery associated with our |cookie_|.
void ReleasePrinterQuery();
+#if defined(PRINTING_WIN_USES_PDF_AS_METAFILE)
+ // Called on completion of converting the pdf to emf.
+ void OnPdfToEmfConverted(const PrintHostMsg_DidPrintPage_Params& params,
+ bool success,
+ const base::FilePath& emf_file);
+#endif
+
content::NotificationRegistrar registrar_;
// Manages the low-level talk to the printer.
@@ -146,11 +155,16 @@ class PrintViewManagerBase : public content::NotificationObserver,
// print settings are being loaded.
bool inside_inner_message_loop_;
-#if defined(OS_POSIX) && !defined(OS_MACOSX)
+#if (defined(OS_POSIX) && !defined(OS_MACOSX)) || \
+ defined(PRINTING_WIN_USES_PDF_AS_METAFILE)
// Set to true when OnDidPrintPage() should be expecting the first page.
bool expecting_first_page_;
#endif
+#if defined(PRINTING_WIN_USES_PDF_AS_METAFILE)
+ scoped_ptr<PdfToEmfConverter> pdf_to_emf_converter_;
+#endif
+
// The document cookie of the current PrinterQuery.
int cookie_;

Powered by Google App Engine
This is Rietveld 408576698