History log of /packages/services/Telephony/src/com/android/phone/CallModeler.java
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
2500858c8fcb6d59ed128a9e14f5da6e5c958ee8 12-Nov-2013 Santos Cordon <santoscordon@google.com> Remove orphaned Calls as part of doUpdate().

When a connection is no longer valid in telephony (for whatever reason),
we do not clear it from our list of Calls. This results in the UI
becoming non-dismissable.

We do not expect this condition but have seen cases where connection
objects become orphaned (like when device switches technologies
GSM->CDMA and back). See bug for more information.

Could not repro this case. Did testing by simulating orphaned
connection objects and making sure the UI goes away.

bug:11580121
Change-Id: Iaa4264713bbab29545dff4b85d74d0879366b751
/packages/services/Telephony/src/com/android/phone/CallModeler.java
24a92b386edca670e14860b31f2a29d192d7d3c9 27-Sep-2013 Santos Cordon <santoscordon@google.com> Update wake state with phone state changes.

After we got rid of InCallScreen, our wake states were no longer getting
updated. This adds it back.

bug:10947724
Change-Id: Ifd11bbf4b951db1205ad919a14c31b5214ddac9e
/packages/services/Telephony/src/com/android/phone/CallModeler.java
6af50e6b52ab548a5d0933f67e1260d735b402a5 27-Sep-2013 Christine Chen <christinech@google.com> Call clearDisconnected in onDisconnect

Bug: 10945081
Change-Id: Id3c55d2caa0de4e0cd1a2234f6d48b4a9ec0347a
/packages/services/Telephony/src/com/android/phone/CallModeler.java
df19e4543c4d2c2b8be5cc8ce9543531f364a717 26-Sep-2013 Christine Chen <christinech@google.com> Do not create new call for disconnecting calls

Bug: 10900670
Change-Id: I915d11e4d19c25b840b91ba265caeff8c336a026
/packages/services/Telephony/src/com/android/phone/CallModeler.java
3527207a1093fd9faf1674404ae9a08be196fbbc 25-Sep-2013 David Braun <dabraun@google.com> Update Reject with Text Message path to only use default sms app.

In KLP we have added the concept of a default SMS app to the platform. Only
this application has write permission to the SMS database. To help ensure
a better user experience we will always direct "reject via SMS" to the one
app that the user has selected as their default SMS app.

Bug: 10870624 System should direct "SENDTO" intent with "sms" and "mms" schemes to the default SMS app
Bug: 10818880 Telephony needs to direct RESPOND_VIA_MESSAGE intent only to the default SMS app
Change-Id: Id56b92285fb701db4432231950714ad2845bae60
/packages/services/Telephony/src/com/android/phone/CallModeler.java
54fdb5954e76522b6961b8fd607c2c8bc474d075 19-Sep-2013 Santos Cordon <santoscordon@google.com> Fix bad cast exception.

Casting to Connection object, but the value is actually a Phone.
Change code to pass the asyncresult through to the phonestatechange
method of CallModeler as that makes more sense.

Change-Id: I59c8623e07ccc213ab8c4dd4507e8b2da33ead17
/packages/services/Telephony/src/com/android/phone/CallModeler.java
ce02f3a2f1bb13c7d0c4db523e6b4408ce2a8446 19-Sep-2013 Santos Cordon <santoscordon@google.com> Adding redialing support in CDMA

Add new REDIALING state when CallNotifier identifies the current call
as a redial attempt.

bug:10824223
Change-Id: I906a3add0bc7b9d6309434fc9e19bf12d5ccb748
/packages/services/Telephony/src/com/android/phone/CallModeler.java
5d8351358e27e822dde683a2ccb6b31d72de3b8e 19-Sep-2013 Yorke Lee <yorkelee@google.com> Merge "Play local DTMF tones for post-dial actions" into klp-dev
3e0f0414daa2266dc51b77198fe433797f7d610a 19-Sep-2013 Christine Chen <christinech@google.com> Adds support for DISCONNECTING state

