If the output stream handler passed was not the A2DP output stream, the request was ignored instead of being forwarded downstream to hardware interface.
- Add copyright headers
- Allow the user to pass options (like '-s FOO') to adb
- Restart device adb as root if needed
- Make test_restore to infer a restore set
This fixes the bug where, in SINGLE_CHOICE_MODE, calling
ListView.setItemChecked(x, false) would always uncheck all
items, even if another item, y, was currently checked.
Merge commit '0781f7ace13c68cd328710a268ab3dce1d201562'
* commit '0781f7ace13c68cd328710a268ab3dce1d201562':
Import revised translations. DO NOT MERGE
Merge Korean abbreviated date format fix from cupcake.
* changes:
Implement the jni bindings for Adapter2D. Fix a refcount bug in the native adapter implementation. Use adapters in Film to border the mipmaps.
Merge commit '88c692ca2ce4f0680340cb66f5fe82bfdd532581'
* commit '88c692ca2ce4f0680340cb66f5fe82bfdd532581':
Merge Korean abbreviated date format fix from cupcake.
Merge commit '8c5b3e2fa60e29e45c97bf83b2aa8c6505987f82'
* commit '8c5b3e2fa60e29e45c97bf83b2aa8c6505987f82':
Change browser reliability test to start a new activity for each url
Merge commit '5fd26775bdd14b15058521c82e34b562e0c1e327'
* commit '5fd26775bdd14b15058521c82e34b562e0c1e327':
Name unknown albums after the folder they're in, similar to how songs
* changes:
Fix bug 2025765. Talkback produced a null pointer exception when being enabled and disabled repeatedly due to a race condition between the onDestroy() of the service, and the use of the service itself. The error occurs when one Talkback thread initiates the destruction of the service (call to onDestroy()) when it invokes shutdown() on its TextToSpeech instance (the client of the service). At the same time, Talkback tries to say that "Accessibility" is unchecked from another thread. During onDestroy(), the reference to the TTS engine (sNativeSynth) is reset to null, which is used in the service in speakInternalOnly(), and setLanguage(). The fix consists in the addition of a static variable that signals that the service has entered onDestroy(). Once this flag is set, all method invocations on sNativeSynth will be dismissed. Note that access to the native resources used by sNativeSynth are synchronized at the native layer, therefore preventing sNativeSynth.shutdown() to interfere with a sNativeSynth.speak() call already underway.
* changes:
Name unknown albums after the folder they're in, similar to how songs with no title metadata are named after the file. Only files that are in the root of the card will still belong to the "Unknown Album"
* changes:
Untangle MediaPlayer, MediaRecorder, MediaScanner and MediaMetadataRetriever JNI code, so that creating one of those doesn't initialize all the others. Shaves a hundred milliseconds or so off music app startup time.
Talkback produced a null pointer exception when being enabled and disabled
repeatedly due to a race condition between the onDestroy() of the service,
and the use of the service itself. The error occurs when one Talkback
thread initiates the destruction of the service (call to onDestroy()) when
it invokes shutdown() on its TextToSpeech instance (the client of the
service). At the same time, Talkback tries to say that "Accessibility" is
unchecked from another thread. During onDestroy(), the reference to the
TTS engine (sNativeSynth) is reset to null, which is used in the service
in speakInternalOnly(), and setLanguage().
The fix consists in the addition of a static variable that signals that
the service has entered onDestroy(). Once this flag is set, all method
invocations on sNativeSynth will be dismissed. Note that access to the
native resources used by sNativeSynth are synchronized at the native
layer, therefore preventing sNativeSynth.shutdown() to interfere with
a sNativeSynth.speak() call already underway.