4ef83c4647471aa5aefce463ed8abfe37da7fd00 |
|
24-Mar-2016 |
Philip P. Moltmann <moltmann@google.com> |
Update print preview when option is changed and clear ranges when they layout changes Before we updated the print preview when the paper size changed but not when the page ranges changed. This is not consistent. We always change. Also if there is a change to the options that changes the layout (i.e. papersize, orientation, minMargins) then clear the selected ranges as this does not make sense anymore. This also fixes a bug that when having pages selected while we reduce the number of pages in the preview we got a NPE. Bonus: do not constantly re-update the options UI when range or copies text is updated. Bug: 27830850, 27741420 Change-Id: I7abe4a74b44ac5c5ee54d12cc0c1ca1540793f0e
/frameworks/base/packages/PrintSpooler/src/com/android/printspooler/ui/PageAdapter.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/ui/PageAdapter.java
|
e7f06a874a47df969603654e3ceb8beed288b4ec |
|
17-Mar-2016 |
Philip P. Moltmann <moltmann@google.com> |
The PageAdapter update might be caused by the RecylerView. In this case it cannot call back into the recyclerView and update the data. For the call path please see the bug. Bug: 27614499 Change-Id: I84733fea30429c20a2c96085efb47d4da5e1948a
/frameworks/base/packages/PrintSpooler/src/com/android/printspooler/ui/PageAdapter.java
|
c43639c3067dda5df189fb3cbf14f256c17e677d |
|
18-Dec-2015 |
Philip P. Moltmann <moltmann@google.com> |
Clean up print subsystem - Stop using deprecated APIs - Fix all public and some internal javadoc - Add @Decorations to public APIs - Some minor cleanup, e.g. don't use variables with overlapping names in same scope - remove unnecessary properties from manifest (they are set by the build system) Change-Id: I0ce8849a516414763fe9de76c3a18ce17d896816
/frameworks/base/packages/PrintSpooler/src/com/android/printspooler/ui/PageAdapter.java
|
c80814e70aea8940d0d43cd7170baae8c0c4e8e3 |
|
24-Nov-2014 |
Svet Ganov <svetoslavganov@google.com> |
Lockup in the print spooler. A recent change modified the way we destroy the remote renderer from asynchronous to synchronous. This caused problems since it was possible that the remote rendering service is unbound while we are reading the contents of a rendered page. As a result the reader was blocking on I/O and the print spooler was getting into a locked state that required a restart of its process. Now the remote renderer is destroyed asynchronously. bug:18498626 Change-Id: I1312bf808f30430728b4038dd4be43c55d2be825
/frameworks/base/packages/PrintSpooler/src/com/android/printspooler/ui/PageAdapter.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/ui/PageAdapter.java
|
4237c92d850b7fb0fa0be15df94e4d1689e353fc |
|
24-Oct-2014 |
Svet Ganov <svetoslavganov@google.com> |
Crash in print spooler if printing app killed from recents. If the printing app with the print UI on top is killed from recents we get a crash because: 1) the remote print document was not transitioned to a failed state if the printing app dies (this is an unrecoverable failure); 2) the print preview controller was destroyed asyncronosly during which it also asynchronously disconnects from the rendering service which however happens after the system has already cleaned up all connections of the print UI activity as it is being destoryed. bug:18109386 Change-Id: If6200b14a8aa90622228bbb659e9c4962226f561
/frameworks/base/packages/PrintSpooler/src/com/android/printspooler/ui/PageAdapter.java
|
237806bbc540938a87a26b53f117c82ce75025fa |
|
24-Sep-2014 |
Svetoslav <svetoslavganov@google.com> |
Missing pages in print preview when scorolling. It is possible that two providers for the same page are assigned to two preview views despite temporariliy while rebinding. We were however releasing the provider from the view which is being bound if not for the same page which as a result was cancelling rendering of this page which is provided to another view via another provider. Hence, having an empty page. Removed the unnecessary code to release a provider when binding the view - release is happening only if the view holder is recycled. bug:17515670 Change-Id: I197438c16cfdb363f521cd1320f154da54eea5f5
/frameworks/base/packages/PrintSpooler/src/com/android/printspooler/ui/PageAdapter.java
|
9424b733c7f777fc806a751a7f00d234c11c0e7c |
|
19-Sep-2014 |
Svetoslav <svetoslavganov@google.com> |
Fix a print spooler crash when printing. The spooler communicates with he remote PDF renderer asynchronously. When print is confirmed we close the renderer, destroy it, and unbind from its service. If we unbind from the service after the print activiy is finished we get a crash. The bug was that we did not wait until we disconnect from the remote renderer before finishing the print activity. bug:17583115 Change-Id: I55b0135f9c5658b3a4fda2901b8b3bdef044e211
/frameworks/base/packages/PrintSpooler/src/com/android/printspooler/ui/PageAdapter.java
|
0d2d9637ed4f46062d508cfa7da0e9776fc444f8 |
|
18-Sep-2014 |
Svetoslav <svetoslavganov@google.com> |
Page content sometimes missing in preview when scrolling. Removed the restriction for the page content providers to be singletons as the RecyclerView may hold on views with providers and ask us to bind other views for the same page. Note that the views that RecyclerView is holding will be soon rebound or recycled just they are not at the time we bind other views for the same position. We were guarding against this but caused some pages not appearing sometimes on scrolling. Also now keeping the media size and magins of recycled page view (will be updated if needed on rebinding) or avoid changes of the background to null as setting it to not null later causes an undesired layout pass. bug:17537922 Change-Id: If029f6c413e15d4f5c1ba1ac5e4d52ad2cad5904
/frameworks/base/packages/PrintSpooler/src/com/android/printspooler/ui/PageAdapter.java
|
7fd5ada98aa9e035682531d9fe25633fdd24a058 |
|
16-Sep-2014 |
Svetoslav <svetoslavganov@google.com> |
Page content sometimes disappears when scrolling a long doc in print preview. The operations of the remote renderer have to be performed in order, open, render some pages, close. One of the tasks was executed on the wrong executor resuling in a race and an occassional bad state. Also fixed a NPE if the preview list is flinged and then the user presses back. bug:17537922 Change-Id: I5048078ba2b875a2a8335f3a4324afaa34d014a2
/frameworks/base/packages/PrintSpooler/src/com/android/printspooler/ui/PageAdapter.java
|
f3f963b0bebea91b17f7e60d9b826c458bfde38c |
|
16-Sep-2014 |
Svetoslav <svetoslavganov@google.com> |
Missing or wrong pages in preview when scorlling large docs. The bound pages in the adapter were not properly tracked, more specifically we did not remove pages from the bound set ending up in a bad state. Also when the printer changes and if the new one has different page size the content disappears due to us not notifying for the data set change. bug:17515670 Change-Id: Iac74e864609012f6804584fa133e87c27dc186a5
/frameworks/base/packages/PrintSpooler/src/com/android/printspooler/ui/PageAdapter.java
|
e771caf332bb3f2b668aaf249b30f37f13755553 |
|
15-Sep-2014 |
Svet Ganov <svetoslavganov@google.com> |
Fix a crash in pring spooler. If the printer capabilities are reported with a delay which is pretty common we were trying to evaluate the preview page dimensions without having a media size resulting in a NPE. bug:17501953 Change-Id: I6765137f61b8fd060e9eabff07e632875d934963
/frameworks/base/packages/PrintSpooler/src/com/android/printspooler/ui/PageAdapter.java
|
139ba7fb0ed976bdbc7c283e3f7fe9980eed22a6 |
|
12-Sep-2014 |
Svetoslav <svetoslavganov@google.com> |
Fix a crash in print preview on multiple rotations. bug:16966145 Change-Id: I8266315bd9253953cb6c3b9dab1ba36f104a74a5
/frameworks/base/packages/PrintSpooler/src/com/android/printspooler/ui/PageAdapter.java
|
c65510a7bc0a1519c5633940bce52d7f2334b640 |
|
11-Sep-2014 |
Svetoslav <svetoslavganov@google.com> |
Merge "Accessibilty support for the print UI." into lmp-dev
|
e652b02d45bbda11c9cb8f663fa7f25903b90225 |
|
10-Sep-2014 |
Svetoslav <svetoslavganov@google.com> |
Accessibilty support for the print UI. bug:15816751 Change-Id: I5dcdbdd0357843b870ddd47d7c41cfba114d194c
/frameworks/base/packages/PrintSpooler/src/com/android/printspooler/ui/PageAdapter.java
|
dfa3e7c6fd4e8a28ba51b54c769b891191459012 |
|
10-Sep-2014 |
Svetoslav <svetoslavganov@google.com> |
Fix page spacing in preview list. bug:16966145 Change-Id: I2c4bde3a50ee0fc202fc169a63d4eeeb43c5f4ae
/frameworks/base/packages/PrintSpooler/src/com/android/printspooler/ui/PageAdapter.java
|
6552bf3da60159607d9266eb295ee3c448f6c3de |
|
04-Sep-2014 |
Svetoslav <svetoslavganov@google.com> |
Print spooler UI polish and bug fixes. 1. Added an empty state for pages that are being rendered. 2. Fixed a NPA on a binder thread when destoroying the remote print adapter. 3. Fixed a rare crash when the print activity gets an activity class callback while initializing. 4. Changed the preview pages on phone in land to four. 5. Fixed a flicker from a list of pages to an empty state and then back to the list of pages. bug:15704969 bug:16966145 Change-Id: I0eea2f30a102d8fefcbf90187fa6d8612fb19434 Conflicts: packages/PrintSpooler/src/com/android/printspooler/widget/PageContentView.java
/frameworks/base/packages/PrintSpooler/src/com/android/printspooler/ui/PageAdapter.java
|
c404cacd3a480776dd625fb300810ffccc5f51b0 |
|
28-Aug-2014 |
Svetoslav <svetoslavganov@google.com> |
Print UI polish. 1. Fixed an issue where input focus is given to the copies edit text every other time we expand the options UI. We want focus there only if the user touches the control. bug:16966145 2. Fixed the all printers list view to have item dividers reaching the left and right ends of the list view. bug:17288761 3. Fixed an issue where the user can deselect all pages which is not only an invalid state but also causes a crash. bug:17286198 4. Tweaked the minimal size of the preview in landscape on phone to better accomodate the page. bug:17288904 5. Fixed a regression introduced by a change from the UI folks. Change-Id: Ida7dad7eea413295a840028060810b2619c616e8
/frameworks/base/packages/PrintSpooler/src/com/android/printspooler/ui/PageAdapter.java
|
38781bd2c2c61385651314098b4a615cb8e8efa1 |
|
12-Aug-2014 |
Svet Ganov <svetoslavganov@google.com> |
Fix some minor print UX bugs. 1. The last row of print options was not visible on a phone. 2. The preview page size on a phone in landscape unusably small. 3. Updated the Save to PDF icon. bug:16966145 Change-Id: I25ce1572758c62f34344683af2452fb045bb857e
/frameworks/base/packages/PrintSpooler/src/com/android/printspooler/ui/PageAdapter.java
|
5ef522bc19cc9fc1af48cccd2865744228c5ec02 |
|
24-Jul-2014 |
Svetoslav <svetoslavganov@google.com> |
Handle wrong file format when printing. PDF is the only format suppored for printing but a buggy app can write content in another format which was crashing the print spooler. Now we are generating an error instead of crashing. bug:16487161 Change-Id: Ic59d2ac6d57213f4e8f364659d8dc7df2140e61d
/frameworks/base/packages/PrintSpooler/src/com/android/printspooler/ui/PageAdapter.java
|
cc2b210ff8d4aefc890c016e4d352f069a5d3eef |
|
16-Jul-2014 |
Svetoslav <svetoslavganov@google.com> |
Merge "Update the promoted action background color per UX spec" into lmp-dev
|
4bcc4a042c760a776ef52a0f727331db3fa315d2 |
|
16-Jul-2014 |
Svetoslav <svetoslavganov@google.com> |
Update the promoted action background color per UX spec bug:16303010 Change-Id: I54663a0be79b232a29d8fced4a772a32b4d83ae5
/frameworks/base/packages/PrintSpooler/src/com/android/printspooler/ui/PageAdapter.java
|
e323dcc31d403085d6ede0f8884c816f4420ef25 |
|
16-Jul-2014 |
Svetoslav <svetoslavganov@google.com> |
Drop of the final UX assets for printing. bug:15705610 Change-Id: I82104a2c0b3d1f4e34f71357b10bed24c0583e71
/frameworks/base/packages/PrintSpooler/src/com/android/printspooler/ui/PageAdapter.java
|
41233447f9c2368946ef1266ae339c71cbe310b1 |
|
16-Jul-2014 |
Svetoslav <svetoslavganov@google.com> |
Merge "Drop of the final UX assets for printing." into lmp-dev
|
17d734fee434ca4a37104b783a78fabcda0ac2a5 |
|
14-Jul-2014 |
Svetoslav <svetoslavganov@google.com> |
Page size not always adjusted A user can select the pages to print by selecting a range from the UI after which the selected pages appear in the preview list. Now the user can further prune pages by clicking on them. If the number of pages change to two or one the page position and size were not adjusted. Now after the constraints of desected by clicking pages are propafated the page size position is also computed. bug:16297811 Change-Id: I62c0ae8ab5b1d91b120cbf9faa9653ef4ccbd97f
/frameworks/base/packages/PrintSpooler/src/com/android/printspooler/ui/PageAdapter.java
|
9fb7b07c6cbdd1c6f394bfc456ccc034619b6727 |
|
14-Jul-2014 |
Svet Ganov <svetoslavganov@google.com> |
Dimming deselected preview pages For print preview we show the pages the user selected in the range affordance but the user can optionally further prune pages to be printed by deselecting them in the preview. The deselected pages change elevation and now also are dimmed. bug:15912256 Change-Id: I53357b8e8b592387bbc26b937eda786bb4660d85
/frameworks/base/packages/PrintSpooler/src/com/android/printspooler/ui/PageAdapter.java
|
1710e0318db5db833974e390eb4bde54ab2f3c62 |
|
12-Jul-2014 |
Svetoslav <svetoslavganov@google.com> |
Fix print preview rendered page preloading. After the preview list is scrolled we are preloading the pages around the ones that are shown, so now if the user does a slight adjustment (expected after a scroll) the pages around are rendered. There was an off by one error and one of the bitmaps of the shown pages was reused and as a result the wrong content was shown. Change-Id: If04aebf46bcc637491221c6218005ecc1a7253d2
/frameworks/base/packages/PrintSpooler/src/com/android/printspooler/ui/PageAdapter.java
|
15cbc8a03250eafdf947cd8ad4e77f34444d5ba4 |
|
11-Jul-2014 |
Svetoslav <svetoslavganov@google.com> |
Addressing comments for the print preview feature. Change-Id: Ib72140a912e22f859258d970e0d1c4ef06e807d5
/frameworks/base/packages/PrintSpooler/src/com/android/printspooler/ui/PageAdapter.java
|
525a66b2bb5abf844aff2109bdc9ed819566bece |
|
15-Jun-2014 |
Svet Ganov <svetoslavganov@google.com> |
Adding print preview. This change adds the pring preview part of the new print UX. The UI has two parts, the top section is the print options and the bottom section print preview with a list of pages. The user can interact only with one of them. When print options are expanded they cover the preview content and a scrim is laid out on top of the preview. Tapping the scrim collapses the print options. When the user types in page ranges and closes the options to look at the preview, the latter is updated to show only these pages. In the list of pages the user can further prune pages by deselecting them. Change-Id: I0b23d2c598afe2a34400ccfa43e4e935af83c72f
/frameworks/base/packages/PrintSpooler/src/com/android/printspooler/ui/PageAdapter.java
|