Add an API to allow applications to record from the remote
submix when they have the required permissions.
Bug: 10265163
Change-Id: Id3815fe82a6713e058ce4b8ab6128a898481df7e
BluetoothGatt.abortReliableWrite() should not take a BluetoothDevice
parameter. Instead, it should use mDevice instance variable.
bug 10152994
Change-Id: I7fc79b9011cf878414128cc9f1696e5ccc597056
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
This will cause the OS to show UI that allows the user to pick
another application that could potentially handle the transaction.
Also, tweak processCommandApdu() method to take a Bundle to be more
future-proof.
Bug: 10262585
Change-Id: If9d060341b472fac0349f539c04b87e85fe79dfb
When requesting thumbnails, check if their dimensions are larger
than requested, and downscale to avoid memory pressure. Load them
async and with LruCache.
Extend MatrixCursor so that RowBuilder can offer() columns without
requiring they know the projection map. This makes it easier to
respond to query() calls, where the remote side controls the
projection map. Use it to handle custom projections in external
storage backend.
Update date/time formatting to match spec.
Bug: 10333418, 10331689
Change-Id: I7e947a8e8068af8a39b55e6766b3241de4f3fc16
When reading from the end of a pipe or socket, there is no way to
tell if the other end has finished successfully, encountered an error,
or outright crashed. To solve this, we create a second socketpair()
as a communication channel between the two ends of a pipe or
socket pair, sending a status code with details about why the
ParcelFileDescriptor was closed.
The writer end of a pipe or socket can closeWithError() to send a
message to the reader end. When the reader encounters EOF, they
call checkError() to detect if any error occured. This also detects
the case where the remote process died without sending a success
message.
This design is also extended to support regular files on disk, using
the communication channel above to detect various remote close events
or crashes, and delivering that event to a supplied OnCloseListener.
Replaces JNI with best-practice Libcore.os calls, and deprecates
some flags to match Context.
Bug: 10330121
Change-Id: I8cfa1e4fb6f57397667c7f785106193e0faccad3
Previously, a running transition on a scene root would simply
be canceled when a new transition was started. This would result in
abrupt scene changes, especially in generic use cases where apps/widgets
would spawn multiple transitions in successive rendering frames due to
small changes in view properties.
The new approach is to check all running animations against new transitions.
If there are overlapping properties that are being set to different values,
the new animations win and the old ones are canceled. If the end values are the
same, the new animations are noop'd and the old ones are allowed to continue
as-is.
There was also improvement to capturing state while other transitions are
running, necessary in this new world where old transitions are allowed to
continue running. Now, transitions are pause()'d while values are captured,
then resume()'d after capturing is done. This allows the system to see what the
real view properties are, instead of the mid-animation values.
Change-Id: I8e77fb9c1967087a682bb26a45763005f5ca9179
Create documents manage mode to support Downloads and transient
storage devices. Locks user into requested backend root, and forces
file sizes on and sorting by last modified.
Separate API constants for Documents versus Roots, and give concrete
MIME types for roots.
Treat null sizes as unknown. Documents are always enabled in list
so that divider is drawn. Mark external storage file as writable.
Bug: 10329983, 10332993, 10332952
Change-Id: I05f4fdf5b04041a38e1ba7fb30202a3b0c615bf6
This returns the MediaFormat of the track or null (for now).
Change-Id: Ib88fc229b661942b2ed136204fdc43da427d7aed
Signed-off-by: Lajos Molnar <lajos@google.com>
Bug: 10326117
Added KEY_LANGUAGE that for now only refers to subtitles.
Added createSubtitleFormat() method to create base format.
Signed-off-by: Lajos Molnar <lajos@google.com>
Change-Id: I344c36a3fd0d88c285cdebf3f67e549553b37a8e
Bug: 10326117
Flags to indicate write support, and to indicate that a grid view is
preferred. Method to inform system that any root caches should be
invalidated. Methods to mark a Uri as requesting "local only" data.
Helper method for document creation.
Bug: 10330069, 10330108, 10330210, 10329976
Change-Id: I6ce6160f6ce6621e6ea05848a31bbbcb84587671
- Insert metadata enum ints into CameraMetadata
- Insert metadata Keys into relevant files
- Remove some dead code in CameraMetadata
Generated from /system/media/camera/docs.
Change-Id: I3d864ad8c7add5f35ca740860cb2883d54a0791e
Added isFeatureSupported method to CodecCapabilities, so that applications
can query whether codecs support various features. For now
added one video-decoder feature:
FEATURE_AdaptivePlayback
Media playback applications can query it to see if the codec
supports seamless resolution changes during decoding.
Change-Id: I56b2cf1429f39f9b9e0243a990c95e7a64dd7ff7
Signed-off-by: Lajos Molnar <lajos@google.com>
Related-to-bug: 7093648
It is not possible for a client to check whether the session is not
closed and add/update/remove printers atomically. It is always possible
that in between the two method calls the session is closed. Therefore,
we cannot enforce the exceptions.
Change-Id: If0e89e4429c4c360515da8f4bbe0ea3781e8e8fd