fix sms receiving for some Samsung CDMA phones

cherry-picked from ICS branch, with addition of bool
to core/res/res/values/public.xml for jellybean

Change-Id: I4639b10e5d1c512135572807f9430e81b6b8869b
Services.jar: Reworked computeNewHeadsetState function to set state in a
manor used in ics. This allows states such as 129 and 130, which are
used for 35MM_HEADSET to be correctly registered as a new state.

Change-Id: I3bd1ec17d0cd184593edf330f482f09396785e76
Poll for DATA_REGISTRATION_STATE on SVDO devices (3G icon fix).

When both voice and data are active, SVDO devices return
RADIO_TECHNOLOGY_1xRTT for VOICE_REGISTRATION_STATE, and
RADIO_TECHNOLOGY_EVDO_A (or equivalent) for DATA_REGISTRATION_STATE.  So
both states must be polled to determine "which" radio technology is in use
(although they technically both are).  Otherwise only 1xRTT is reported.

Note: This bug was masked for a while as the PREFERRED_NETWORK_MODE
defaults to NETWORK_MODE_GLOBAL in PhoneFactory, which is another,
preexisting circumstance for polling DATA_REGISTRATION_STATE.  Thus, the
bug would trigger upon opening "Mobile network setings", when the radio is
queried for its PREFERRED_NETWORK_TYPE the first time.

Change-Id: I80456a7a1f2136a2ee68b54137dbafd4db8e202b
bootanimation: allow using RGB565 instead of ARGB8888

RGB565 uses considerably less memory, and together with texture
cache, it allows us to offer a really smooth bootanimation on
not so powerful devices.

Change-Id: I9da8fd7e6a587b5895519dd0983ec9b8f676771b
frameworks/base: Increase Zygote preload GC threshold.

Increase Zygote preload GC threshold to half of the heapgrowthlimit,
to reduce boot up time.

Change-Id: I74a68a512c2266ac6e62f09f361f8607251ca9a7
Bluetooth: AVRCP 1.3 features changes (2/2)

Bluetooth module will listen metadata/event change intents
from Music app and post data to Bluez stack.

Merged the following from ICS:
Change-Id: 37151cf5162404e27c985a1b6a874cfd9a51d657
Change-Id: f3d9f182f0eacc3ead491f7d3f571f5ed93f7c20
Change-Id: 432fdab5fbbfb6687b571d1e06d6b51e944ed4d5
Change-Id: b4d51e3bc1b52f6c1ff1d006aae6cff261c739e9
Change-Id: f1c1549254c17be681066544efbbcf7ad1e25913

       modified:   core/java/android/server/BluetoothA2dpService.java
       new file:   core/java/fm/last/api/Station.java
       modified:   core/jni/android_server_BluetoothA2dpService.cpp
       modified:   core/jni/android_server_BluetoothEventLoop.cpp
       new file:   core/res/res/values/avrcp_data.xml
       modified:   core/res/res/values/public.xml

Signed-off-by: Trey Briggs <treybriggs@gmail.com>
SearchWidget: passing APP_DATA to voice intent (from ics)

ics: http://review.cyanogenmod.com/#/c/17826/1

SearchView uses SearchManager.APP_DATA to pass data between the origin activity
and the search activity. This works for text searches (keyboard), but it's not
implemented by voice recognition searches. The method createVoiceAppSearchIntent
initializes a empty bundle that is filled with the QUERY parameter.
This patch adds the SearchManager.APP_DATA parameter if is present, let the
search activity access to the data passed by the origin activity

Change-Id: I2d0d853b69b36aa4e52f3cd49b4364f5fbb5ab93
resume: fix recents showing up when waking the device with the home button

The previous fix, resolved the problem most of the time, but the home
long press would still happen once in a while during resume from RAM.

This is probably still somewhat dependent on timing but the notifyKey
runs immediately first thing after resume, so this fix should solve the
problem completely and it should be enough.

Signed-off-by: Andrea Arcangeli <andrea@cpushare.com>
RIL: fix protocol mismatch for DataConnectionState_v4

The apn got dropped in DataConnectionState v4.

Avoids UnknownHostExceptions in DataCallState.setLinkProperties().

Change-Id: Icd0a1ba1c77cead13b15b3749965edead5f59135