The ActivityChooserModel keeps a history of the last fifty
share targets and based on past usage orders the targets in
the UI. The soring implementation is using a map for improving
performance. However, the activities in this map were keyed
on the package name but there maybe more that one share
target per package. Thus, the sorting was generating bad
results. Now the unique component name is used.
bug:11195578
Change-Id: I8c7018fea168b7253ddbe57b477028368726e75e
This changes filters out share targets that we cannot start
because the target does not properly implement the SEND protocol
and has either share target activity hidden or requires a
permission to launch it. Also the code that launches the share
target activity catches the runtime exception and shows an error
message. Note that being able to launch an activity in a moment
of time is not a guarantee that one can do that latter. Hence,
being able to launch an activity while building the share UI
does not guarantee that one can launch it when selecting the
share target.
bug:11402139
Change-Id: Id35732510755b2eeb9eccacc046d289c2f2ee856
The method was returning all supported cipher suites instead of the
default ones only. The default list of cipher suites actually used by
sockets created by this factory is not affected by this issue.
Change-Id: I2e4d7c6547fcb29ff7a0943bc8791706cc8d22bc
1. Implemented the advanced printer options integration. Now a print service
may declare an advanced print options activity which may be launched by
the user if the current printer supports advanced print options. These options
are visible only to the print service that added them and it is the only party
that will interpret the options.
2. Fixed a couple of bugs in the saved print jobs parsing. One was that if there
are more than one page range, a half of the print job properties was not
properly parsed. The other was that the media size constructor was using
incorrect argument order, thus creating a media size with wring width.
3. Fixed and edge case where old print jobs and their docs can get stuck in
the spooler. If the app did not write the requested pages we were not showing
an error message, rather just finish the activity without canceling the print
job and this print job is stuck in the spooler. Now we show an error message
and the user may retry, cancel. If the user cancels the print job is also
cancelled, thus no leftover in the spooler.
4. Fixed the background color of the print dialog to meet UX spec.
bug:11241800
Change-Id: I352440bc86aec824a805883fc9579d96a06d11e6
Also always lower-case extension to extract MIME type correctly,
we may want to fix in MimeUtils at some point.
Bug: 11354402
Change-Id: I77d0c06a663cd0c4320c41553ff1980b6f9a7778
If the remote side of PFD has already written a status message, then
they've also closed their end of the comm FD, and we're going to
EPIPE if we try sending our own status. So, skip writing status if
a remote status is present.
Only one end of the openFile() comm socket needs to be blocking,
otherwise detachFd() would end up blocking forever.
Bug: 11385467
Change-Id: I346d40cc1ca4a6683cec4c2d2b7db2b32ac94a55
This prevents Keep from being selected automatically when shown in the Share dialog
if Keep was previously chosen by the user as Always use for a send action.
This was a regression introduced by the new intent disambig behavior.
Bug: 11294904
Change-Id: I6745060a8ee0a6d680e657b55ee46aaec27bbacb
The current tracking of scene objects in a static ThreadLocal is
problematic as it leaks the Context associated with the SceneRoot and
returns the wrong Scene object if the same layout ID is used across
different scene roots.
Track Scene objects on the scene root view instead to avoid these
issues.
Change-Id: I891986897f757f2666897c937b5ebb0ed1d531c1