496 Commits

Author SHA1 Message Date
Tyler Gunn
f38be7b2b0 Add support for specifying looper on VideoProviders.
Added constructor for VideoProviders to allow creating instances where
the Looper is specified.  This is required for creating
VideoProviderProxy instances within Telecom.

Bug: 20232310
Change-Id: Ieb31e499caca9d65ff4b52c287e030c0ceeeb6ee
2015-05-22 15:43:28 -07:00
Yorke Lee
5c85067177 DO NOT MERGE Make Conferenceable an abstract class
Bug: 21066017
Change-Id: Ibcbccfc7b1380e417b464aed9b968cbc0a6a1cc2
2015-05-14 15:56:07 -07:00
Yorke Lee
56acbc4100 DO NOT MERGE Fixes for APi review
Move CameraCapabilities into VideoProfile
Make PhoneAccount and PhoneAccountHandle final

Bug: 21040387
Bug: 21066505
Change-Id: I72453c89ae3765f9b9cf263938fce96d5978d2e0
2015-05-14 12:31:19 -07:00
Yorke Lee
6d3a7575e1 DO NOT MERGE More video related API fixes
android.telecom.Connection.VideoProvider
* onSetPauseImage takes Uri instead of String
* changeCallDataUsage -> setCallDataUsage
* add quality constants to changeVideoQuality() docs

android.telecom.InCallService.VideoCall
* setPauseImage takes Uri instea dof String

android.telecom.VideoProfile.VideoState
* Move constants to VideoProfile, prefix with STATE_

Bug: 21040387
Bug: 21066505
Change-Id: I764e72aced9d1e2d30d6d0cf0862100860d47c79
2015-05-14 11:57:30 -07:00
Yorke Lee
0910526fe4 DO NOT MERGE Rename AudioState to CallAudioState
Deprecate AudioState class and make methods @SystemApi where
necessary to minimize impact to SystemApi
Replace usages of AudioState inside Telecom sub-systems
Fire both onCallAudioStateChanged and onAudioStateChanged callbacks
for backward compatibility
Support both setAudioState and setCallAudioState for all classes

Bug: 21040387
Bug: 21088300
Change-Id: I3ec7b3afdaa344c6d639d1c421f1842d67f7d0f7
2015-05-14 11:07:40 -07:00
Yorke Lee
b6ea500ef5 DO NOT MERGE Add BIND_TELECOM_CONNECTION_SERVICE permission
Bug: 21088342
Change-Id: I465307899d83c4a3ee5e88a28554c4b867c1f4ba
2015-05-14 10:18:52 -07:00
Tyler Gunn
2b5b660203 DO NOT MERGE Un-@hiding some missed VT APIs.
Bug: 20947116
Change-Id: Idda9b7c7debafbea8c42eaadb75c3375b2c8ddb2
2015-05-08 14:55:22 -07:00
Santos Cordon
39465f9d8a DO NOT MERGE Remove CallState and rename PRE_DIAL_WAIT
Bug: 20532827
Bug: 20532435
Change-Id: I5f0308c5cf4e4a9cf9020b4fe7fa5f3f8dee6e67
2015-05-08 12:07:02 -07:00
Andrew Lee
73a8912a4d DO NOT MERGE Add handler parameter for callbacks.
Bug: 20160491
Change-Id: I94639b06b8c97b6585e169d667a67ce328e716af
2015-05-07 13:39:45 -07:00
Andrew Lee
113bd7d209 DO NOT MERGE Add Properties to Call.Details.
Moved some capabilities to properties which seemed appropriate.

Bug: 20160395
Change-Id: Iacef4365822e5c3e50f0c41a501bf295c22055f1
2015-05-01 13:45:03 -07:00
Tyler Gunn
f18217248d Change sendSessionModifyRequest VideoProvider API signature.
Including a fromProfile in addition to the requestedProfile.

- Changed VideoCallImpl to generate the fromVideoProfile based on the
call's current videoState.  This ensures the InCall UI only needs to
pass in the new video profile; the VideoCall Impl already has enough
knowledge to generate the fromProfile.
  - Changed VideoCallImpl to track the current videoQuality, which forms
a part of the fromVideoProfile.

Bug: 20704229
Change-Id: I89f293f03a2b13fc8c1dcfd8a07ab8640d3950e0
2015-05-01 09:46:44 -07:00
Anthony Lee
17455a3d39 Add plumbing for merge failures and renable button. (3/4)
The merge failure is not plumbed up through any layer that
can trap the callback and act on it.  The first part of this
fix is to create that plumbing.  Then we need to reenable the
merge button. At this point in time, we leverage the fact
that forcing the call to reassess its capabilities will poke
the InCallUI to reenable the merge button. In the future, we
should plumb the merge failure all the way to InCallUI and
not only handle the button but display UI to the user. The UI
is currently being displayed by CallNotifier which is the wrong
place. See b/20530631 for more details.

