
Incorporate usage of StartPrinting() from within the Print Backend service utility for Windows, macOS, Linux, and ChromeOS. Testing coverage currently covers only Windows, macOS, and Linux. Adjust PrintUpdateSettings() to cache the print target type from the job settings. This is needed by the later call to StartPrinting(), since the deferred actions of PrintingContext::UpdatePrinterSettings() are not done in the service until StartPrinting() time. Include registration with the PrintBackendServiceManager so that the Print Backend process does not get terminated if there is a short amount of idleness between printing operations for this job. Only include unregister logic for failure case, since the printing success case logic comes later in https://crrev.com/c/3199044. Add ability for TestPrintingContext to respond with access-denied error for NewDocument() to enable testing of StartPrinting() fallback retry logic. Bug: 809738 Change-Id: I3713e59de44dba3f45eeb0921bd7adbb6eab2514 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3180059 Commit-Queue: Alan Screen <awscreen@chromium.org> Reviewed-by: Lei Zhang <thestig@chromium.org> Cr-Commit-Position: refs/heads/main@{#946875}
//printing
contains foundational code that is used for printing. It can depend
on other low-level directories like //cc/paint
and //ui
, but not higher
level code like //components
or //content
. Higher level printing code should
live in //components/printing
or the embedder.