Bug: 10808537
Change-Id: I012c05baa04c4d5fa6691e2f89d724dad57373c7
/packages/services/Telephony/src/com/android/phone/CallModeler.java
de41f67985e48d9cc17d48a9299648966b9bc7e5 19-Sep-2013 Yorke Lee <yorkelee@google.com> Play local DTMF tones for post-dial actions

Bug: 10695960
Change-Id: I9d039f8a1a27c7f9371eea1a76f175ca9df3249f
/packages/services/Telephony/src/com/android/phone/CallModeler.java
6528187950c2e9a12331bef4321bd8f61b047b73 18-Sep-2013 Christine Chen <christinech@google.com> Merge "Checks voicemail setting before notifying InCallUi" into klp-dev
91db67da326faa267df40550060a915abdba3eb1 18-Sep-2013 Christine Chen <christinech@google.com> Moves several TODO(klp) to TODO

Bug: 10605959
Change-Id: Ib7fec83a4bc59b1bd0b200af9ab63a298dd2b211
/packages/services/Telephony/src/com/android/phone/CallModeler.java
e35ac71a3c43ec0bbe4e28a9e2533268a8b9a94e 18-Sep-2013 Christine Chen <christinech@google.com> Remove TODOs that have already been addressed.

- Remove bluetooth TODOs as most of them have been fixed by AudioRouter

Bug: 10605959
Change-Id: I2fbc6abf66fa4a3624b831a4320a08adb0b6971b
/packages/services/Telephony/src/com/android/phone/CallModeler.java
94853bc62179c70dfb1f71151225cbb4e76a0b50 18-Sep-2013 Christine Chen <christinech@google.com> Set canHold to false for CDMA phones

Bug: 10803088
Change-Id: I16516bf33f78fd8ae189931f348b5150ce99f62c
/packages/services/Telephony/src/com/android/phone/CallModeler.java
fb0cc2b8751bc3e680dcb0ad7d346b3c0cc4ef23 16-Sep-2013 Christine Chen <christinech@google.com> Checks voicemail setting before notifying InCallUi

- Changes the CallerInfoAsyncQuery cookie to the Connection instead of
the CallNotifier instance.

Bug: 10458113
Change-Id: I78043851a6fb1b1ccaceb431164b55eabab63f40
/packages/services/Telephony/src/com/android/phone/CallModeler.java
ad1ed6d23c4a999a41bb73b8243009e32f96d7df 16-Sep-2013 Santos Cordon <santoscordon@google.com> Cdma Outgoing 3way call support.

Cdma outgoing calls when a call already exists are special because
like normal cdma calls there is no "dialing" state. There is also
no indication that the caller answered the phone so we have to make
guesses as to the state of the world.

This changes leverages code that already established these assumptions
can have those places call directly into CallModeler so that it can
translate those assumptions into Call objects that the UI can
understand.

Changes:
- Add concept of a generic conference call to be used for cdma
conference calls which are very limited in nature.
- Notify CallModeler when we see an outgoing 3way call so that it
can fake it as a "dialing" call until we are notified that it
has "connected". This gives used the impression of a dialing state
on cdma devices which do not have this state.
- fix CallModeler.getFullList() which previously changes model state.

bug:10769004
Change-Id: Iec5fb47fdcd1574c86120ec0fbb38911d54c7b0e
/packages/services/Telephony/src/com/android/phone/CallModeler.java
a5d5db8bae082681b9d76bc3f0f7cd16e47908ab 15-Sep-2013 Santos Cordon <santoscordon@google.com> Cdma call waiting

There are special notifications received for call waiting on CDMA
phones. These special notifications are handled by CallNotifier
which has special logic to handle the fact that CDMA devices do not
give us an indication of success/failure on operations to the CDMA call
waiting calls.