Bug: 20229905
Change-Id: I0355ada46b484c6db4bee656c77386dd61be5e1f
2015-04-28 07:13:34 -07:00
Tyler Gunn
d7017c42be Fixing issue where conference calls enable speaker phone.
- The issue was due to a mis-merge in ParcelableConference.  The write
of the status hints happens at the end of the writeToParcel method.

Bug: 20503132
Change-Id: I40ef9b267b48876006e4cbe29e5ae09ba77bcb33
2015-04-27 13:13:32 -07:00
Tyler Gunn
bde0b1e4c8 Add videoStateToString on videoProvider Class.
- Got tired of looking at numerical integer videoStates, so added a new
"videoStateToString" static method, similar to how we have a
Connection#capabilitiesToString method.

Bug: 20257400
Change-Id: I39fcf413938c90e5993985f0976ad4fcce11505d
2015-04-24 23:47:37 +00:00
Yorke Lee
170102d631 DO NOT MERGE Make CAPABILITY_CAN_PAUSE_VIDEO public
Change-Id: If20f642a3d6bda886a68bb1e0ce459c38361a73c
2015-04-21 15:05:37 -07:00
Yorke Lee
c539080a93 DO NOT MERGE Make CAPABILITY_VIDEO_CALLING public
Change was previously made in master

Change-Id: Ica37a2060dca35ed6c734852a12b8f9ab27cd8aa
2015-04-21 15:03:29 -07:00
Santos Cordon
cffc3605ce DO NOT MERGE Unfinal getPhone.
The change to make it final was breaking existing apps.

...and other changes.

Bug: 20283873
Change-Id: I8db4243850ad15f688dbca59ff5427b4799cbd1b
2015-04-16 17:27:45 -07:00
Andrew Lee
8eb87f0da8 DO NOT MERGE Rename Call*Listener to Call*Callback.
Deprecate the existing Listener methods and interfaces so that they
can be replaced.

Bug: 20160491
Change-Id: I11c104c625b03751f3792fc4367883c18c6e2d54
2015-04-16 17:11:35 -07:00
Santos Cordon
7e24657d07 DO NOT MERGE Move Phone.java APIs into InCallService
This change is one step in the right direction of getting rid of
Phone.java.

Phone.java was deemed superfluous and this change moves the methods
previously exposed in Phone.java into InCallService.  This was done by
having InCallService listen to Phone and pipe the calls as appropriate.
However, state still lives in Phone and we eventually want to move that
code into InCallService.  That will be done in a later CL.

Bug: 20160495
Change-Id: Id142431c253c1f24f260da42e8bedd1eb2ce448b
2015-04-16 16:50:17 -07:00
Jay Shrauner
6f20a6a2b4 DO NOT MERGE Remove connection substate
Bug:20300433
Change-Id: Ifefc08b5165de3e0b6ce92007e5f612879dcc4d9
2015-04-16 15:05:05 -07:00
Andrew Lee
3e3e2f2b9c Fix missing comma.
Change-Id: Ied739e7f1b6d548237821db553f27994b0ee92af
2015-04-16 13:49:30 -07:00
Andrew Lee
0f51da328d resolve merge conflicts of edc625f to m-wireless-dev.
Change-Id: Ibbcd764505ccc38f9f61c96993d979a099f1cc6b
2015-04-16 13:11:55 -07:00
Yorke Lee
167c3a717f DO NOT MERGE Change hasVoicemailNumber to getVoicemailNumber
Bug: 20223485
Change-Id: I293572bb6c32c5084fe684e7cfe7bd2bbfb5443b
2015-04-16 12:40:23 -07:00
Tyler Gunn
04b18ec153 Merge "Fix incorrect Conference time for IMS conference calls." into m-wireless-dev 2015-04-16 16:38:23 +00:00
Tyler Gunn
75958420f2 Support for multiple VideoCall.Listeners for a VideoCall.
The current code assumes that only a single instance of VideoCall will be
provided to the default system InCall UI.  Ideally multiple
InCallService implementations should be able to use the VideoCall APIs.
Note: it only really makes sense for a single InCallService to get/set
the video surfaces.

- Fixed bug in ParcelableCall which would cause a new instance of
VideoCallImpl to be created every time a call is updated from Telecom.
Added a flag to ParcelableCall to indicate whether the parcel includes a
change to the video provider information, which is used when unparceling
to determine whether to set/create the video call impl.
- Renamed "setVideoCallback" to "addVideocallback".
- Modified Connection.VideoProvider code to keep a list of Video callbacks
and fire off all of them when Video Provider changes occur.

