1c5caa96f19be15c2f3129c96a52aeca463784cc |
16-Apr-2018 |
Philip P. Moltmann <moltmann@google.com> |
Enable multi-cast while resolving nsd services Test: Before taimen never resolved nsd servives. How it resolved nsd services reliably when built in print service and print service recommendation service used NsdService Fixes: 75316187 Change-Id: I5976bea0273f605e59dc4ee72dbd766ff79d1d41
om/android/bips/discovery/MdnsDiscovery.java
|
1e326d3a8ef665536a542f0ed64112dbe00a03c6 |
18-Jan-2018 |
Glade Diviney <mopriadevteam@gmail.com> |
Support manual-add of IPPS and other printers The current code does not allow IPPS-only printers to be added manually. In addition, printers located at alternate URIs cannot currently be added. This changes addresses both problems by searching for additional ports/ paths when doing a manual add, and also by permitting the user to specify a scheme (ipp:// or ipps://), a port number, and/or a path along with the hostname. If any part is not supplied, known defaults are populated and attempted. Any dangling network attempts are cancelled when no longer needed. Users can review the full printer URI in the details dialog of the Add Printer activity. Test: Set up an IPPS-only printer and try to add it manually Change-Id: I34f77168d523a762b83adc692cbf6a444d831cd4 Signed-off-by: Glade Diviney <mopriadevteam@gmail.com>
om/android/bips/discovery/ManualDiscovery.java
om/android/bips/ipp/Backend.java
om/android/bips/ipp/CapabilitiesCache.java
om/android/bips/ipp/GetCapabilitiesTask.java
om/android/bips/ui/AddManualPrinterDialog.java
om/android/bips/ui/AddPrintersFragment.java
|
080c9c93d627b0b56bcfab83748915f92956930b |
09-Jan-2018 |
Glade Diviney <mopriadevteam@gmail.com> |
Add support for Wi-Fi Direct printing In environments where Wi-Fi LANs are inconvenient or unavailable, Wi-Fi Direct connections allow users to print using an ad-hoc point-to-point network between the mobile device and the printer. This code change allows users to discover and add Wi-Fi Direct printers, and later select and print to them. Because the same printer may appear both on a connected LAN and/or as a an added Wi-Fi Direct printer, this code "de-duplicates" printer records based on UUID. In this way, the same printer only appears once to the end user, even if it is discovered using two different mechanisms. The new package com.android.bips.p2p is added to manage Wi-Fi Direct discoveries and connections. Other code is refactored as necessary according to current style requirements. New UI Activities and Fragments are also added to expose Wi-Fi Direct to the user. Test: Add and print to a printer with Wi-Fi Direct capabilities Change-Id: If4d8c7949ecc93851c07bd954674b33803b2fad5 Signed-off-by: Glade Diviney <mopriadevteam@gmail.com>
om/android/bips/BuiltInPrintService.java
om/android/bips/DelayedAction.java
om/android/bips/JobQueue.java
om/android/bips/LocalDiscoverySession.java
om/android/bips/LocalDiscoverySessionInfo.java
om/android/bips/LocalPrintJob.java
om/android/bips/LocalPrinter.java
om/android/bips/discovery/ConnectionListener.java
om/android/bips/discovery/DelayedDiscovery.java
om/android/bips/discovery/DiscoveredPrinter.java
om/android/bips/discovery/Discovery.java
om/android/bips/discovery/ManualDiscovery.java
om/android/bips/discovery/MdnsDiscovery.java
om/android/bips/discovery/MultiDiscovery.java
om/android/bips/discovery/NsdResolveQueue.java
om/android/bips/discovery/P2pDiscovery.java
om/android/bips/discovery/SavedDiscovery.java
om/android/bips/ipp/Backend.java
om/android/bips/ipp/CapabilitiesCache.java
om/android/bips/ipp/GetCapabilitiesTask.java
om/android/bips/ipp/StartJobTask.java
om/android/bips/jni/PdfRender.java
om/android/bips/p2p/P2pConnectionListener.java
om/android/bips/p2p/P2pConnectionProcedure.java
om/android/bips/p2p/P2pDiscoveryProcedure.java
om/android/bips/p2p/P2pMonitor.java
om/android/bips/p2p/P2pPeerListener.java
om/android/bips/p2p/P2pPrinterConnection.java
om/android/bips/p2p/P2pUtils.java
om/android/bips/render/PdfRenderService.java
om/android/bips/ui/AddManualPrinterDialog.java
om/android/bips/ui/AddP2pPrinterDialog.java
om/android/bips/ui/AddPrintersActivity.java
om/android/bips/ui/AddPrintersFragment.java
om/android/bips/ui/FindP2pPrintersFragment.java
om/android/bips/ui/ManualPrintersFragment.java
om/android/bips/ui/PrinterPreference.java
om/android/bips/util/BroadcastMonitor.java
om/android/bips/util/FileUtils.java
om/android/bips/util/PriorityLock.java
om/android/bips/util/WifiMonitor.java
|
c7272f4c0471381b087aaa8abadbc4e87167473f |
06-Oct-2017 |
Philip P. Moltmann <moltmann@google.com> |
Syncronize PdfRender singleton correctly Test: m -j BuiltInPrintService Change-Id: Icb9936907cdba7dcd5ff3248b70ea94c9f7a372a
om/android/bips/jni/PdfRender.java
|
9ea209a27fb6a1236c9c51caba14abb07b8134f9 |
06-Oct-2017 |
Philip P. Moltmann <moltmann@google.com> |
Adjust style to fit what is enforced by checkstyle Test: Ran check-style on every file. Now only complains about double-copyright and missing java-doc comments m -j BuiltInPrintService Change-Id: I2f1052e24e54f06276ef5ae7f5821adf1b6274e1
om/android/bips/BuiltInPrintService.java
om/android/bips/JobQueue.java
om/android/bips/LocalDiscoverySession.java
om/android/bips/LocalPrintJob.java
om/android/bips/LocalPrinter.java
om/android/bips/discovery/DiscoveredPrinter.java
om/android/bips/discovery/Discovery.java
om/android/bips/discovery/ManualDiscovery.java
om/android/bips/discovery/MdnsDiscovery.java
om/android/bips/discovery/MultiDiscovery.java
om/android/bips/discovery/NsdResolveQueue.java
om/android/bips/ipp/Backend.java
om/android/bips/ipp/CancelJobTask.java
om/android/bips/ipp/CapabilitiesCache.java
om/android/bips/ipp/GetCapabilitiesTask.java
om/android/bips/ipp/JobStatus.java
om/android/bips/ipp/StartJobTask.java
om/android/bips/jni/BackendConstants.java
om/android/bips/jni/JobCallback.java
om/android/bips/jni/JobCallbackParams.java
om/android/bips/jni/LocalJobParams.java
om/android/bips/jni/LocalPrinterCapabilities.java
om/android/bips/jni/MediaSizes.java
om/android/bips/jni/PdfRender.java
om/android/bips/jni/SizeD.aidl
om/android/bips/jni/SizeD.java
om/android/bips/render/IPdfRender.aidl
om/android/bips/render/PdfRenderService.java
om/android/bips/ui/AddManualPrinterDialog.java
om/android/bips/ui/AddPrintersActivity.java
om/android/bips/ui/ManualPrintersFragment.java
om/android/bips/util/FileUtils.java
om/android/bips/util/WifiMonitor.java
|
d2a96dfc6cbc78e660d38284b3ec5346cbabb125 |
05-Oct-2017 |
Glade Diviney <mopriadevteam@gmail.com> |
Support IPPS-only printers Some printers ship in a mode that supports only IPPS. This pull request discovers IPPS printers and uses IPPS to communicate with printers if necessary. Test: Use Default Print Service to print to an IPPS-only printer Change-Id: I9aba8e03178182828ed423179cdbbefd42f868b3 Signed-off-by: Glade Diviney <mopriadevteam@gmail.com>
om/android/bips/discovery/MdnsDiscovery.java
om/android/bips/ipp/Backend.java
om/android/bips/ipp/StartJobTask.java
|
911db0bab1adfab02e551fb512e7fac8f8dccfe1 |
23-Aug-2017 |
Glade Diviney <mopriadevteam@gmail.com> |
prevent IO on main thread When starting up discovery, prior code fetches IP address for manually- added printers. For named printers this results in IO on main thread, causing an exception. This change captures IP address during capability scan. Test: Manually add a DNS-resolvable printer and restart printing Change-Id: I0f87de92a847ce41381a94aa5d5a7bbf8ecb4165 Signed-off-by: Glade Diviney <mopriadevteam@gmail.com>
om/android/bips/LocalDiscoverySession.java
om/android/bips/LocalPrinter.java
om/android/bips/ipp/GetCapabilitiesTask.java
om/android/bips/jni/LocalPrinterCapabilities.java
|
0acf95120571c09828ae884578528e73cf82a6b6 |
13-Jun-2017 |
Glade Diviney <mopriadevteam@gmail.com> |
make add printer dialog less invasive am: d1d1934f73 am: a474191a14 Change-Id: I6e9a75e4988a7431a42d85e1deb9b21a3f1b3798
|
d1d1934f739b57b5389abdef5fe906a27325a704 |
02-Jun-2017 |
Glade Diviney <mopriadevteam@gmail.com> |
make add printer dialog less invasive When visiting the Add Printer activity for the first time with no manual printers added, it makes sense to automatically prompt the user. But on subsequent attempts the user may just want to see the list and shouldn't have the dialog in the way. With this change, the dialog only appears if the user has no manually-added printers already. Test: Use Add-Printer feature, won't show dialog if a printer already added Change-Id: I5b9e38fa868ca0a4297a5dcc314d48d56fe7fee6 Signed-off-by: Glade Diviney <mopriadevteam@gmail.com>
om/android/bips/discovery/Discovery.java
om/android/bips/ui/ManualPrintersFragment.java
|
29b50e168dadd6354cd124e20343a6203f378015 |
12-Jun-2017 |
Glade Diviney <mopriadevteam@gmail.com> |
improve printer discovery am: e604a9fafd am: 97d2fc8db8 Change-Id: I53ef64d68e1a7135c38a5e73ab8213542d2b40f7
|
e604a9fafd50bca9fbc86ca525196efb6f1b70b1 |
03-Jun-2017 |
Glade Diviney <mopriadevteam@gmail.com> |
improve printer discovery When doing IPP Get-Attribute requests, printers that are missing or slow to respond can slow down the discovery process dramatically. This change allows more control over timeout, prioritization, and cancellation of Get-Attribute requests. A "first pass" with a short timeout puts all well-behaved printers in front of the user quickly, and a second pass with a longer timeout catches any stragglers for completeness. Manual printer discovery is also improved here, by looking at :80/ipp/print, capturing the full printer name from printer-dns-sd-name or printer-info if necessary, and more consistently presenting the correct name to the user. Test: Visit the printer list on networks having multiple printers Change-Id: I9bfdbf17e617e8cc073f88bd03c6be1e4dfd21e7 Signed-off-by: Glade Diviney <mopriadevteam@gmail.com>
om/android/bips/LocalDiscoverySession.java
om/android/bips/LocalPrintJob.java
om/android/bips/LocalPrinter.java
om/android/bips/discovery/DiscoveredPrinter.java
om/android/bips/discovery/Discovery.java
om/android/bips/discovery/ManualDiscovery.java
om/android/bips/discovery/MultiDiscovery.java
om/android/bips/ipp/Backend.java
om/android/bips/ipp/CapabilitiesCache.java
om/android/bips/ipp/GetCapabilitiesTask.java
|
8e5bb9faa4c15090015f176fc1982c678da79205 |
07-Apr-2017 |
Philip P. Moltmann <moltmann@google.com> |
Merge "Suppress printers that belong to other services" into oc-dev
|
f949dfa10fd8cf312596a0b9c91e9a05e7fbbdee |
04-Apr-2017 |
Philip P. Moltmann <moltmann@google.com> |
Suppress printers that belong to other services Use the printservicerecommendation service to get a mapping from printer addresses to services that can handle the printers Then query if the any print service that could handle the printer is enabled. If it is enabled do not show printer. Fixes: 35765644 Test: Enable HP print service while a HP printer is visible to the default print service Change-Id: Ief6ae698abdd786acff367cc876cc89a6626beeb
om/android/bips/LocalDiscoverySession.java
om/android/bips/LocalPrinter.java
|
0ce82dfafd48b3e44072291bdcefadb7692ade6f |
06-Apr-2017 |
Glade Diviney <mopriadevteam@gmail.com> |
fix incorrect use of FileDescriptor am: 086d839a55 am: b1da0bdda7 am: 6bb54a74e9 am: 76c4e1b166 Change-Id: I64155391c03eeed8336453b69ef788efa99769c3 (cherry picked from commit e8f6630b0692778683b3d332d84a35c6c7e6d06f)
om/android/bips/ipp/Backend.java
om/android/bips/ipp/StartJobTask.java
|
086d839a5569f261fe83473ebfed37cc8ab1b433 |
06-Apr-2017 |
Glade Diviney <mopriadevteam@gmail.com> |
fix incorrect use of FileDescriptor PrintDocument.getData() returns a ParcelFileDescriptor which must be retained closed gracefully and calling .getFileDescriptor() does not assure this. The result is a possible IOException when the ParcelFileDescriptor is finalized and closed out from under the FileDescriptor. Test: any print will exercise this code Change-Id: I6644f1d5aee5f26920fa36e50cf5b9a000f6cf7d Signed-off-by: Glade Diviney <mopriadevteam@gmail.com>
om/android/bips/ipp/Backend.java
om/android/bips/ipp/StartJobTask.java
|
99f9b8a26fa612f14e2376df5cd319d19e874e42 |
05-Apr-2017 |
Philip P. Moltmann <moltmann@google.com> |
Add proper icons for default print service. Bug: 35766257 Test: Looked at icons (in settings and print spooler) on angler Change-Id: I74b59174f3890e764180dd12dc946230b664087f
om/android/bips/LocalPrinter.java
om/android/bips/ui/ManualPrintersFragment.java
|
3bf66744d61d18c66d46f2608de0467ad3df0268 |
30-Nov-2016 |
Mopria <mopriaplay@gmail.com> |
Built-In Print Service The Built-In Print Service implements a standard Android Print Service and allows printing to Wi-Fi enabled printers on the users's local network. Printers must support mDNS discovery and the IPP protocol, and must allow jobs to be sent in PCLm, PWG-raster, or PDF formats. Internally, this service implements job control, page rendering, and printer interactions in native code. This code relies on libjpeg-turbo for JPEG encoding functions required by PCLm, and selected portions of CUPS for direct interactions with printers. Test: ./gradlew test Change-Id: Ib2dca0190ba4abe028da1d9cd62308733ecce7b5 Signed-off-by: Mopria <mopriaplay@gmail.com>
om/android/bips/BuiltInPrintService.java
om/android/bips/JobQueue.java
om/android/bips/LocalDiscoverySession.java
om/android/bips/LocalPrintJob.java
om/android/bips/LocalPrinter.java
om/android/bips/discovery/DiscoveredPrinter.java
om/android/bips/discovery/Discovery.java
om/android/bips/discovery/ManualDiscovery.java
om/android/bips/discovery/MdnsDiscovery.java
om/android/bips/discovery/MultiDiscovery.java
om/android/bips/discovery/NsdResolveQueue.java
om/android/bips/ipp/Backend.java
om/android/bips/ipp/CancelJobTask.java
om/android/bips/ipp/CapabilitiesCache.java
om/android/bips/ipp/GetCapabilitiesTask.java
om/android/bips/ipp/JobStatus.java
om/android/bips/ipp/StartJobTask.java
om/android/bips/jni/BackendConstants.java
om/android/bips/jni/JobCallback.java
om/android/bips/jni/JobCallbackParams.java
om/android/bips/jni/LocalJobParams.java
om/android/bips/jni/LocalPrinterCapabilities.java
om/android/bips/jni/MediaSizes.java
om/android/bips/jni/PdfRender.java
om/android/bips/jni/SizeD.aidl
om/android/bips/jni/SizeD.java
om/android/bips/render/IPdfRender.aidl
om/android/bips/render/PdfRenderService.java
om/android/bips/ui/AddManualPrinterDialog.java
om/android/bips/ui/AddPrintersActivity.java
om/android/bips/ui/ManualPrintersFragment.java
om/android/bips/util/FileUtils.java
om/android/bips/util/WifiMonitor.java
|