summaryrefslogtreecommitdiff
path: root/chromium/chrome/browser/printing/printer_query.cc
diff options
context:
space:
mode:
Diffstat (limited to 'chromium/chrome/browser/printing/printer_query.cc')
-rw-r--r--chromium/chrome/browser/printing/printer_query.cc25
1 files changed, 19 insertions, 6 deletions
diff --git a/chromium/chrome/browser/printing/printer_query.cc b/chromium/chrome/browser/printing/printer_query.cc
index 58c8baad7ae..cc236873136 100644
--- a/chromium/chrome/browser/printing/printer_query.cc
+++ b/chromium/chrome/browser/printing/printer_query.cc
@@ -9,18 +9,24 @@
#include "base/bind.h"
#include "base/bind_helpers.h"
+#include "base/location.h"
+#include "base/single_thread_task_runner.h"
#include "base/threading/thread_restrictions.h"
+#include "base/threading/thread_task_runner_handle.h"
#include "base/values.h"
#include "chrome/browser/printing/print_job_worker.h"
#include "content/public/browser/browser_thread.h"
+#include "printing/print_job_constants.h"
+#include "printing/print_settings.h"
namespace printing {
PrinterQuery::PrinterQuery(int render_process_id, int render_frame_id)
- : worker_(std::make_unique<PrintJobWorker>(render_process_id,
+ : cookie_(PrintSettings::NewCookie()),
+ task_runner_(base::ThreadTaskRunnerHandle::Get()),
+ worker_(std::make_unique<PrintJobWorker>(render_process_id,
render_frame_id,
- this)),
- cookie_(PrintSettings::NewCookie()) {
+ this)) {
DCHECK_CURRENTLY_ON(content::BrowserThread::IO);
}
@@ -49,12 +55,10 @@ void PrinterQuery::GetSettingsDone(const PrintSettings& new_settings,
}
}
-std::unique_ptr<PrintJobWorker> PrinterQuery::DetachWorker(
- PrintJobWorkerOwner* new_owner) {
+std::unique_ptr<PrintJobWorker> PrinterQuery::DetachWorker() {
DCHECK(!callback_);
DCHECK(worker_);
- worker_->SetNewOwner(new_owner);
return std::move(worker_);
}
@@ -138,6 +142,15 @@ void PrinterQuery::StopWorker() {
}
}
+bool PrinterQuery::RunsTasksInCurrentSequence() const {
+ return task_runner_->RunsTasksInCurrentSequence();
+}
+
+bool PrinterQuery::PostTask(const base::Location& from_here,
+ base::OnceClosure task) {
+ return task_runner_->PostTask(from_here, std::move(task));
+}
+
bool PrinterQuery::is_callback_pending() const {
return !callback_.is_null();
}