Bug: 20092420
Change-Id: Ic16b6afe1b7532cc64d006c133adbae57946d97d
2015-04-16 16:37:25 +00:00
Tyler Gunn
bd1f9ece87 Fix incorrect Conference time for IMS conference calls.
Looks like the connectTimeMillis parameter to ParcelableConference
got removed when partner CLs were merged in.  Adding it back fixes
the problem.

Bug: 20159830
Change-Id: Ibe067f64f8faea6fd1eb157e5073bc702978c511
2015-04-16 08:38:10 -07:00
Jay Shrauner
e14bbcc0e2 DO NOT MERGE Hide getUserSelectedOutgoingPhoneAccount
Bug:20224972
Change-Id: I21528788e38817f77fc68b56e26a33ac726d39e2
2015-04-15 20:49:15 -07:00
Jay Shrauner
1cf9b6bec1 DO NOT MERGE Make Telecom/InCallUI APIs public
Bug:20260870
Change-Id: Ie3a2db0685664f2f1ceea8f40b1249d01e9385b8
2015-04-15 14:42:24 -07:00
Yorke Lee
383932ad8e DO NOT MERGE Make defaultOutgoingPhoneAccount public
Bug: 20224972
Change-Id: Ided1aab01d5014bd608d0d139975f933f64341c5
2015-04-15 14:24:36 -07:00
Andrew Lee
18ac20ef9c Merge "DO NOT MERGE Suffix VT_LOCAL/REMOTE with BIDIRECTIONAL." into m-wireless-dev 2015-04-15 20:54:02 +00:00
Jay Shrauner
870edddcbe DO NOT MERGE Hide Voicemail APIs
Bug:20162722
Change-Id: Ie405b077a9598f16ff19adfa09df3217f342cc1e
2015-04-15 13:17:11 -07:00
Andrew Lee
e268f4c28e DO NOT MERGE Suffix VT_LOCAL/REMOTE with BIDIRECTIONAL.
Bug: 20160395
Change-Id: Ib343fde5088f3a5823c73de6ab77564b4be0d12c
2015-04-15 13:08:21 -07:00
Jay Shrauner
193de667ed DO NOT MERGE Remove deprecated telecom APIs. Mark others final.
Bug:
Change-Id: I8a04903052a964f3997b5bb36730b8b200c8e472
2015-04-15 11:05:50 -07:00
Andrew Lee
edc625f52e Add StatusHints to Conference object.
+ Consolidated ParcelableConference constructors; only one is used.

Bug: 20181703
Change-Id: Iad49f10404e1c1eedc4ef68525bde0f10a8dfc97
2015-04-15 11:05:19 -07:00
Yorke Lee
de93575d86 Merge "DO NOT MERGE Changes for TelecomManager API review" into m-wireless-dev 2015-04-15 01:41:10 +00:00
Jay Shrauner
1b057f559e DO NOT MERGE Add constructor without zoom
Add constructor without zoom params. Reorder params in constructor
with zoom to move zoom params to the end of the param list (API
guidelines). Reorder code to match param ordering. Tag all zoom related
methods with @hide.

Bug:20160534
Change-Id: Ic2149af82a5450666c49b8757daf6950bcb68977
2015-04-14 17:34:43 -07:00
Yorke Lee
0bce89050a DO NOT MERGE Changes for TelecomManager API review
* clearAccounts -> clearPhoneAccounts
* handleMMi(PhoneAccountHandle, String) -> handleMMi(String, PhoneAccountHandle)
* hasMultipleCallCapableAccounts -> removed
Bug: 20160799

Change-Id: Ifcd26474f04b71aa725299b6016004151b76bc31
2015-04-14 17:12:04 -07:00
Yorke Lee
2287a01bb9 DO NOT MERGE Remove proximity methods in TelecomManager
Bug: 20160495
Change-Id: Ib0156cf170d16b48f97e08027c912fc3f45691fb
2015-04-14 16:04:22 -07:00
Tyler Gunn
b5e0cfb24e Cleanup of Video Call pause functionality.
Whether the paused videoState is available is dependent on the carrier's
implementation of the VT spec. The original VT implementation assumed
that this was stored in a system property accessed via InCall; these CLs
move this to a Call/Connection capability which will ultimately support
multisim video capable devices.

- Added new connection/call capabilities.

Bug: 16680364
Bug: 19820114
Change-Id: I3840f92270100811161120dffcfe297bef7c4ea2
2015-04-07 16:10:51 -07:00
Rekha Kumar
07366813cd IMS-VT: Upgrade/Downgrade change
-Add isVideo API to VideoProfile.VideoState

IMS-VT: Fix propagation of device orientation.
Orientation received at VT Service is incorrect.
Fixed propagation of device orientation to VT service.

IMS-VT: Upgrade fix
-Add session modify call timed out constant

Notify listeners of video quality changed event
- Propagate the video quality changed message to the UI.

IMS: Add support for video quality
- Add Config interface to get/set video quality