This fix adds functions to CallModeler that are called directly from
CallNotifier. These functions translate the events into Call objects
that it can send to the UI layer.

bug:10769004
Change-Id: Ic208ddb879c7ec76212914914b8750b55a578ac0
/packages/services/Telephony/src/com/android/phone/CallModeler.java
69050202ab926539f7b1d3f7efd9f688d5fbf8d3 15-Sep-2013 Christine Chen <christinech@google.com> Fixes Conference call map null pointer exception

Bug: 10708375
Change-Id: Iaa95ec152f7cf6275d281feea47b3cea28cd9da1
/packages/services/Telephony/src/com/android/phone/CallModeler.java
bef8881a28cc796ba87379fbc5d279620a7e5d84 14-Sep-2013 Yorke Lee <yorkelee@google.com> Merge "Fix parent call not being identified as a conference call" into klp-dev
af2fd0ad9669ce110dfcf13bb7bf996e8a387a91 14-Sep-2013 Christine Chen <christinech@google.com> Adds more phone states and rules on changing them.

Bug: 10733320
Change-Id: I8176b99777a00b88135e2c954fc5e576bc657ade
/packages/services/Telephony/src/com/android/phone/CallModeler.java
cd3f9694e07d407024d8f0a0d2cb514872c265de 14-Sep-2013 Yorke Lee <yorkelee@google.com> Fix parent call not being identified as a conference call

This was causing the UI to think there were no more active calls

Bug: 10746425
Change-Id: I98a4b0818df940565d508c8e3b5d06e09e329dcd
/packages/services/Telephony/src/com/android/phone/CallModeler.java
12a03aa7bf49224d531f7469cdcd019e1b0f155e 13-Sep-2013 Santos Cordon <santoscordon@google.com> Update TeleService callback and reduce update frequency.

1. Changed name of the initial callback on the binder interface.
2. Made it so that we dont issue updates for Incoming and Disconnected
calls. Incoming calls dont change until their state changes and
disconnected calls dont change at all. What was happening is that the
redundant calls to onUpdate were executing before onDisconnect and
onIncoming effectively changing the state of the call before the
functions that were meant to change them to those states.
Additionally, with disconnected calls, we start tearing down the system
once the last call ends, which would happen twice: one with onUpdate and
once with onDisconnect. This caused additional binder activity after we
already started tearing things down.

bug:10682538
Change-Id: I47161c12429455f5f4fbca9113e6b06438028eb1
/packages/services/Telephony/src/com/android/phone/CallModeler.java
8d1de3499e10b571b64ba76a1e05086a93131400 12-Sep-2013 Santos Cordon <santoscordon@google.com> Merge "Do not create incoming/disconnected calls on update." into klp-dev
55d3006ee12a004b3293b29c731854c3656904ca 07-Sep-2013 Chiao Cheng <chiaocheng@google.com> Merge "Porting DTMF post dial wait feature." into klp-dev
3f015c9e837c4e7a2b710d32f16e81eb684dda74 07-Sep-2013 Chiao Cheng <chiaocheng@google.com> Porting DTMF post dial wait feature.

Bug: 10459289
Change-Id: Ib279fcdf71857abae218b70081f7da569901d80c
/packages/services/Telephony/src/com/android/phone/CallModeler.java
4527702619ef22da25dae00173675a4468a1314c 05-Sep-2013 Christine Chen <christinech@google.com> Adds separate conference call function.

- Also fixes bug on update conference call.

Bug: 10334739
Change-Id: I4f59c3cf12911b175173e76a1551eb0e3999ba3f
/packages/services/Telephony/src/com/android/phone/CallModeler.java
71d5c6e4d0036e30eaa6a23faf0c246934ef8e6b 06-Sep-2013 Santos Cordon <santoscordon@google.com> Do not create incoming/disconnected calls on update.

