Telephony: Handle Data Call List

* Check call status before validating data call state
* Remove duplicates from the list of data calls
* Add RIL_UNSOL_DATA_NETWORK_STATE_CHANGED string to RIL

Change-Id: Iea75053cb8226ec15d2a2c11a73332e5ebe8c793
Telephony: Add DORMANT state to GSM data link activity

GsmDataConnectionTracker sets its activity flag to DORMANT and notifies
LinkActivity when RIL indicates that all its data calls are in
dormant state (i.e. active is set to 1 in UNSOL_DATA_CALL_LIST_CHANGED
message for all data calls)

CRs-Fixed: 332606
(cherry picked from commit 6b57c3b68d989d6b8f114c5f87dac6fc2c13a5f5)

Change-Id: I1d4b9fd24c4049a938d62f08b7720d47400ad7e1
Telephony: Optimizations on alarms used

* Use non wakeup alarms for data stall detection
* Stop data stall alarms during dormancy

CRs-Fixed: 334349
(cherry picked from commit 3512da1c22a8bdb82d633b93a6f2de608f1b4b08)

Change-Id: I2a7654d7cf888d63bf3862d33f126218c409ffd4
QualcommRIL: Update getDataState override

Verification of the dataCall.active status was added to the RIL super
class in change Iea75053cb8226ec15d2a2c11a73332e5ebe8c793, so we can
now fall back to it

Change-Id: Ib04057ec09549c0c79a4e4e1d89e2aa480e1890f
telephony: when building apn list, use preferred apn if it can handle requested type

GsmDataConnectionTracker::setupData() does not consult TelephonyProvider when it
picks an APN for mms. It just uses apnContext.getNextWaitingApn() which picks the
first one in the list. On AT&T it picks wap.cingular, which is wrong for LTE.

Since the data connection is made properly, setupData() stops scanning and never
tries the correct APN (pta). The result is sending of the mms just hangs.

This change causes GsmDataConnectionTracker::buildWaitingApns() to first try the
currently active APN if it can handle the type of APN being requested, then it
tried the preferred APN and then the rest of the APN's, in that order.

This fixes the MMS problem since the correct APN (pta) is chosen.

Change-Id: I076b88d42f59241cf468d678ad0e628d0f2d9e8d

Conflicts:

	telephony/java/com/android/internal/telephony/gsm/GsmDataConnectionTracker.java
NavigationBar : RecentButton fix after theme change

Recent button stops working after theme change since the listeners
are not set in time for them to be invoked. This patchset addresses that.

Change-Id: If69328c859a86bd3068a48994918c5d9f990d154

Conflicts:

	packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBar.java
webkit: Reduce processing in WebCore thread while scrolling and zooming

Change-Id: If29ccd0248b02f3dbc02957494d2aa942c7112ac

Conflicts:

	core/java/android/webkit/WebViewCore.java
Fix crashes on video playback.

Change I8ee9162536da5711e383dd1d89dca4fa1da107be missed correct variable
initializations at one of two places, which led to a null pointer
dereference. This patch fixes that.
It also updates the variable that stores the original allocated length
to be of the same type as used in the OMX buffer header.

Change-Id: I15b083da8565ec3e8769d18ba1f19d3b12f54cb1
SurfaceFlinger: Let HWC handle an alpha blending
                when either C2D or DYN is set

Before we only use GPU to blend an alpha value.
However C2D can also handle the alpha blending,
when the composition type is set to either C2D or DYN,
use HWC to handle this.
And set the alpha value of C2D to HWC_BLENDING_PREMULT,
so later C2D can set alpha blending parameter.

Change-Id: I53be1d4219fbf2467a6391276d59213858a50058
Fix restoring network mode preference on reboot.

When a user sets the option to use only 2G networks (for GSM networks) or its
equivalent for CDMA networks, each reboot erases that setting. That forces
the user to re-select the same option after each boot.
This (very simple) patch fixes it.

Change-Id: Ib9e4bba6da705c127ce1f3aa3c242b9262541cee
LGEQualcommUiccRIL: Disable setupDataCall override

This is apparently not necessary anymore

Change-Id: I026b6bf40ff629c8db640520adef2a61b6e14fed
surfaceflinger: call perform function with custom events to HAL

- SF will call perform with event and value to inform HALS about
  custom events(external display, orientation change etc.,)
- remove actionsafe related functions.

CRs-Fixed: 341947
(cherry picked from commit ca1e7b9ee353bc4d2fdc2234d8860e84bbff74f1)

Change-Id: Icfe5f2f8ce56561c6959e206771b2850a3597e70

Conflicts:

	include/surfaceflinger/SurfaceComposerClient.h
	services/surfaceflinger/DisplayHardware/HWComposer.cpp
	services/surfaceflinger/DisplayHardware/HWComposer.h
	services/surfaceflinger/SurfaceFlinger.h
Framework: Lock screen weather (Part 2 of 2)

This commit adds the framework side support for displaying the
current weather forecast on the lock screen.

Special thanks to Devatwork for his help with the update code,
Blunden for his help with the weather images and the AOKP team
for the original Yahoo! Weather parsing code.

Patch set 2  - Whitespace cleanup
Patch set 3  - Default show location, timestamp and metric to on
Patch set 4  - Adds AOKP copyright to util classes
Patch set 5  - Fixes derp introduced by Ps4
Patch set 6  - Fixes (incl music control widget size)
Patch set 7  - Minor tweak to the music control widget size
Patch set 8  - Better 'error' message on startup
Patch set 9  - Even better start up message and Cid image
Patch set 10 - German translation

Change-Id: Ib12951f163d4fe04cbfa2e4ae9fc59058b71f47e

Conflicts:

	core/java/android/provider/Settings.java
	core/res/res/layout-sw600dp/keyguard_screen_tab_unlock.xml
	core/res/res/layout-sw600dp/keyguard_screen_tab_unlock_land.xml
	core/res/res/layout/keyguard_screen_tab_unlock.xml
	core/res/res/layout/keyguard_screen_tab_unlock_land.xml
	core/res/res/values-de/strings.xml
	core/res/res/values/strings.xml
	policy/src/com/android/internal/policy/impl/KeyguardStatusViewManager.java