Implement a more consistent policy for system and UI sounds (key clicks, lock/unlock,
camera shutter, DTMF, low battery...):
- All system sounds are played over STREAM_SYSTEM stream type.
- The STREAM_SYSTEM volume that was previously fixed now tracks the volume of a "master"
stream type. This "master" stream type is STREAM_RING for phones and STREAM_MUSIC for
tablets which corresponds to the stream whose volume is modified by default by the volume
keys.
- The STREAM_SYSTEM volume ranges from -24dB to -6dB (-24dB to -12dB over headphones) when the
"master" stream volume ranges from its min to its max.
- DTMF tones are played over STREAM_DTMF that tracks the "master" stream volume in the same
manner with the following exception: when in call, DTMF stream tracks STREAM_VOICE_CALL volume.
- Camera shutter sound is played over STREAM_SYSTEM_ENFORCED stream that tracks the "master"
stream volume except in countries where regulation enforces this sound. In this case
its volume is fixed and cannot be muted.
- Low battery sound is played over STREAM_SYSTEM and therefore has a tunable volume and is
heard while in call.
Issue 6344620.
Issue 6069229.
Issue 6213100.
Change-Id: I53a237878ead596e706c5dbbb1420e62cde32bd7
b:/6278826
The SurfaceTextureTarget Filter was not unregistering the surface
on closing leading to crashes and blank screens.
Change-Id: Ia9f6fc69b92d5a5e2e1e3803969152d11528aa3d
ACCOUNT_TYPE and ACCOUNT_NAME query parameters were required in API level 15.
We've removed the check for JB, but in order to keep compatibility with HC
apps still need to add those parameters.
Bug 5135278
Change-Id: Ib9b9751c9017c53905047045816a44c5a279fa64
This cleans up the biometric sensor interface - the interface between
lockscreen and Face Unlock. Not only does it document the interface,
but it also makes two noteworthy changes to the interface:
1) Instead of calling mBiometricUnlock.start() with a parameter to
tell it whether to suppress itself, lockscreen makes all of the
decisions about whether the biometric unlock should be started or not
and only calls start() if it should be started. Passing a parmeter to
tell a function to not start itself was strange, but it was a
necessary intermediate step in the process of fixing this interface.
2) Instead of calling mBiometricUnlock.initializeView() with a top
view that the biometric unlock should attach to, lockscreen now
provides the biometric unlock with the actual view it is allowed to
work in. This keeps lockscreen in control of where the biometric
sensor is allowed to display.
A few things were also cleaned up within the Face Unlock
implementation of the biometric interface:
1) Changes needed to match the requirements of the improved biometric
sensor interface, including moving the functions into an order that
makes more sense.
2) The bind() function was only being called from start(), which has
turned into only a couple of lines of code, so the bind() code has
been just put inline into the start() function, which mirrors the
stop() function which has the unbind() code in it.
3) The showArea() function was really just one line of code with a
check. It was being called from two places. The showArea() code is
now just written inline in those two places, which makes the code
much easier to follow.
4) Renamed occurrences of FaceLock to Face Unlock.
Change-Id: Ie95ce21dcc77170381af9ce320f2675dfe249741
Using FLAG_RECEIVER_REPLACE_PENDING causes broadcasts
to be missed confusing the connectivity service
BUg: 6401167
Change-Id: Id69b2df18b9eb6b3e2195fbf399f36501a8d41df
These intents should only be sent by the system:
android.intent.action.HEADSET_PLUG
android.intent.action.ANALOG_AUDIO_DOCK_PLUG
android.intent.action.DIGITAL_AUDIO_DOCK_PLUG
android.intent.action.HDMI_AUDIO_PLUG
android.intent.action.USB_AUDIO_ACCESSORY_PLUG
android.intent.action.USB_AUDIO_DEVICE_PLUG
Change-Id: I7be41892a9c4e619ca3e1c892fad6f1f2714c74f
Signed-off-by: Mike Lockwood <lockwood@google.com>
Adjust AbsListView to use a linear interpolator for smooth scrolling
rather than the default scroller behavior. This prevents irregular
motion as the scroll is altered in-flight to account for varying
height list items.
Bug 6397800
Change-Id: I8cc33dfc18903943369e1353930c48e2652b0142
WebViewDatabase has a getInstance() method, so similarly
to WebStorage, WebIconDatabase etc we refactor it into a
proxy class, and move the current implementation into
WebViewDatabaseClassic.
Also clean up some JavaDoc in touched files.
Bug: 6234236
Change-Id: I71cbd8f78e60f396e96e8546073ad634797cce15