This change fixes two things:
1. onIncoming will always get called for incoming calls, but sometimes
so does onUpdate. This caused too many updates since we ALWAYS send the
onIncoming (we need to). The solution is to not create incoming calls
on an update any more. After this change, onUpdate will only handle
updates to incoming calls, not the creation of them.
2. Basically, the same thing happens for disconnect calls. Some
disconnect updates come after we've disconnected and in those cases,
there is no need to recreate the objects since we've already sent a
disconnect update for the call.

bug:10571325
Change-Id: Ifa8eefd197161f90d60d4a55337a6a285e85e3bb
/packages/services/Telephony/src/com/android/phone/CallModeler.java
814da309b66d32f159a48ceb767e196cdc0cc2fc 31-Aug-2013 Yorke Lee <yorkelee@google.com> Add reject via text capability to calls

* Add REJECT_VIA_TEXT capability to calls
* Move allowRespondViaSmsForCall to RejectWithTextManager

Bug: 10424370

Change-Id: I059550d82e3b44cc4cc42d5eb06e40551497f063
/packages/services/Telephony/src/com/android/phone/CallModeler.java
2c2e9800fd1823800135d83ccb33e8bace6a031e 29-Aug-2013 Santos Cordon <santoscordon@google.com> Stop overwriting CALL_WAITING with INCOMING

Code too ambitious about setting INCOMING state caused CALL_WAITING
state to be overwritten.
Also fixed unnecessary setting of DISCONNECT. In both cases the method
updateCallFromConnection() was already setting the states...and in the
call waiting case...a more accurate state.

bug:10396126
Change-Id: Ib0bb7ab2ed87858c441ef0c1bd38820a1c09baa6
/packages/services/Telephony/src/com/android/phone/CallModeler.java
6c6b27265806a053193b8ccbc57f66b1feb8e5ab 23-Aug-2013 Chiao Cheng <chiaocheng@google.com> Fix incoming callback and binding issues.

- Created queues to handle cases where callbacks were getting dropped while
the service was connecting.
- Fixed DeadObjectExceptions when the in-call ui was being re-installed.
- Change to a single connection object to fix connection leak where every
re-bind caused connection to double.
- Split caller information from Call into CallIdentification object.

Bug: 10468815
Bug: 10457750

Change-Id: Icaef130db2f6893df3175eed07d0d483a3c4c455
/packages/services/Telephony/src/com/android/phone/CallModeler.java
2b73bd63e64f7ef2e74b8782d9eeb4e5fc9964f0 27-Aug-2013 Santos Cordon <santoscordon@google.com> DTMF Tones work in dialing state

plus some additional logging.

bug:10425120
Change-Id: I2a7ab27a3f387feb091340112dd6e41881c50429
/packages/services/Telephony/src/com/android/phone/CallModeler.java
69a691914e9b013a7ff52c129d8466c152ed7239 22-Aug-2013 Santos Cordon <santoscordon@google.com> Fixing Google Voice to work with new incallui

We were not previously storing and sending the gateway information to
the UI. This change consolidates Call gateway functionality from
InCallUiState and PhoneUtils into a new class CallGatewayManager. It is
responsible for storing a mapping from the call's connection to the
gateway used to make that connection. It also adds gateway packagename
and number to the Call object sent to the UI so that it can show UI
appropriately.

bug: 10393622
Change-Id: Ic5a0b068475bcab60e8cc96470273e36005ccc2e
/packages/services/Telephony/src/com/android/phone/CallModeler.java
af763a15f376f8248684b02695d38a5a08e61ac3 20-Aug-2013 Santos Cordon <santoscordon@google.com> start/stop in-call UI on demand

This change severs the connection to the in-call UI whenever there is no
active call. When we get a new call, we attempt to the bind to the
UI service. Whenever we lose/disconnect a call, we see if there are any calls
left and if not, unbind from the UI service.