IMS-VT: Multitasking feature
-Support for video multitasking

IMS-VT: Modification of data usage aidl
Change data usage aidl interface to take parameter type long
instead of int

Change-Id: I7cda2a689edb86d025dfe8efc8f573918c4bd6bc

Propagate the call substate changed message to the UI

IMS-VT: Add call modifiable capability

PhoneCapababilities call type modifiable constant added

IMS-VT: Add a bit mask CALL_SUBSTATE_ALL with all call substate bits set

IMS-VT: Enable Video conferencing.

Enable Video conferencing.

Change-Id: I4240aa6f32c75d6eea8a41da3c87bca651f0901b

IMS-VT: Add hide for setVideoProvider API
Observed compilation error for SDK generation due to setVideoProvider
API. Marking setVideoProvider as hide inorder to resolve the
compilation error.

IMS-VT: Add persist.radio.ims.audio.output for VT calls
-- Add persist.radio.ims.audio.output to set the default speaker
   for VT calls.
-- Add required constants

IMS-VT: Add additional error codes for upgrade downgrade
-Add support to send additional error codes to UI during
 upgrade downgrade.

Change-Id: Id452d225098fe3bccdcd37d242985c5c761144c1
2015-04-01 21:40:45 +00:00
Tyler Gunn
d11a31561e resolve merge conflicts of bcb17eb to m-wireless-dev.
Change-Id: Ic8211fb14caec993c8e38c790006577493f7a607
2015-03-18 13:09:14 -07:00
Dong Zhou
bcb17eb7a9 am 89f41eb3: Define the capability to speed up MT call audio
* commit '89f41eb39e910e220957ac861651ead17eff9085':
  Define the capability to speed up MT call audio
2015-03-17 22:21:21 +00:00
Dong Zhou
89f41eb39e Define the capability to speed up MT call audio
Bug: 19656525
Change-Id: I0bc88e85b807871b2883a785efac91bd0e1f6d8d
2015-03-17 22:16:52 +00:00
Tyler Gunn
068085b35d Fix emergency callback number not shown for incoming calls.
- Adding new Connection/Call capability: CAPABILITY_SHOW_CALLBACK_NUMBER.
- Used in Telephony to indicate on an incoming call that the callback
number should be shown.

Bug: 18689292
Change-Id: I1ab3baf9f0d5a22c4b01e6504e88d496182e01c7
2015-03-11 20:16:19 +00:00
Andrew Lee
74050f58d5 Merge "Indicate local and remote RX/TX capabilities for VT." into m-wireless-dev 2015-03-11 18:32:32 +00:00
Nancy Chen
8b97ee3c48 Helper methods for voicemail status provider.
Added method to make it easier to insert into the voicemail status
table. Also takes in a phone account for future multi-SIM support.

Remove VvmSyncService class in favor of moving most of the code to
OmtpVvmSyncService.

Bug: 19236241
Change-Id: I5d9def276fbdbc6f825fb35e9fa31bfc3cead1ba
2015-03-11 08:45:00 -07:00
Andrew Lee
5e9e8bb30e Indicate local and remote RX/TX capabilities for VT.
This provides more granular API support for representing the mix of
state and capabilities of local and remote video clients. For our
implementation, we are primarily concerned with bidirectional video
calling. But, this provides support for representing certain error
scenarios, and flexibility for other parties which may desire to
implement one-way video calling.

Change-Id: I0373ffd377c3547fa8dd98ab5fde4f8d616a1d2f
2015-03-10 15:41:52 -07:00
Santos Cordon
2d2bc16f2d Hide calllog entries for unregistered phone accounts
Cherry-picked from master

Change-Id: If1f873dd41c973442fa7a24020e56d13b7b5ad2c
2015-03-05 15:18:40 -08:00
Nancy Chen
7c07dfa552 Add frameworks classes and methods necessary for VVM syncadapter structure.
+ VvmSyncService is the base class for all visual voicemail sync
services that run the visual voicemail sync adapter. This class handles
writing to the voicemail provider and receiving changes from the
voicemail provider.
+ AuthenticatorService is a stub class for visual voicemail sync
adapters that do not use an Account (all sync adapters must have an
account associated with them, so a stub account is necessary).
+ Voicemail parcelable object to pass voicemail data around easier. This
is mostly copied from VoicemailProviderDemo
+ Extra helper methods in VoicemailContract to help insert and delete
from the voicemail provider.
+ Add multi-sim fields to VoicemailContract.Voicemails

Bug: 19236241
Change-Id: I603e3e5908704cd043e46221680d8bb600ed2cf4
2015-03-02 20:43:58 +00:00
Santos Cordon
b7bb8c4207 Small update to PhoneAccountHandle ID javadoc.
Change-Id: I31832347689e1e9291cd6b9c100918668fa4b056
2015-03-02 20:18:54 +00:00