History log of /frameworks/base/packages/PrintSpooler/src/com/android/printspooler/renderer/PdfManipulationService.java
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
cd7b1b7cdf61298966ed7df6621d077afbf81aed 01-Jun-2016 Philip P. Moltmann <moltmann@google.com> Do not rotate PDFPrinter pages.

- applyPrintAttributes is only used by PDFPrinter

Fixes: 29057330
Change-Id: I883cc64039f4ca2c93810e99d758f2dceec67a8b
/frameworks/base/packages/PrintSpooler/src/com/android/printspooler/renderer/PdfManipulationService.java
9e4bbc60a9e95f624e577997259fbd6500dac15d 01-Apr-2016 Philip P. Moltmann <moltmann@google.com> Do not rely on documentInfo.pageCount when selecting which pages to
scrap

documentInfo.PageCount might be set to "unknown" == -1. Hence we don't
know where the last page to scrap ends. Hence defer this decision all
way until PdfManipulationService.removePages as then we know the actual
pages of the document.

Change-Id: I063c3cd084d65a3ac5c60c3d85cec3a346be2680
Fixed: 27948632
/frameworks/base/packages/PrintSpooler/src/com/android/printspooler/renderer/PdfManipulationService.java
066bf81b983ce23b91d19b85b7c37a61fba7a9a6 10-Mar-2016 Philip P. Moltmann <moltmann@google.com> Deal with print-preview renderings that do not match the correct number
of pages.

If the printing app declares more pages than the print preview pdf has
we used to throw an exception in the PDFManupulationService. This caused
the bitmap to be never written and the read-bitmap function to hang
forever. This was because read() return 0 meaning "pipe is closed" which
lead to an infinite loop. Now a read of 0 page might cause an exception
if the page is not fully read. This exception then causes the
preview_page_error to be displayed.

Bug: 27556666
Change-Id: I7b9de50dce930629e8d38efd4e2659a00b70cc4e
/frameworks/base/packages/PrintSpooler/src/com/android/printspooler/renderer/PdfManipulationService.java
fce84f035c35606c5707e735f503f7bdcfd5b2a1 01-Nov-2014 Svet Ganov <svetoslavganov@google.com> Crash apps that print malformed or password protected PDFs.

If apps are writing malformed content (typically not a PDF file) or if the
PDF content they provide to the print system is password protected, are now
crashed as both of these are app bugs.

bug:17636435

Change-Id: Ifce6a3199e587448dd38f6a84290a965c24b698b
/frameworks/base/packages/PrintSpooler/src/com/android/printspooler/renderer/PdfManipulationService.java
bec22beb99b279d381f720d761ca75fe3e7414dc 25-Sep-2014 Svetoslav <svetoslavganov@google.com> Save to a PDF file should look like print preview.

When rendering a PDF file for print preview we take into account
the selected print options such as paper size, orientation, etc
without modifying the document. To print we send the doc in its
original form and the print options so the print service can apply
the necessary transforms in addition to the optional custom options
it supports. When saving to PDF we have to actually change the
document as we act as a print service.

bug:13545980

Change-Id: Icdcecf962bec6ff742cc6015df5af9d9086ce760
/frameworks/base/packages/PrintSpooler/src/com/android/printspooler/renderer/PdfManipulationService.java
d23bfa9d42c477970189a96d4562d627d609e604 24-Sep-2014 Svetoslav <svetoslavganov@google.com> Print spooler should not crash if fed non-PDF content.

It is possible that a buggy app breaks the contract and provides
content to be printed in format other than PDF. This was leading
to a crash in the print spooler. This change fixes the crash and
shows a user friendly error message.

bug:17642690

Change-Id: I5a4acb06080a152562655da6851467b3e71d8658
/frameworks/base/packages/PrintSpooler/src/com/android/printspooler/renderer/PdfManipulationService.java
62ce332c141cf7bc7200c4c87d63e395874fc3ec 05-Sep-2014 Svetoslav <svetoslavganov@google.com> Trim unnecessary pages when printing.

A user may request a subset of the document's pages to be printed.
In this case the expectation is that the resulting document does
not include not selected pages. While print serivices can do the
trimming themselves or the printer may do so, moving, potantually
many, redundant pages is inefficient. The real problem is when
saving to a PDF file where the saved file must not have the pages
the user did not select. This change adds shredding of undesired
pages from the PDF before saving it or passing it to a print service.
:
bug:17285994

Change-Id: I7deba535af99457bea3c118202314f0f3812e809
/frameworks/base/packages/PrintSpooler/src/com/android/printspooler/renderer/PdfManipulationService.java