6 Commits

Author SHA1 Message Date
Svetoslav Ganov
56ddf1ffa5 Polish print dialog accessibility.
bug:10983508

Change-Id: I7391e06b661caac18d04ae279639ff447701f151
2013-10-05 19:56:19 -07:00
Svetoslav Ganov
9186d0cb2b Bug fixes in the printer dialog activity and fused printer loader.
1. Fused printers loader was not using the discovered printers to update the
    historical ones. Now if a historical printer is discovered we update its state
    with the discovered, i.e. most recent, information.

2. Fixed a bug in the destination adapter of the print job config dialog that
    was leading to a crash if all printers item is selected when there are no
    discovered printers.

3.  Updated the add printers asset in the all printers screen.

4. Historical printers were not persisted by the print dialog activity.

5. Reduced the number of printers we send per transation to avoid the binder
   transaction size limit. Added sending of printers in chunks in a place
   this was missing.

Change-Id: I88b54888360bc0e53b06bd260c2b832d0d6454b6
2013-09-03 08:42:17 -07:00
Svetoslav
269403b032 Implemented advanced printer selection and API refactoring.
1. Added past printer history tracking and merging favorite printers
   with discovered printers.

2. Added save as PDF support.

3. Added all printers activity with search capability and optional
   add printers chooser (if any print service provides add printers
   activity)

4. Refactored the printer discovery session APIs. Now one session
   can have multiple window discovery windows and the session stores
   the printers found during past discovery periods.

5. Merged the print spooler and the print spooler service - much
   simpler and easier to maintain.

Change-Id: I4830b0eb6367e1c748b768a5ea9ea11baf36cfad
2013-08-19 13:24:11 -07:00
Svetoslav
66160bb881 Partial implementation for the favorite and available printer tracking.
1. Added a dedicated class that keeps track of the user's favorite printers
   based on past usage. We keep the last 50 uses and assign a decreasing weight
   to older historical use records. The printer whose records' sum is the
   largest is considered the favorite for the user and so on.

2. Factored out the printer discovery logic from the print job config activity
   into a separate available printers provider class. It encapsulates all the
   logic to communicated with the remote print services to discover printers,
   keep track of added, updated, and removed printers.

3. Preliminary scetch of the printer chooser acitivty that will show all the
   printers.

Change-Id: I5524665f2a9a565f186db85214d5e41a44f4812e
2013-08-14 00:06:53 -07:00
Svetoslav
597945fd3a First pass of the print dialog UX
Change-Id: I315a16d7f68c73ca180c76e722847b4b1bdea55b
2013-07-19 16:23:12 -07:00
Svetoslav Ganov
4b9a4d1687 Print - platform APIs
Related changes:
    Skia (inlcude PDF APIs): https://googleplex-android-review.googlesource.com/#/c/305814/
    Canvas to PDF: https://googleplex-android-review.googlesource.com/#/c/319367/
    Settings (initial version): https://googleplex-android-review.googlesource.com/#/c/306077/
    Build: https://googleplex-android-review.googlesource.com/#/c/292437/
    Sample print services: https://googleplex-android-review.googlesource.com/#/c/281785/

Change-Id: I104d12efd12577f05c7b9b2a5e5e49125c0f09da
2013-06-21 18:43:17 -07:00