diff --git a/shell/utility/electron_content_utility_client.cc b/shell/utility/electron_content_utility_client.cc index 5c5226cfea7..45baca4f0b0 100644 --- a/shell/utility/electron_content_utility_client.cc +++ b/shell/utility/electron_content_utility_client.cc @@ -31,6 +31,11 @@ #include "components/services/print_compositor/public/mojom/print_compositor.mojom.h" // nogncheck #endif // BUILDFLAG(ENABLE_PRINTING) +#if BUILDFLAG(ENABLE_OOP_PRINTING) +#include "chrome/services/printing/print_backend_service_impl.h" +#include "chrome/services/printing/public/mojom/print_backend_service.mojom.h" +#endif // BUILDFLAG(ENABLE_OOP_PRINTING) + #if BUILDFLAG(ENABLE_PRINTING) && BUILDFLAG(IS_WIN) #include "chrome/services/printing/pdf_to_emf_converter_factory.h" #endif @@ -72,6 +77,21 @@ auto RunPrintCompositor( } #endif +#if BUILDFLAG(ENABLE_OOP_PRINTING) +auto RunPrintingSandboxedPrintBackendHost( + mojo::PendingReceiver + receiver) { + return std::make_unique( + std::move(receiver)); +} +auto RunPrintingUnsandboxedPrintBackendHost( + mojo::PendingReceiver + receiver) { + return std::make_unique( + std::move(receiver)); +} +#endif // BUILDFLAG(ENABLE_OOP_PRINTING) + auto RunProxyResolver( mojo::PendingReceiver receiver) { @@ -122,6 +142,11 @@ void ElectronContentUtilityClient::RegisterMainThreadServices( services.Add(RunPrintCompositor); #endif +#if BUILDFLAG(ENABLE_OOP_PRINTING) + services.Add(RunPrintingSandboxedPrintBackendHost); + services.Add(RunPrintingUnsandboxedPrintBackendHost); +#endif + #if BUILDFLAG(ENABLE_PRINT_PREVIEW) || \ (BUILDFLAG(ENABLE_PRINTING) && BUILDFLAG(IS_WIN)) services.Add(RunPrintingService);