tethering: updated ipv6 tethering

Add or Remove Upstream IPV6 interface asynchronously by listening
for change in Link Properties for IPV6 addresses.

Change-Id: I12c5dcea324755c850262a1bb84b1bb9ef835555
CRs-Fixed: 758975
Remove make file changes to create framework2

Face detection related changes were added as part of framework2
in kitkat. But in Android L framework2 is no more required, all
the code gets compiled into framework.jar so removing framework2
related make file changes.

Change-Id: I278acc501c04b02bd5abbc6203911f77c30ea243
Telephony: Add new api isMmsDataConnectivityPossible.

- Add a new telephony manager api to get possiblity of mms PDP.
- Its a preemptive API, if app is made aware of that MMS PDP is not possible
  then app can preempt the transaction. It would help in avoiding
  unnecessary PS ATTACH or DDS switches in msim devices.

Change-Id: I4d9dddd138baed4581ca0e01fe301f605c4d8602
Revert "base: Enhance Web URL pattern"

This reverts commit c40e516161bc273d8fbe1171db28550bc313737c

Change-Id: Ie4e10508564753e3e6f38661776e5ae1a0360f82
SystemUI: Fix data tile cannot control card2 data service issue

It should not just set default card data enabled or not.
The method hasIccCard() of TelephonyManager need slod id as parameter.

When click data tile, control all card data.
Use slot id instead of phone id.

CRs-Fixed: 750219

Change-Id: I43f621ace0e32ecfb685b438e32bd48477b475d0
IMS: start and stop dtmf tones

Support of start and stop dtmf tones in Imsphone

Change-Id: I986f6b8e9aa1a5729d280eb8a5c60e129c3796cd
CRs-Fixed: 751797
Add change to show Invalid card when erroneous card is inserted.

Add change to show "Invalid card" on UI on CARD_IO_ERROR when
erroneous SIM card is inserted

Change-Id: I94c52ff462c999cdb8dbe742fa0bd3f1019ce335
CRs-Fixed: 715101
NFC: Add interface for offhost to associate to secure element

Add an interface for payment application to specify secure element, so
multiple secure elements are supported through Tap&Pay menu

Change-Id: If1548e12ccf5b06f032f5725315ad726a88d9002
CRs-Fixed: 744072
Modify isRoaming to getRoaming from Service state tracker.

Modify isRoaming method to getRoaming from Service state tracker
instead of phone object.

CRs-Fixed: 739327

Change-Id: I4ca0f6df65f38a3a0d64fde647fb8506347414c1
IMS-VT: Peer capabilities support

Add support for querying peer capabilities

Change-Id: Ibfc0f2d4864cb743acc0b7f12aa8ef3e7f41c979
Propagate the call substate changed message to the UI

Change-Id: I2e2b0dd5722ab9d340d10044ad52ba8fee2effe2
CRs-Fixed: 749824
Ringtone: set default ringtone for triple slots

Set default ringtone for triple slots irrespective of how many sim
cards are actually activated. This awkward behavior is to avoid
ringtone missing when multi-sim settings are changed dynamically.

Change-Id: Id5178df89494fef02b13cc989813a9cacd436e9c
CRs-Fixed: 755560
MSIM: Retrieve the QS Data icon through PhoneId

While updating the quick settings data icon,
use Msim API to get the icon.

CRs-Fixed: 743707

Conflicts:
	packages/SystemUI/src/com/android/systemui/statusbar/policy/TelephonyIcons.java

Change-Id: I6d106e2d03c92eabb7be92f0cf1957489beca0fe
frameworks/base:InCallUI is not coming in but ring is coming in DSDA

Issue: Latch the DUT in W+G DSDA mode.Receive a MT call on DUT
       on sub2 and connect the call. Receive a MT call on DUT on
       sub1 but reject the call. Disconnect the call in sub 2.
       Make a MT call to DUT on SUB2.

Fix: The previous activity in finishing state is not added to
     waitingVisibleactivity list, when it is already true and next
     activity is not visible. Adding it to waitingVisibleActivity
     list enqueue the activity to be destroyed when IdleTimeout
     is scheduled.

Change-Id: I9941f61e4bd8c1df73b0328fc2b4231a068e8a70
IMS Call End Reason Info Code Additions

Adding IMS reason info codes for MO end
use cases:
1. Call rejected/ended due to low battery.
2. Call rejected due to blacklisted call
   ID.

Change-Id: I4e527a643f4a7ebf1ba26e90e4099a66cb5c0e43
CRs-Fixed: 552732
Add constants in voLteServiceState for IMS registration

These constants will be used in the notification of
volte service state when IMS registered/deregistered.

CRs-Fixed: 752266

Change-Id: If6ec8a58ff0270d11fdf95f69ca9da39fdb9a954
IMS-VT: Modification of data usage aidl

Change data usage aidl interface to take parameter type long
instead of int

CRs-Fixed: 747694

Change-Id: I7cda2a689edb86d025dfe8efc8f573918c4bd6bc
IMS Call Extras Feature

Call extras for MT calls are propagated
from IMS Service layer till the UI layer
using the 'setExtras' methods.

Change-Id: Ie7a40f5d818eb17ebafdac8c0616e6acf532e27a
CRs-Fixed: 724860
Creating connections for conference event package participants.

- Add "addExistingConnection" method to connection service which provides
a way for a connection service to notify telecom of a pre-existing
connection (connections are normally created through telecom).
- Modify TelephonyConferenceController to retrieve its state from a
multiparty connection in the conference (in the case of IMS calls, this
would be the ImsCall that manages the conference) instead of just taking
the first one.

Bug: 18057361
Change-Id: I26993aec54ecb0ce90ae6983fd3eed9d8d0a5773

