Before, SuggestionsAdapter would not close input streams after
reading icons from them. This leaks file descriptors and,
in the case of MemoryFiles, virtual address space.
Before, the variants of MemoryFile.MemoryInputStream.read() would throw
IOException or IndexOutOfBoundsException if EOF was encountered
before the requested number of bytes was read. This violates
the contract of InputStream.read().
This patch makes read() return the number of bytes available, if any.
If already at EOF, -1 is returned. The patch also adds new tests,
which checks cases where MemoryFile.MemoryInputStream.read()
should throw IndexOutOfBoundsException or return -1. several of these
tests failed with the old code and pass now.
This fixes http://b/issue?id=1881894
This allows content providers to use in-memory data to implement
ContentProvider.openAssetFile(), instead of just normal files
and sockets as before.
To test cross-process use of AssetFileDescriptors for MemoryFiles,
a test content provider and a client for it are added to
AndroidTests.
Fixes http://b/issue?id=1871731
This was required because we need a way to set the preferred activity for a
particular intent filter based on user selection (in our case the
ACTION_WEB_SEARCH intent filter for selecting the preferred search engine from
the list of available search engines providers). The current
addPreferredActivity call was not sufficient since it leaves the existing
preferred activities in the list and does not remove them, which this call
does.
Merge commit '9af0b4f7be14f2b3ed0ecc843c57ea47ec288e55'
* commit '9af0b4f7be14f2b3ed0ecc843c57ea47ec288e55':
Add new listener to GestureOverlayView. This listener fires whenever the overlay thinks the user is starting a new gesture. This allows Home to snap the workspace back to its original position during a gesture operation.
Merge commit '2c159ec05b8fc52166e22d7c4f49cf43d10b487b'
* commit '2c159ec05b8fc52166e22d7c4f49cf43d10b487b':
Corrected the name of the native library the SynthProxy class loads (libttssynthproxy instead of libsynthproxy) to match the lib name from frameworks/base/tts/jni/Android.mk.
* changes:
Corrected the name of the native library the SynthProxy class loads (libttssynthproxy instead of libsynthproxy) to match the lib name from frameworks/base/tts/jni/Android.mk.
Merge commit '7322c96cc0c2524d399fb43fb406fb6324a795c8'
* commit '7322c96cc0c2524d399fb43fb406fb6324a795c8':
Fixed issue where code for extracting scripts was eclipsed by runTest method.
Merge commit '1a21de56b9e3e69413ee6addc0e776b40f79782e'
* commit '1a21de56b9e3e69413ee6addc0e776b40f79782e':
Addressed comments of change 2515 for the TtsService class:
* changes:
Addressed comments of change 2515 for the TtsService class: - made the SpeechItem and SoundResource inner classes static, - prefixed the TtsService member variables by 'm', - changed indentation from 2 to 4 characters.
- made the SpeechItem and SoundResource inner classes static,
- prefixed the TtsService member variables by 'm',
- changed indentation from 2 to 4 characters.
Merge commit 'b42e1ff65ae44a0873959c5defe3ba4826109490'
* commit 'b42e1ff65ae44a0873959c5defe3ba4826109490':
AI 149494: Minor improvements to wording in design tips for missing activity and notifications
Merge commit 'b33940abca9d43891575f58a1107c8ec247afed1' into donut
* commit 'b33940abca9d43891575f58a1107c8ec247afed1':
AI 149494: Minor improvements to wording in design tips for missing activity and notifications
Merge commit 'a74303d80637c0d63057fc4b501a4f93cf01ea85'
* commit 'a74303d80637c0d63057fc4b501a4f93cf01ea85':
Trying to fix sim-eng build: when building the simulator on linux, link (only) with libdl, as opposed to also making libdl a build target.
Merge commit '30b70cec05190c8fcfa5aeb175a37bf81ed3966d'
* commit '30b70cec05190c8fcfa5aeb175a37bf81ed3966d':
Trying to fix the build for simulator: modifying makefile to not link against libdl.
Merge commit 'b2decbe2f168a82d674ea699a809a702bad51f54'
* commit 'b2decbe2f168a82d674ea699a809a702bad51f54':
Adding the TtsService class for text-to-speech synthesis.
Merge commit 'abf3c80c60c6584a2cc77a0971078f85a877bc6f'
* commit 'abf3c80c60c6584a2cc77a0971078f85a877bc6f':
Adding java/jni code for the Java TTS SynthProxy class, which relays calls from the TTS service to the native TTS plugin library.
Rename the TextDialog to be a more accurate description of what it is.
Also rename some methods and variables which pertain to it, and preload
the newly created class.
Merge commit 'a058f02b591d971a829cb1e28d48a992e46ad85e'
* commit 'a058f02b591d971a829cb1e28d48a992e46ad85e':
progress towards impression and click stats on all sources, plus some internal cleanup
(framework portion)
suggestionCursor has new callbacks for impressions and clicks
- impressions now used to trigger "more" UI, cleanup apis around that
search dialog reports which position was clicked on via cursor#respond
- can now detect when sources under "more results" are clicked
- also used to simplify existing stuff:
- can detect when "more results" entry is clicked and toggle base on that (no longer need INTENT_ACTION_CURSOR_RESPOND one off)
- use response from click reporting to instruct which position should be selected