Changes:
- Add explicit component name to config.xml and use them when binding to
the UI service.
- onUpdate and onIncomingCall in CAllHandlerServiceProxy now make a call
to maybeBindToService() in case the service requires binding.
- onDisconnect calls maybeUnbind() after a disconnect.
- add cleanup of current binding to onServiceDisconnect(). Also attempt
to rebind if there are still active calls.

bug: 10363682
Change-Id: I7ddbb33fde7e3b03c1f1ea759d174cb03baabc76
/packages/services/Telephony/src/com/android/phone/CallModeler.java
4ad64cd167e942b1dd132106750f4c221e3bf1a9 15-Aug-2013 Santos Cordon <santoscordon@google.com> Adding support for manage conference UI (Part 1 of 4)

This the the first part of the work to enable manage conference UI in
the in-call screen.

The gist:
We added the notion of a conference call object. Where we would have
had 2 Calls before during a conference call, we now have 3. 2 originals
(which have the new state CONFERENCED) and a new Call object for the
conference call with a list of child Ids for it's children. The new
conference object maintains the State that the oldest child Call would
have if it wasn't CONFERENCED.

Changes:
- Added CONFERENCED state for Call objects which are part of a
conference call.
- Added ability to specify child calls in Call objects so that
conference calls can identify which calls are their children.
- Updated CallCommandService to allow CONFERENCED Calls to disconnect.
- Updated CallModeler to have a secondary updateConference() step which
does the following:
- Calls which are part of a conference call now get the CONFERENCED
state
- Creates a new Conference call objects for ever connection that is
part of a conference call and is the earliest connection. This
ensures that there is only one conference call created regardless of
the amount of child connections.
- New conference call objects are stored in a new mConfCallMap which
maps Connection to a conference Call
- Change the updateCallFromConnection() function so that it works for
new conference Call objects as well. Conference call objects inherit
the status from the earliest Connection (earliest child Call), such
as ACTIVE, ONHOLD, etc.
- Send Conference call objects to the UI with the rest of the calls.

bug: 10334739
Change-Id: I9c6fa067195a1e6c43a5635a4f27405b01c46f8e
/packages/services/Telephony/src/com/android/phone/CallModeler.java
bbe8ecf9f2f8733f6e0a7c8e88082bd98dea8b98 14-Aug-2013 Santos Cordon <santoscordon@google.com> Adding connect time support to call objects.

Change-Id: I4b39694720fcec5b6975a19361ec5d91d4d5062d
/packages/services/Telephony/src/com/android/phone/CallModeler.java
eead6ec450160d3c96be2ec77a48401ac67171aa 08-Aug-2013 Santos Cordon <santoscordon@google.com> Capability and UI support for merge/swap/addcall

Change-Id: I0d2a9b855028ba2e82e4ffd627389000e3cc1891
/packages/services/Telephony/src/com/android/phone/CallModeler.java
26e7b2492c46bb7287c3032d60bf29a5cc4009cc 08-Aug-2013 Santos Cordon <santoscordon@google.com> Adding HOLD capability and passing it through the Service.

Change-Id: Ia4906ab4eaa601b12e06d151fed6e3b5f63958a3
/packages/services/Telephony/src/com/android/phone/CallModeler.java
e38b1fff94c3e93e75c776fe2f5bb9a088588c39 07-Aug-2013 Santos Cordon <santoscordon@google.com> Adding disconnect cause and DISCONNECTED state to Calls

Used for allowing UI to display UI when a call disconnects

Change-Id: I352d0be5a7be3237328b310e1c3d2c587f488d22
/packages/services/Telephony/src/com/android/phone/CallModeler.java
e94c27ad42e1276877a4bb39ab60ac1765f3bbac 08-Aug-2013 Yorke Lee <yorkelee@google.com> Merge "Add CANP name and presentation related fields to call"
ee09a49b24b2228f7ea7fb3d3be7a551120abb1a 07-Aug-2013 Christine Chen <christinech@google.com> Add support for text messages

