| Index: chrome/browser/printing/print_job.h
|
| ===================================================================
|
| --- chrome/browser/printing/print_job.h (revision 5751)
|
| +++ chrome/browser/printing/print_job.h (working copy)
|
| @@ -5,6 +5,7 @@
|
| #ifndef CHROME_BROWSER_PRINTING_PRINT_JOB_H_
|
| #define CHROME_BROWSER_PRINTING_PRINT_JOB_H_
|
|
|
| +#include "base/message_loop.h"
|
| #include "base/ref_counted.h"
|
| #include "chrome/browser/printing/print_job_worker_owner.h"
|
| #include "chrome/common/notification_service.h"
|
| @@ -32,7 +33,8 @@
|
| // runs in the UI thread.
|
| class PrintJob : public base::RefCountedThreadSafe<PrintJob>,
|
| public NotificationObserver,
|
| - public PrintJobWorkerOwner {
|
| + public PrintJobWorkerOwner,
|
| + public MessageLoop::DestructionObserver {
|
| public:
|
| // GetSettings() UI parameter.
|
| enum GetSettingsAskParam {
|
| @@ -48,6 +50,8 @@
|
| PrintJob();
|
| virtual ~PrintJob();
|
|
|
| + // Grabs the ownership of the PrintJobWorker from another job, which is
|
| + // usually a PrinterQuery.
|
| void Initialize(PrintJobWorkerOwner* job, PrintedPagesSource* source);
|
|
|
| // NotificationObserver
|
| @@ -69,6 +73,9 @@
|
| virtual const PrintSettings& settings() const { return settings_; }
|
| virtual int cookie() const;
|
|
|
| + // DestructionObserver
|
| + virtual void WillDestroyCurrentMessageLoop();
|
| +
|
| // Initializes the printing context. This can be done synchronously or not. It
|
| // is fine to call this function multiple times to reinitialize the settings.
|
| // |parent_window| parameter will be the owner of the print setting dialog
|
|
|