Add support to use Ims Service directly for service status update

1. Add listener for Ims Service in Phone Globals to get the
updates for service status changes.
2. While checking capability to add call when IMS is not enabled,
change add call capability as not allowed if IMS is phone type.

Change-Id: I36ccb3c83da6c3670665896e099d04a0f783d4d6
CRs-Fixed: 593286
Merge "Add support to use Ims Service directly for service status update"
IMS: Initiate emergency calls on IMS phone

PhoneUtils placeCall() is the end point to place dial
request. Check if IMS is enabled & if its emergency call,
use IMS phone.

Change-Id: Ic0a1dc396df7787bb80a2a65364b0c1f87bd7219
CRs-Fixed: 593894
Ims: Add ANSWERED_ELSEWHERE DisconnectCause

ANSWERED_ELSEWHERE DisconnectCause will be sent
when lower layers indicate that MT call is ended
due to a release from the network because the
call was answered elsewhere.

Change-Id: Ibd2f41db3a263c031d94f27df0a65dee29b4819c
CRs-Fixed: 593987
Merge "IMS: Initiate emergency calls on IMS phone"
Merge "Ims: Add ANSWERED_ELSEWHERE DisconnectCause" into kk_3.5
MSIM: Do not allow voice call on other sub

In non-DSDA msim configurations such as DSDS and TSTS, if there is a
voice call in progress, don't allow voice call to be dialled on any other
subscription.
CRs-Fixed: 596728

Change-Id: I9b034011cea6f1fff18cabc17744cf15fe34ac33
IMS: Handle cdma conference call scenario

Multiparty call is detected differently
in case of gsm, cdma & ims.
Use common method to check whether its multiparty/
conference call.

Change-Id: Ic132cecfc040d0030a651fbf195edbb8ee092f18
CRs-Fixed: 605278
Phone: Network settings will force close after
setting language as Chinese

The string array index of preferred network mode value
is out of bound for chinese language.

Change-Id: Iddd240a11896448df27be7e6f5b89a4861c6d02d
CRs-Fixed: 500227
Display Conference call Failure to the user

When CallModeler receives SUPP_SERVICE_FAILED event
after RIL reports failure for any of the supplementary
service,User will be informed with a Error Dialog Message.
Currently,there is no indication presented to user when a
supplementary service operations fails.

Change-Id: Ica4a7b4f8e4b0651f9833294f411fdb1095bd77b
CRs-Fixed: 610064
MSIM (DSDA): Fix distorted tone issue when call waits on other sub.

We should play TONE_LOCAL_CW when there is an active call and new incoming
call comes at other sub.

Should play TONE_CALL_WAITING when there is an active call and new incoming
call comes at same sub.

Add code to play these tones correctly in the above cases.

Change-Id: Icf2549be2080c936eaf9e7a4059508c314352a4f
CRs-Fixed: 592512
Merge "Display Conference call Failure to the user"
Voice Privacy Icon Support for CDMA

CallNotifier does not update the UI directly for Voice
Privacy Information for CDMA. Hence,VP icon
is not shown on the UI.
With this Fix Voice Privacy will be part of call capability
information. IncallUI will update the VP information
whenever CallNotifier is notified of VoicePrivacy change
by triggering PhoneStateChange.

Change-Id: Ia0966f3546e83b8160c363688ce23368e35435ca
CRs-Fixed: 599389
Merge "IMS: Handle cdma conference call scenario"
Merge "MSIM (DSDA): Fix distorted tone issue when call waits on other sub."
Merge "Voice Privacy Icon Support for CDMA"
Merge "Phone: Network settings will force close after setting language as Chinese"
Ims: Do not process Disconnect indication for SRVCC case

If the call is SRVCC call, do not process Disconnect
indication for SRVCC to happen seamlessly. Bypassing
this disconnect indication will now allow us:

1. not to stop the ringtone/wating tone if SRVCC is performed
on Ringing/Waiting call
2. not to log call in call history
3. not to play disconnect tone

Change-Id: I2b8ece2633050b5d8a172ecdf0baa7edf8347ddd
CRs-Fixed: 610144
Merge "MSIM: Do not allow voice call on other sub"
Merge "Ims: Do not process Disconnect indication for SRVCC case"