Bluetooth MAP (Message Access Profile) Upstream Changes (3/3)

Incorporates updates to the Bluetooth MAP profile from Code Aurora's
Android Enablement Project since we initially pulled in from their
gingerbread to CM7 last year. This patch addresses bugs with the
current MAP profile, adds a UI request for message access approval
when pairing, and adds additional error checking and logging.
Confirmed to fix date and "Download" function of Ford SYNC Gen1.
Pulled in from the codeaurora jb branch.

Change-Id: I5c7e7396e0e97760bba9bdf4bf848b6bfa58e62c
Fix memory leak in SettingsObserver. The observer holds closed activities alive because it registered to ContentResolver.

Move SettingsObserver to DecorView where it is needed and observe/unobserve on attach/detach from Window

Change-Id: I0ca65203bca6c1a3f481ba8cdd58d6d986f9c47b
Fix home/menu unlock with longpress hardware key actions

Also fixes issue where home ACTION_DOWN was waking and ACTION_UP was unlocking the device in a single press.

Patchset 4: mUnlockKeyDown reset properly

Change-Id: Ib4408070fc207c8e2b4230540a551bfed718787d
fix an overflow in the orientation sensor calculations

this would cause the TYPE_ORIENTATION sensor to report NaN after
40 to 800 hours of up-time. this problem only affects the older
and deprecated SensorListener API.

Bug: 7434842
Change-Id: Ie8593cca9c98e4907e417db4106c06151e3ee9a1
Fix infinite recursive loop

FindBugs description:

There is an apparent recursive loop at IntProperty.java
in method set(Object, Integer)

This method unconditionally invokes itself. This would seem
to indicate an infinite recursive loop that will result in a stack overflow.

Change-Id: I3e85911802c54c7a88e0b966e5e0e1896821edf6
Fix: Circlebattery has additional docking battery indicator

As pointed out by Aaron Echols, i forgot about docking batteries.
This patch adds an aditional circle, if a docking battery is attached.

Aaron pointed out, this is important for 10.0.1 release

This patch also fixes a small xml screw up, which created a problem on really high densities.

Patchset 2: Switched position of batteries and cleaned up the code accordingly
Patchset 3: Minor fix of wrong variable name

Change-Id: I2b437bac3428362f3865110d4bb08fad1e5f078c
Revert "Add simple caching to XML compilation"

This reverts commit 2e39691d11a6559950f05ef8220c57909840675b.
Cache resource ID lookups in aapt

This speeds up certain workloads considerably, particularly
those involved in buildling apps via the SDK.  Windows-based
use should particularly benefit from the change.

Change-Id: I29f4b3a77400b201ee219729cc28a5e359c0c5e8
libaudioeffect_jni: GREF leak fix for JB

- Excessive JNI global reference in AudioEffects.
- Global references created during native setup
  are not deleted.
- Global references are deleted in setup failure
  and during native release.

Change-Id: I302b7f8de7189f85fd07167b950f85795ffc5ef1
CRs-fixed: 413633
Added Synchronization block to avoid Race condition

While removing the top activities of crashed process from the
history stack sometimes it was leading to race condition and decrementing
history stack index twice. because of this index out of bound issue was coming

Change-Id: I2a5667d36aaa7c3b7adac347db6c9bc7429d9444
CRs-fixed: 381904
framework: fix reference leak in activiy manager

Change-Id: If7f27ea35f5a1d1dd7c98fbe5f92729ab9ba0257
Longpress hardware key actions in PasswordUnlockScreen

Change-Id: I8e2cf5d839e907344e83c29846bbcb59dfbeabca
Framework-res: remove build warning

fixes:
'gsm_alphabet_default_charset' has no default translation

Change-Id: I9043f86f8d3782c0d2ac869351482282355118b1
camera: add power mode support

Based on commit 7036d66bec7697160ba1b2e255f1e7fae0c8c435 from CAF,
branch ics_chocolate.

Change-Id: I8a60668b18980fd5e6f9dd341db5a8a63deb99d0
telephony: update Sony RIL

* use QualcommSharedRIL responseIccCardStatus, skipping pin/puk count as Sony do not
  have it
* WA: skip getCdmaSubscriptionSource we do not have any CDMA phone and is causing some
  issue (need to figure why is called on gsm phone)
* QualcommSharedRIL use RILConstants when possible

Change-Id: I6323e4600d76f32d81e78331ca86b4cf358cbd4f
Smooth Spinners: Makes the loading "spinner" animation smoother in non-holo apps

The loading "spinner" animation is quite jerky by default when the progress xml's from
drawable are called in applications that don't use the holo progress animation. The holo
"spinner" animation is already smooth by default. This makes every other "spinner"
animation smooth.

We've been changing this value in all ROM's we release, both AOSP and CM based ones
as well as stock ROM's, since it gives a more polished look to the entire system. In the past
3 years we've been using this small tweak we have not noticed anything that would
adversely affect battery life or system operations as a whole.

Signed-off-by: Sar Castillo <sar.castillo@gmail.com>
Frameworks/base: Correct Simplified Chinese Translations

The current translation refers to the radio as "收音机", which is the
common name for an FM radio receiver. Based the English strings
(And also based on how AOSP doesn't really have FM radio support),
it's actually referring to the wireless radio, which is translated as
"无线电" in Chinese.

Also submitted to AOSP:
https://android-review.googlesource.com/#/c/46240/

Change-Id: If9578ed285c02873805be2625a85ae8ddc042311
Update Japanese translation.

  - Add missing translated entries.

Change-Id: I0bc99bd08492078d573103d8cb8f08242bd6f6ac
Improve scan time for some cases

When the path being matched has a sqlite wildcard character in it, a "like"
match will be quite slow. Unfortunately this is fairly common, since "_"
is a wildcard character. However, because in most cases the case of the path
in the database will match the case on disk, an "=" match will work, so it
is worthwhile to try an "=" match first, before trying a "like".

If there are no wildcard characters, the "like" will be as fast as the "=",
because of the case-insensitive index on the _data column, so there is no
need to try "=" first in that case.

b/6751354

Change-Id: I1cd4efbd56a37886cb44a86acb73eb9a3c9f303d
WiredAccessoryObserver: Headset detection for sony msm7x27a

Sony's headset driver uses the nonstandard headset_sensor switch
while other drivers (eg power button driver) still use the h2w
switch, so simply renaming back to h2w is not simple. This looks
for the headset_sensor switch, and if it's not present falls
back to the standard h2w switch.

Change-Id: Ibfd39edf80e2e3a2f4c084960908d1e24808df54