Adding method to get disconnect cause from conference

Bug: 17842499
Change-Id: Ifb6e61d50d66aa8e8299e7024b2ab6d1d0f9d878

Add functions to update on conference changes.

+ Add onConferenceChanged() to Connection, so that the Connection can
make act on changes to the conference.
+ Add a utility function to PhoneCapabilities to remove a capability
from a PhoneCapabilities bitmask. Figure this abstracts some bit
logic away to make things more readable.

Bug: 17429707
Change-Id: I0c97731a95dd6573488cd10f094a63abe2428bce

Support disconnecting conference participants from conference.

- Added "onDisconnectConferenceParticipant" method used to inform a
connection acting as the conference host that one of the participants
should be disconnected.
- Added "VIRTUAL_CALL" PhoneCapability used to indicate that a call cannot
be the active or background call, but only be a child of another call.

Bug: 18228141
Bug: 18176606
Change-Id: I7aec631cc89c0f08e174b24ce3a9cb547b47e36b

Replace onConferenceChanged with onConnectionAdded.

This change is motivated by a desire to be able to adjust the
phone capabilities of a conference depending on its connections.

Turns out Connection is not a good place to do this, because when
the conference is set, this code is only fired if the connection
service already contains the conference. Conference makes more
sense to do this anyways, at the end of the day.

+ Add onConnectionAdded function to Conference.java.
- Remove onConferenceChanged function from Connection.java.

Bug: 18241753
Change-Id: Ib9212a8483a7a7b542618697399bbab8b2701b04

Change access to removeConnection so we can override it.

Bug: 18056632
Bug: 18240234
Change-Id: I4e82051a27f3565e9a854df8b27c35300cdbe2ad

Add functions to update on conference changes.

+ Add onConferenceChanged() to Connection, so that the Connection can
make act on changes to the conference.
+ Add a utility function to PhoneCapabilities to remove a capability
from a PhoneCapabilities bitmask. Figure this abstracts some bit
logic away to make things more readable.

Bug: 17429707
Change-Id: I0c97731a95dd6573488cd10f094a63abe2428bce

Add helper method for checking phone capabilities.

I'm figuring this can help standardize phone capability checks when
need to do all over the place.

Bug: 17429707
Change-Id: I97327fd08158de3c18d186b6092597a1d4abcf14

Conference event package performance improvement.

- Instead of sending each participant to the telephony conference
controller, all participants are sent at once.  This way the conference
only needs to be recalculated once.

Bug: 18057361
Change-Id: I86205fc7f1d2648bb180fc7eaf3ad611955952f9

Make add-call a global property of telecom. (1/4)

ADD_CALL didn't make sense as a property of Connection or Call.
This changes it to be a global property instead.

Bug: 18285352
Change-Id: I658e7a6977a848600272cde2914612c8691bb801

Add telephony.DisconnectCause for merged IMS call.

When merged, IMS calls are consolidated into one call. Thus they
"disconnect", even though the user can continue to comminucate
with the party on that call.

We want to recognize this scenario so we can control relevant
behaviors (ie.don't play the "end call" tone in this case).

Bug: 18291234
Change-Id: I93247f88ed74467470504bec88fcfb7ed714f0ff

Change Connections to allow setting conferenceable with conferences.

- Added IConferenceable interface used so that connections and conferences
can both be considered candidates as "conferenceable" with a connection.
- Fixed ConnectionService#conference to support cases where either call 1
or call 2 is a conference and the other is a connection.  Previously did
not support cases where call 2 is a conference.

Bug: 18200934
Change-Id: I32a8dd30a154d6280f2ae89fd147817235998465

Add GENERIC_CONFERENCE to phone capabilities.

This is a temporary capability to recognize CDMA conference calls
so we can show the right strings in the InCallUi. This should be
moved to CallProperties when possible. b/18434985

Bug: 18284408
Change-Id: Ia3e2ff91c8f8a91ff0123df4d3e6a581bdf85895

Propagating isMultiParty indicator from RIL up into Telephony layer.

- Adding isMultiParty() method to IImsCallSession AIDL.

Bug: 18058253
Change-Id: I1c44d3db0f7aa00a3ae6efb1231c5ddd39ab20ac

IMS call merge call-back changes.

Renaming callSessionMerged to callSessionMergeStarted.
Adding callSessionMergeComplete callback for when merge successfully
completes.

Bug: 18056632
Change-Id: I8fc73b6c9db5e7970de81d8c3e09abc80f1a262f

Communicating participant changes to conference controller.

- Add new ConferenceParticipant parcelable class which represents a
single participant contained in the conference event package.
- Adding callbacks/listeners to Connection to handle changes to
participant state.

Bug: 18057361
Change-Id: Iadfebe84959f30f8e835f282aa994c0b92768aa6

IMS: Add support for HD icon display related information

Added support to pass the restrict cause associated with the peer
in order to enable display of the HD icon when necessary.Added
support to pass local audio codec information and defined values
for new codecs not defined.

Change-Id: If05d46bdb3907a0ec7efdde48337a7932a7a5c21

Change-Id: Iadfebe84959f30f8e835f282aa994c0b92768aa6

Conflicts:
	telecomm/java/android/telecom/PhoneCapabilities.java
	telephony/java/android/telephony/DisconnectCause.java
telecomm: Re-add original ParcelableConnection constructor

 * We changed this for the supplementary service notification feature,
   but some proprietary code has a bunch of dependencies on it.
 * Just add the original constructor and set the new field to zero so
   that the proprietary IMS stack doesn't need changing too.

Change-Id: I838536eab39e1539b5e933ba8a963029a733f6b7