Refactor ConnectionService API so it has only one "completed"
callback, and connection state and failure codes indicates what
happened. Previous design where we had separate callbacks for failure,
cancellation and success was error prone because it was easy to forget
to implement one of them.
Bug: 16993846
Bug: 17070939
Change-Id: I84bf5d041cf78193ccf80db201b08db3b7014830
Clean up conference call APIs to use a distinct type separate from
Connection. Also allow the addition of Conference calls at any point
using addConference() API method.
Bug:16844332
Bug:16449372
Change-Id: I34e45fde1aa43559f5f4e29b990929c188b16875
Also cleans up incidental issues including:
* Remote connection service disconnects from the service it
represents if it is not currently handling any connections;
hope to avert excessive service pinning in the future.
* Fix destroyed connection handling.
Bug: 16828152
Change-Id: Id4555f91ddac5e9c1a12ce00bfd1ee0d6d2cb1d9
Get rid of CreateConnectionResponse and have the ConnectionService
return the built connection instead.
Change-Id: Ibbf896e5b188b98eb386d6624d3a5d5cacf49922
Telecomm was not sending the initial state for new connections forcing
the connection services to postpone when they set data on the connection
which resulted in hacky code. This CL makes use of a
ParcelableConnection to send the intial connection data.
Change-Id: If571414aba19fa1bb282e30632431962b8366cf4
This CL adds a new public API to allow Connections
to start an activity on top of the in-call UI.
The Connection passes a PendingIntent to Telecomm which
then forwards it on to InCallUI. The Connection can cancel
the operation by calling PendingIntent.cancel().
This allows services like SIP and Hangouts to show dialogs
to the user when making a call.
Change-Id: I65119a89c925a93467d1b27304ffec9b088b172f
Currently call backs from RemoteConnection can happen
on non-main threads. This CL updates the code to always
use the main thread.
Change-Id: I134c0fbdba1f916f49676c0c6696ac63bcb7c513
This CL allows a incoming call to be handled through the
remote connection API.
All calls, incoming and outgoing, are now routed through
ConnectionService.createConnection.
Change-Id: I5232d062ad3b559f4fe7c8224e7234b2c6bf8431
The CL contains the following Telecomm API changes:
- move CallFeatures into CallCapabilities
- add Connection.setHandle(URI, CallPropertyPresentation)
- add Connection.setCallerDisplayName(String,
CallPropertyPresentation)
- add Connection.swapWithBackground: this is used to swap a
CDMA call with its background call
- add StatusHints.getExtras: this is used to display
additional status info such as long distance rates
This CL also includes InCallServcie, and RemoteConnection
plumbing for the above.
Change-Id: Iaffe0b84cea6003f2a9b9d8b30676743d2b236d4
This CL allows a connection to specify a status hint. The hint
contains a label and icon that can be displayed in the InCallUI.
For example, wifi calling can set a wifi icon and ssid.
Change-Id: I125628b74784d2303b9a429038a9f7ee604f241e
Various clean ups and fixes:
- allow remote connection to have audio set
- allow remote connection to have abort
- move onPostDialWait from ConnectionService to Connection
- hide APIs we don't need
Change-Id: Ib2d0b40f2e9e7a6b5fbf5d6db48b509b7db3c906