Change-Id: I3883de331fd881133e29755fde3c7b772823ad70
/packages/services/Telephony/src/com/android/phone/CallModeler.java
4748abd56a18248d32fd621f52f4ddbdc9cdfbad 08-Aug-2013 Christine Chen <christinech@google.com> Adds duplicate check for CallModeler listeners.

Change-Id: I4f035ac1886354453a6126923484fd5770a63981
/packages/services/Telephony/src/com/android/phone/CallModeler.java
daf7bf63f4f104977b01623e4f36a50db190d47c 06-Aug-2013 Christine Chen <christinech@google.com> Supports DTMF tone in incallui split.

- Adds accessibility code for short tone.
- Also changed CallModeler listener behaviour

Change-Id: Ia052a877bdf301f478d3fcf4fd1d337dd9bc66ff
/packages/services/Telephony/src/com/android/phone/CallModeler.java
c8f32e7cd96a678961865750d5c7ce75feb5a1e6 06-Aug-2013 Yorke Lee <yorkelee@google.com> Add CANP name and presentation related fields to call

Change-Id: Ie8283f3c9e8a503e91eacf74c7d485a5c18f1c3d
/packages/services/Telephony/src/com/android/phone/CallModeler.java
2eaff909b5999e37f5a629410d2cebe5832a763f 05-Aug-2013 Santos Cordon <santoscordon@google.com> Add DTMF dial tone commands to CallCommandsService.

Moved over much of the code from DTMFTwelveKeyDialer except for UI code
and short-Tone. When we copy over short tone, we should be able to
delete DTMFTwelveKeyDialer.

Change-Id: Ibb954cdeb30bec99d717569f9254892661533699
/packages/services/Telephony/src/com/android/phone/CallModeler.java
249efd04d6148e0ad9814d0a4c1ebda8e8761fbf 05-Aug-2013 Santos Cordon <santoscordon@google.com> Use callId for all call commands.

Change-Id: I988643cdaaffb1abf2689844d119d5e382b9791b
/packages/services/Telephony/src/com/android/phone/CallModeler.java
998f42b9186900945a170521cb44f1eef8340802 03-Aug-2013 Santos Cordon <santoscordon@google.com> Removed onIncomingCall() from the CallHandlerService.

Using OnUpdate() exclusively with a fullUpdate flag.

Change-Id: I107cfdc6d132a524354bbede99550c71360e33ba
/packages/services/Telephony/src/com/android/phone/CallModeler.java
179907ffde3b1c48737992ef35eb19f6b0259065 31-Jul-2013 Santos Cordon <santoscordon@google.com> Setting number on the Call object.

Change-Id: I29180fdaed898e7a71b3989c0ffd46a69134b159
/packages/services/Telephony/src/com/android/phone/CallModeler.java
a3d0514c3480db25a813d8841c39e965f2925180 29-Jul-2013 Santos Cordon <santoscordon@google.com> Adds State to the Call Objects.

Also, updates the onUpdate method of ICallHandlerService to get called
when a call changes state.

Change-Id: I8fe830cdd8c7f4b92e985c518b5e1a60d6552284
/packages/services/Telephony/src/com/android/phone/CallModeler.java
995c816b6a596ccd48628c1da4199ea9e8a830b2 29-Jul-2013 Santos Cordon <santoscordon@google.com> Adding phone-style state

Change-Id: I8d8ed6249ccc52b4d67c4c7d6a7329ba381f6fb6
/packages/services/Telephony/src/com/android/phone/CallModeler.java
63a8424848966c0e94a78c4200bb091366dca3b8 23-Jul-2013 Santos Cordon <santoscordon@google.com> Adds class to translate telephony Connections to Calls.

Adds primitive call model (int callId) translated from telephony
layer's Connection type.
Adds onDisconnect functionality to CallHandlerService.
Makes call Id functional in callHandlerService.

Change-Id: I4d54f4c3f606e5973cc316125486cc361c96d610
/packages/services/Telephony/src/com/android/phone/CallModeler.java