The BT headset detection now makes the difference between car kits and headsets, which can be used by audio policy manager.
The headset connection is also detected earlier, that is when the headset is connected and not when the SCO socket is connected as it was the case before. This allows the audio policy manager to suspend A2DP output while ringing if a SCO headset is connected.
There was no garanty that the corresponding thread destructor had been already called when exiting the closeOutput() or closeInput() functions.
This contructor could be called by the thread after the exit condition is signalled. By way of consequence, closeOutputStream() could be called after
we exited closeOutput() function.
To solve the problem, the call to closeOutputStream() or closeInputStream() is moved to closeOutput() or closeInput().
The function checkForNewParameters_l() is called with the ThreadBase mutex mLock locked. In the case where the parameter change implies
an audio parameter modification (e.g. sampling rate) the function sendConfigEvent() is called which tries to lock mLock creating a deadlock.
The fix consists in creating a function equivalent to sendConfigEvent() that must be called with mLock locked and does not lock mLock.
Also added the possibility to have more than one set parameter request pending.
Use integers instead of void* as input/output handles at IAudioFlinger and IAudioPolicyService interfaces.
AudioFlinger maintains an always increasing count of opened inputs or outputs as unique ID.
Merge commit '3397f16949d2e86442c32f3b82d5ee3ace99ba82'
* commit '3397f16949d2e86442c32f3b82d5ee3ace99ba82':
Capture the start and end memory usage in the output file. Move the start memory catpure after 10 loops.
Merge commit 'a7a3b6ef0fdaf6b17993642b76baf90a03ae0077'
* commit 'a7a3b6ef0fdaf6b17993642b76baf90a03ae0077':
Dismiss both the soft keyboard and the search dialog on back if there is no text entered and no shortcuts are being obscured by the soft keyboard.
* changes:
update most gl tests to use EGLUtils
added two EGL helpers for selecting a config matching a certain pixelformat or native window type
added NATIVE_WINDOW_FORMAT attribute to android_native_window_t
* changes:
Wipe data on backend before a backup run Append the date to 3.txt so that we can see if/when backup failures occurred solely from the device/server state Note that these files will probably be deleted from the tree immediately, to be replaced by the ruby versions.
Merge commit 'e303d2cf94da6bb7f0569fbddd6dfd5b85ed8295'
* commit 'e303d2cf94da6bb7f0569fbddd6dfd5b85ed8295':
Send a special respond to the cursor in SuggestionsAdapter to tell it to
Merge commit '40c10bf4dfbaf2a48b3fe6d2fcc58843cefc01bc'
* commit '40c10bf4dfbaf2a48b3fe6d2fcc58843cefc01bc':
More work on issue #2030135: Device sluggish