summaryrefslogtreecommitdiffstats
path: root/chromium/chrome/browser/printing/pdf_to_emf_converter.cc
diff options
context:
space:
mode:
Diffstat (limited to 'chromium/chrome/browser/printing/pdf_to_emf_converter.cc')
-rw-r--r--chromium/chrome/browser/printing/pdf_to_emf_converter.cc38
1 files changed, 22 insertions, 16 deletions
diff --git a/chromium/chrome/browser/printing/pdf_to_emf_converter.cc b/chromium/chrome/browser/printing/pdf_to_emf_converter.cc
index 962a023b0da..3a9141aaebe 100644
--- a/chromium/chrome/browser/printing/pdf_to_emf_converter.cc
+++ b/chromium/chrome/browser/printing/pdf_to_emf_converter.cc
@@ -28,7 +28,10 @@
#include "chrome/services/printing/public/mojom/pdf_to_emf_converter.mojom.h"
#include "content/public/browser/browser_thread.h"
#include "content/public/browser/child_process_data.h"
-#include "mojo/public/cpp/bindings/binding.h"
+#include "mojo/public/cpp/bindings/pending_receiver.h"
+#include "mojo/public/cpp/bindings/pending_remote.h"
+#include "mojo/public/cpp/bindings/receiver.h"
+#include "mojo/public/cpp/bindings/remote.h"
#include "printing/emf_win.h"
#include "printing/pdf_render_settings.h"
@@ -41,8 +44,8 @@ namespace {
class PdfToEmfConverterClientImpl : public mojom::PdfToEmfConverterClient {
public:
explicit PdfToEmfConverterClientImpl(
- mojom::PdfToEmfConverterClientRequest request)
- : binding_(this, std::move(request)) {}
+ mojo::PendingReceiver<mojom::PdfToEmfConverterClient> receiver)
+ : receiver_(this, std::move(receiver)) {}
private:
// mojom::PdfToEmfConverterClient implementation.
@@ -84,7 +87,7 @@ class PdfToEmfConverterClientImpl : public mojom::PdfToEmfConverterClient {
std::move(callback).Run();
}
- mojo::Binding<mojom::PdfToEmfConverterClient> binding_;
+ mojo::Receiver<mojom::PdfToEmfConverterClient> receiver_;
};
// Emf subclass that knows how to play back PostScript data embedded as EMF
@@ -164,7 +167,8 @@ class PdfConverterImpl : public PdfConverter {
std::unique_ptr<MetafilePlayer> GetMetaFileFromMapping(
base::ReadOnlySharedMemoryMapping mapping);
- void OnPageCount(mojom::PdfToEmfConverterPtr converter, uint32_t page_count);
+ void OnPageCount(mojo::PendingRemote<mojom::PdfToEmfConverter> converter,
+ uint32_t page_count);
void OnPageDone(base::ReadOnlySharedMemoryRegion emf_region,
float scale_factor);
@@ -191,9 +195,9 @@ class PdfConverterImpl : public PdfConverter {
std::unique_ptr<PdfToEmfConverterClientImpl>
pdf_to_emf_converter_client_impl_;
- mojom::PdfToEmfConverterPtr pdf_to_emf_converter_;
+ mojo::Remote<mojom::PdfToEmfConverter> pdf_to_emf_converter_;
- mojom::PdfToEmfConverterFactoryPtr pdf_to_emf_converter_factory_;
+ mojo::Remote<mojom::PdfToEmfConverterFactory> pdf_to_emf_converter_factory_;
base::WeakPtrFactory<PdfConverterImpl> weak_ptr_factory_{this};
@@ -269,29 +273,31 @@ void PdfConverterImpl::Initialize(scoped_refptr<base::RefCountedMemory> data) {
memcpy(memory.mapping.memory(), data->front(), data->size());
GetPrintingService()->BindPdfToEmfConverterFactory(
- mojo::MakeRequest(&pdf_to_emf_converter_factory_));
- pdf_to_emf_converter_factory_.set_connection_error_handler(base::BindOnce(
+ pdf_to_emf_converter_factory_.BindNewPipeAndPassReceiver());
+ pdf_to_emf_converter_factory_.set_disconnect_handler(base::BindOnce(
&PdfConverterImpl::OnFailed, weak_ptr_factory_.GetWeakPtr(),
std::string("Connection to PdfToEmfConverterFactory error.")));
- mojom::PdfToEmfConverterClientPtr pdf_to_emf_converter_client_ptr;
+ mojo::PendingRemote<mojom::PdfToEmfConverterClient>
+ pdf_to_emf_converter_client_remote;
pdf_to_emf_converter_client_impl_ =
std::make_unique<PdfToEmfConverterClientImpl>(
- mojo::MakeRequest(&pdf_to_emf_converter_client_ptr));
+ pdf_to_emf_converter_client_remote.InitWithNewPipeAndPassReceiver());
pdf_to_emf_converter_factory_->CreateConverter(
std::move(memory.region), settings_,
- std::move(pdf_to_emf_converter_client_ptr),
+ std::move(pdf_to_emf_converter_client_remote),
base::BindOnce(&PdfConverterImpl::OnPageCount,
weak_ptr_factory_.GetWeakPtr()));
}
-void PdfConverterImpl::OnPageCount(mojom::PdfToEmfConverterPtr converter,
- uint32_t page_count) {
+void PdfConverterImpl::OnPageCount(
+ mojo::PendingRemote<mojom::PdfToEmfConverter> converter,
+ uint32_t page_count) {
DCHECK_CURRENTLY_ON(BrowserThread::UI);
DCHECK(!pdf_to_emf_converter_.is_bound());
- pdf_to_emf_converter_ = std::move(converter);
- pdf_to_emf_converter_.set_connection_error_handler(base::BindOnce(
+ pdf_to_emf_converter_.Bind(std::move(converter));
+ pdf_to_emf_converter_.set_disconnect_handler(base::BindOnce(
&PdfConverterImpl::OnFailed, weak_ptr_factory_.GetWeakPtr(),
std::string("Connection to PdfToEmfConverter error.")));
std::move(start_callback_).Run(page_count);