History log of /packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
82557da65e5b16ac9d95e2bb5b73c2e5c1e88a89 24-Feb-2016 Qi Wang <wangqi@google.com> Merge "Let InCallActivity handle resize config change." into nyc-dev
40de598bb9559d038f3774e69365af2f856bd7f4 23-Feb-2016 Qi Wang <wangqi@google.com> Let InCallActivity handle resize config change.

Bug: 26862821,27250655
Change-Id: I1b5c35846f1a2d2dedaf2df9abf1f522270b1638
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
68d86c656e5522dec1b04e85ebc0e0f78e436c3d 21-Feb-2016 Sailesh Nepal <sail@google.com> [Gradle] Allow dialer to be compiled as a library

This CL adds a new build-library.gradle file for AOSP dialer.
This allows the dialer to be built as a library that can be
included from GoogleDialer.

Switching to a library project meant making two other changes:
- changed all switch statements that used resources to if statements.
This was required because resource IDs are not final in library
projects.
- changed InCalUI code to import com.android.dialer.R instead of
com.android.incallui.R. See http://b.android.com/82743 for more info
on why this is required.

src-N isn't supported yet. Also, this isn't the ideal project layout.
In the future we should consider switching to the following layout:
- dialer/incallui/ <- incall UI as an independent library project
- dialer/dialerlib/ <- dialer code as an independent library project
- dialer/app <- skelent app that builds a standalone dialer AOSP app

Bug: 26676586
Change-Id: I07fbee4d33cc683539e4f8b3953c93f1427af9d7
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
6a4e9d87031f1f803ce9b64844f71c73e9502a7e 21-Feb-2016 Sailesh Nepal <sail@google.com> Remove Lollipop support for InCallUI

This CL removes support for running dialer on Android L MR1.
The change allows us to switch from the system SDK to the public SDK.

This is useful for the following reasons:
- makes it easier to switch to gradle
- makes it easier to migrate GoogleDialer to google3
- reduces maintenance overhead for unused code

Currently there's no plan to release Dialer on Lollipop. If or when
we decide to support Lollipop we can consider switching back to the
system SDK and restoring the comapatiblity code.

Bug: 26676586
Change-Id: Idac9e6e19f1d21c9261c1b0d0ff3e3ca4aab980b
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
b9663702fefd8131db84b7adb7bd037f4a92b0ba 18-Feb-2016 Tyler Gunn <tgunn@google.com> Fix end-call FAB position when dial pad is shown on device rotate.

Move the "onDialpadVisibilityChange()" listener call so that it takes
place regardless if the dialpad is animated on show-hide. That
listener triggers "updateFabPosition()" in callCardFragment, which
repositions the fab.

Bug: 27170964
Change-Id: I56588695c633205f4ebaac6d9685f543b9e09293
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
41c304dae70a534f0e9b345e905f30ec76b9ea73 09-Dec-2015 Brandon Maxwell <maxwelb@google.com> Backporting references to android.telecom.Call.Details

In L, Call.Details.CAPABILITY_* constants were found in
android.telecom.PhoneCapabilities, it has been verified that the
constant values match as needed.

In L, Call.Details.getExtras had all the information that was moved to
Call.Details.getIntentExtras in M

Added android.telecom.Call.Details compat class

Change-Id: I16d25173382575f351762e0e5b71775f1046fdd0
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
1a2cc46c3a4681d56c1d9a44d11725304980437b 09-Dec-2015 Nancy Chen <nancychen@google.com> Ignore check for phone accounts when making call from pre-MSIM device.

Since Lollipop and before we don't have phone accounts, we can't check
if we have a valid phone account before making a call, so ignore this
check.

Bug: 25776171
Change-Id: If4266029cadaf95bcd7a52dd49f4d27db9eda964
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
69358ba936fd0d41df1375f9805c73668239965c 22-May-2015 Nivedita Sarkar <nsarkar@codeaurora.org> IMS-VT: Listen to sensor orientation changes and update camera preview

- Register to listen to OrientationEventListener

- Notify registrants of orientation changes and update camera
preview size and orientation based on that.

- Enable the orientation listener only when CVO is enabled.

- Enable the orientation listener for video calls only. Disable it
if we downgrade to VOLTE

Bug: 21587367
Change-Id: I1735d05ab9b76074350e7aa8deae4f35ab71c56d
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
ebd8a06582ed251a678fd0b0008f74b81d74e160 07-Jul-2015 [A <yorkelee@google.com> Fix NPE when getting fragment manager

Bug: 22324713
Change-Id: I196ff7fbc2b6e4bf06899e3c397c3f098030f952
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
50d70a614f2f617ed60d24f8d1756b1bcb20bb80 30-Jun-2015 Tyler Gunn <tgunn@google.com> Show dialpad button for VT calls, cleanup dialpad on rotation.

1. Show the dialpad button for VT calls (this was easy).
2. In testing I realized there were some other dialpad scenarios that
did not work properly:
- The dialpad visibility state was not properly restored after rotation.
- The auto-fullscreen code could hide the call card when the dialpad was
showing, resulting in an inability to hide the dialpad.
- In landscape it was possible to tap between the call card and the
dialpad and cause the call card to be hidden.
- If user goes to background in fullscreen mode and then opens dialer and
chooses to show the dialpad, the app is still in fullscreen and it is not
possible to hide the dialpad.
3. Noticed an issue related to the fact mIsFullScreen in InCallPresenter
is static, and after rotation you're always defaulting to not fullscreen.
Fixed by clearing fullscreen state on rotation to match actuality.

Bug: 21296950
Change-Id: I2c7a666a50e2284b1d22db43c443b34109cff9b1
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
a62dc2266449adc677ddc7c8141e615f95e3652c 17-Jun-2015 Rekha Kumar <rekhak@codeaurora.org> IMS-VT: Fix null pointer exception

mOrientationEventListener is replaced by mInCallOrientationEventListener.
Removed some usage left out as part of merge conflict/change propagation.

Bug: 21893478
Change-Id: I7b9d9e804745df199da9562f4d05e533dd4999c2
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
70c216c16d28552d851aadcc0bf6928522f0da6b 22-May-2015 Nivedita Sarkar <nsarkar@codeaurora.org> IMS-VT: Listen to sensor orientation changes and update camera preview

- Register to listen to OrientationEventListener

- Notify registrants of orientation changes and update camera
preview size and orientation based on that.

- Enable the orientation listener only when CVO is enabled.

- Enable the orientation listener for video calls only. Disable it
if we downgrade to VOLTE

Bug: 21587367
Change-Id: Id1288ee05fe02ebcfee57e52da060ec5c48ceaac
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
015ec97c0ecc23063fa3efd3cd11639b399422ac 19-May-2015 Tyler Gunn <tgunn@google.com> Fix presentation of "held" banner in landscape mode, plus more!

1. Removed landscape video_call_views.xml file; it was identical to
the portrait version but missing some recent changes. This corrected
an issue I observed with the preview surface not rotating properly.
2. Changed layout of landscape call_card_fragment so that the secondary
call info box is a banner along the bottom of the screen and the call card
adjusts to fit above it. The trick is to put that view before the
primary call card in the relative layout and mark the primary call card to
"layout_above" the secondary call info.
3. Fixed issue observed when transitioning from portrait to landscape
where the secondary call card OnPreDrawListener would keep firing.
Changed the way the OnPreDrawListener is removed per Yorke.
4. Corrected issue where the preview surface would not change to a
landscape orientation when the device is rotated. Ensured when starting
up the VideoCallPresenter to adjust the orientation of the surface.

Bug: 21076775
Change-Id: Ia86215814602523882cc47d19a2cf2ab08eec5ea
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
37adc9854ae78a0dd358b8e129417c142b83cf1c 12-Nov-2015 Ta-wei Yen <twyen@google.com> Use separate AnswerFragment for Talkback

+ Split AnswerFragment into GlowpadAnswerFragment and
AccessibleAnswerFragment, with the refactored AnswerFragment
as base class.
+ InCallActivity will select GlowpadAnswerFragment and
AccessibleAnswerFragment base on if any touch exploration
accessibility service is active.
+ Removed AnswerListener from GlowPadWrapper, as it is only
implemented in one class and made the code more complex.
+ Changed answer icon's color into green.

Bug:24101341
Change-Id: Ida2b07986d64d6442ff87a2258180846a092942e
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
de82cb4bcc6a7e26109a3fc701f7a544b2115909 10-Nov-2015 Yorke Lee <yorkelee@google.com> Log screen view events in InCallUI

Bug: 23164804
Change-Id: Icd7e8414ce15ab286946f7fe03aecba49ee67bb4
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
05b3215d886d8e7787b49bf2390a87725ffa0c23 21-Oct-2015 Ta-wei Yen <twyen@google.com> Fixed highlighter stuck on dialpad while in call.

+ InCallActivity.showDialpadFragment() now returns a boolean to indicate if
changes are actually made.

Bug: 18930766
Change-Id: Ib00859a58b289f988606e6427b1d874a69231fbb
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
867c01eb4f077454a83e366939bca3dd03915ffc 25-Sep-2015 Jay Shrauner <shrauner@google.com> Use TransactionSafeActivity

Remove custom visibility tracking.

Bug:24294419
Change-Id: I601c9a1c14db7c53d5c7b4a0acbb41b553e10e96
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
ebe298041c7d3e1c47da3b775b1851df586c3d4b 14-Sep-2015 Jay Shrauner <shrauner@google.com> Fix IllegalStateException in onBackPressed

Check to make sure the activity is still visible before doing anything.

Bug:24049732
Change-Id: I64442c9283b46ecee5972fd217fb790564671167
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
9124b77e489772fb7c6aac36f83d86ffdf83748f 08-Aug-2015 Jay Shrauner <shrauner@google.com> Rename Telecomm to Telecom

Bug:
Change-Id: Iaed2bbe86370bba7d896cef525086aa51e654b64
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
202a140e8e89c8fffec84aeefb606d58cb50f6d6 06-Aug-2015 Yorke Lee <yorkelee@google.com> Catch RuntimeException when calling setExcludeFromRecents

Bug: 22924782
Change-Id: I1da931b805658376fb9db418210662273d9c1db8
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
fd3f062fc215dd0f9ea8e0ec3dc258585a480b39 27-Feb-2015 Yorke Lee <yorkelee@google.com> Don't hide InCallActivity from recents

Show InCallActivity in recents (only during an active
call)

Bug: 17411752

Change-Id: I2c69c517f7278df78454bf69fce93880bc00997a
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
eede7c1ffc76a13d91a1c7aa470d8b5fdc4f9be6 20-Jun-2015 Yorke Lee <yorkelee@google.com> Fix two animations when using Connection.setInitialized

STATE_NEW has no meaning within InCallUI and can confuse
the internal logic. Treat it as STATE_CONNECTING for purposes
of state tracking.

Also, track whether the activity is visible rather than
whether it is the foreground activity (by tracking onStart/onStop
vs onResume/onPause). This fixes some unexpected UI transitions
when a dialog (e.g. wifi-calling dialog) shows up over the InCallUI.

Bug: 19217176
Change-Id: Ifa5953e27aa4ed777ed8798c628df1bdc96ed1eb
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
f3a65b2e9bcbf162aa8a715709028b2deeb2ca09 18-Jun-2015 Yorke Lee <yorkelee@google.com> Fix for InCallUI finishing too quickly to display error dialog

Increase the delay before disconnecting the call for
DisconnectCause.ERROR, so that the user has time to acknowledge
the error.

To avoid regressing on b/20956721, keep track of any calls
that are pending a disconnect. If the user has explicitly dismissed
the error dialog, disconnect the call immediately to avoid blocking
the UI any further.

Bug: 21436856
Change-Id: I339cdbf1ba99fda5b1f5c8c31f722c97b64f487f
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
d2423d619ce2d3b125fefc5fec5accac7fab8bfa 01-Jun-2015 Yorke Lee <yorkelee@google.com> Merge "Disable OrientationEventListener when activity backgrounded" into mnc-dev
d4290a3ff3cb662e780730f101487ae1a732b449 01-Jun-2015 Yorke Lee <yorkelee@google.com> Disable OrientationEventListener when activity backgrounded

Bug: 21439982
Change-Id: I8cc014ffd272b6a4fa19030eeaeef87f3ffd5d82
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
9b4265b667ae6b1262ef124694344abc48bb9884 28-May-2015 Santos Cordon <santoscordon@google.com> Add extras to Connections/Calls. (3/3)

Two major changes:
1) Add the notion of extras to a Connection. These extras will be
parceled through to InCallService as Call.getExtras()
2) The previously existing Call.getExtras() has been renamed to
getIntentExtras(). This name better describes the fact that these
particular extras are from the original CALL or INCOMING_CALL intents.

Change-Id: I85358827905abe3fd93b6b901dd78c86bb7d653c
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
48b1ef1a1c5842d0f3b4656560c538015007e9bd 18-May-2015 Tyler Gunn <tgunn@google.com> Remove reliance on getDefaultDisplay() to determine screen rotation.

Replaced the calls to getWindowManager().getDefaultDisplay() with code
to determine the screen rotation angle based on the angle ranges.

Bug: 21208380
Change-Id: Ie91d38f9c0b4227bb2148a193c00339b5d8f4ce6
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
49192ceff2a79b2a75ffdcabaa460cd753972d26 08-May-2015 Yorke Lee <yorkelee@google.com> Merge "Fix NPE when hitting back in InCallActivity" into mnc-dev
85f7ca6523ee19fa2537db4cd259ad69654c346a 08-May-2015 Yorke Lee <yorkelee@google.com> Fix NPE when hitting back in InCallActivity

Bug: 20921372

Change-Id: I25969a56eb293f20e3dfeaccf6f929177da00e85
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
d078826fc9fc20009d69ed041464209ed83e2e0f 06-May-2015 Tyler Gunn <tgunn@google.com> Fix issue where fast 180 degree landscape rotation is not detected.

- Cleaned up imports in InCallActivity.
- Added new OrientationEventListener to listen for orientation changes
to the device. This listener returns the current device rotation in
degrees. Use the windowManager to get the current display rotation (e.g.
in coarse 90 degree, 180, etc).
- This solves the problem - can now detect rotation from landscape to
landscape.

Bug: 20727115
Change-Id: Icfad2b26083bb8236e9f4fe5580e3828cdef11b8
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
01ad85125dd7cbe1107c679dcc362b9487700b9a 15-Apr-2015 Vinit Deshpande <vinitd@google.com> am b04d61a..697f674 from mirror-m-wireless-internal-release

697f674 Fix orientation of preview surface when device rotated.
17de502 Merge "Always allow landscape mode if video call is the primary call" into m-wireless-dev
3692e77 Always allow landscape mode if video call is the primary call
a77ad8d Video calling landscape changes to match specs
cb74fc0 Merge "Simplify and rewire in-call buttons" into m-wireless-dev
ed0775d Simplify and rewire in-call buttons
80a1aad Hide incoming video until call is connected.
4f2a70b Merge "Cleanup AnswerFragment glowpad UI" into m-wireless-dev
6591f05 Merge "Initial refactoring for call buttons" into m-wireless-dev
c70a63c Initial refactoring for call buttons
4a63afd Hide end call button when video upgrade glowpad is showing
7ba13e9 Cleanup AnswerFragment glowpad UI
6b2b8df Show progress spinner when upgrading to video
c02794b Merge "Cleanup of Video Call pause functionality." into m-wireless-dev
bec5807 Standardize fragment layout names
bc65cbc Adding video call icon in secondary call info.
9e0d3a386a48d5f32dacb45bab96f0ea5752be36 14-Apr-2015 Tyler Gunn <tgunn@google.com> Fix orientation of preview surface when device rotated.

- Cleaned up some unused methods in InCallActivity.
- In onDeviceOrientationChanged, handle orientatoin change by resizing
surface.
- Fixed setPreviewSize which was not rotating the surface the appropriate
way (ensured it was setting a transform on the surface, and also made sure
that the correct dimensions were being passed in).

Bug: 19850018
Change-Id: Ia9324ce6bad5a797839e69ba20244f2bcc44acb5
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
f41a78319650da5247005954e36cac98dc165b25 10-Apr-2015 Prerepa Viswanadham <dham@google.com> Merge commit '8bef461' into merge_work

Change-Id: I4cfea114e24c0b0671e99118316ad839dafbe400
311841ea1eba23afdbaf1e1ec3502c8f6b398efd 04-Apr-2015 Jay Shrauner <shrauner@google.com> Handle recreating SelectPhoneAccountDialogFragment

Bug:20064573
Change-Id: I089c2b890d88747c7914432e8f0229137c960856
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
07149bc8df71c26e3eee8a37ee7974ce634e752e 31-Mar-2015 Yorke Lee <yorkelee@google.com> Fix NPE if InCallActivity is finished before call card is displayed

Bug: 20001311
Change-Id: I8c6994062065da55d6e37652d9a6c8e5985c5f7a
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
18c0feda76fe333f3db1bf7bd307458a9e6b6005 18-Mar-2015 Rekha Kumar <rekhak@codeaurora.org> IMS-VT: Add support for video calls

IMS-VT: Upgrade downgrade and hold resume video calls
-Add support for upgrade downgrade video calls.
-Add support for hold resume and call waiting

IMS-VT: Fixed surface caching.
Fixed surface caching.

IMS-VT: Fixes InCallUI/Dialer crash when there is a VT call.
-Fixes InCallUI/Dialer crash when UE is rotated.
-Fixes InCallUI/Dialer crash when UE VoLTE call
is upgraded to VT.

Don't default to speaker phone for VT when speaker is disabled
- The adb property persist.radio.ims.audio.output indicates
whether speaker is disabled explicitly or not.
- If the above property is set to 1, don't enable speaker
phone by default in VT call.

IMS-VT: Fix CVO, surface and resource related issues.
- Send initial orientation to VT Service.
- Detect if Activity is being destroyed due to
confugration changes.
- Close the camera when InCallUI is pushed to background.
- Fix surface and VT service related issues when Fragment
and Presenter gets destroyed.

IMS-VT: Peer Resolution Feature Implementation
Change display video size based on peer resolution values
received from far end.

IMS-VT: Answering calls and upgrade requests as VT_TX and VT_RX
-Support for showing one way options for incoming upgrade request
-Fix issue where incoming video popup stays on screen even after
rejecting the request.
-Fix issue where incoming video popup stays on even after it has
been timed out by lower layers.
- Answer with different calltypes support.

Notify listeners of video quality changed event and display message on UI
- Add methods to notify listeners of type VideoEventListener
when video quality changes.
- Display a notification on the UI when video quality changes.

IMS-VT: Enable SIP based video multitasking.
Enable SIP based video multitasking.

IMS-VT: Call data usage feature
- Add support for call data usage callback
- Request for call data usage stats
- Log call data usage stats when IMS layers send update

Change-Id: I3f0dde0d82698085fa5d3f110720f10326eca768

IMS-VT: When TTY is ON, do not allow upgrade to VT call
When TTY mode is ON, the user SHOULD NOT be allowed to upgrade
a call from VOLTE to VT/VT-TX/VT-RX and an UI alert message will
be displayed explaining upgrade to VT call cannot be initiated.

IMS-VT: Add null check in call upgrade fail scenario
Crash is observed if call is ended in the interval wherein
handler is started to change state from REQUEST_FAILED to NO_REQUEST
after an interval. Added null check to change state only when call
exists

Propagate call substate message and display a notification on the UI

Ims: Reject upgrade request
1. If there is waiting call that is pending user action and
2. Before offering a waiting call

IMS-VT: Provide Player State indication to user.
Change to display "player started/stopped" toast message
whenever video starts/stops flowing

IMS-VT: Cleanup video views when not required
- Hide video views when not required.

Set display size as per current TextureView size
- Using TextureView height and width to calculate the display size.
- When ever there is change in display make sure that center the display.

IMS-VT: Exit VT call full screen mode.

If the call is no longer a VT call, then exit full screen mode

Change-Id: Ibc4ad8f9a4c38e467820028cdc2c7e68d65fd93c
CRs-Fixed: 760925

IMS-VT: Upgrade button fix
-Show upgrade/downgrade button only when call is in ACTIVE or
ONHOLD state

IMS-VT: Show correct call types during video pause
-In paused state, upgrade downgrade button does not list the
calltypes dropdown box
-Remove the paused bit to calculate call type during video paused
state.

IMS-VT: Move strings for video quality changed indication to resource files

IMS-VT: Clean up the showCallSubstateChanged API
- Make the code more readable.

IMS-VT: Set audio route to Speaker if current route is not bluetooth or headset
- We always set the audio route to speaker when we enter video mode.
- That is not correct. We should check if headset or bluetooth is
connected before defaulting to speaker.

IMS-VT: Turn speaker on/off for video calls based on call state changes
- Turn speaker on only when video call is active or dialing
- Switch back to the previous audio mode when there are no
more calls
- Make the previous audio mode static so that information
persists when the class is recreated (e.g. when UE is
rotated or multitasking happens)

IMS-VT: Use back camera instead of front camera for VT-TX
Set back camera for below cases
1) VOLTE to VT-TX
2) VT to VT-TX
3) Waiting call over Vt-TX call.

IMS-VT: Fix upgrade in call waiting scenarios
-When one VoLTE call is active and another VoLTE call is on hold
and upgrade button is hit, call ends. Fix this upgrade issue.

IMS-VT: Enter video mode when the primary video call changes
- We only enter video mode when we have any video state changes
- Enter video mode should also be called when the video call
changes. e.g. When we have a second call with the same video
state, we don't enter video mode which is incorrect. This
change fixes the issue

Add null check for InCallActivity in setInCallAllowsOrientationChange
- In some cases, this API is called when InCallActivity is null.
This causes a null pointer exception. Fix is to add a null check.

IMS-VT: Fix check for VOLTE call (AND to OR) when turning speaker on

IMS-VT: Check if call is video before enabling speaker in updateAudioMode
- Moved the video call check to the correct block where we
are enabling speaker

IMS-VT: Get call substate values correctly from the bit mask
- We were getting the call substate incorrectly as an int.
- Fixed that by getting it from the bit mask and using the
possible multiple values to display the call substate message.

IMS-VT: Keep the screen on during video calls.
UI screens times out after some time. During
video calls the screen must be kept on.

Change-Id: Icaa8662210b2dd323b29f4a472869a9ed1e01d00

IMS-VT: Open front facing camera for VT calls.
Open front facing camera for VT calls.

IMS-VT: Show manage conference button for Video Call
- We show the manage conference in a separate section for
VOLTE Calls.
- In the case of Video Call, the entire screen is occupied
by the far end video. So we display manage conference in
the overflow section of the call button fragment.

IMS-VT: Fix camera preview freeze for CONF video calls.
Fix camera preview freeze for CONF video calls.

IMS-VT: Move persist.radio.ims.audio.output to frameworks
Move persist.radio.ims.audio.output and related constants to
TelephonyProperties and PhoneConstants so that these can be accessed
from multiple git projects instead of redefining.

IMS-VT: Multiple video call fixes/optimizations.
-Current implementation clears primary call cache upon exiting
video mode. This will remove video call provider interface as
well, which will prevent further communication with the backend.
Don't clear primary call cache upon exiting video mode.
-Unregister call details listener when UI transitions into
unready state
-Send surface of incoming video to video call provider before
opening camera.

IMS: Cleanup all listener objects
Clean all stale listener objects to avoid the memory leak.

IMS: Fix speaker icon display issue in Call UI.
In few devices, InCall UI can show upto five buttons
in a row. Modify code to display at most five buttons
in a row. Show overflow menu if number of buttons is
more than five.

IMS-VT: Show glowpad view with accept/reject for most video upgrade cases
- Show the glowpad view with all options only when upgrading
from Volte to VT
- For all other cases, show the glowpad with accept/reject only

Change-Id: I41ecbda40db7c3c69428fc4272f8bfbd258e2980
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
bc01cc61a572462bf7603418011e707ed861f24e 24-Mar-2015 Jay Shrauner <shrauner@google.com> Fix NPE in showDialpadFragment

Check for null ProximitySensor

Bug:19931065
Change-Id: I33b72552260f4b670457ea0ba6e30e5b4819f636
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
fd0b577edffa5413adfda1503038a3bff3247106 20-Mar-2015 Yorke Lee <yorkelee@google.com> Dynamically add/remove CallCardFragment

Only show the CallCardFragment when it is needed:

1) Incoming calls
2) After completion of circular reveal

Also make Calls class public so that it can be mocked with
Mockito

Change-Id: Ife7ed38bde25daf5a9fd0329ade5e794fa1bff65
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
c1d1e8418d20edc5871b45263f43b9c28da2633d 09-Mar-2015 Yorke Lee <yorkelee@google.com> Dynamically add AnswerFragment

AnswerPresenter is a little tricky because it is in charge of
responding to incoming calls, so we want it to be alive and getting
onIncomingCall callbacks, but we don't want to create an instance
of AnswerFragment, which it is dependent on.

Move some dependencies around so that AnswerPresenter is created
by InCallPresenter instead. It registers for callbacks via InCallPresenter
instead of directly to CallList, and shows/hides the AnswerFragment via
InCallActivity.

Change-Id: I7026150988bf3cda762dda8a319f48e1af132361
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
153e86e1905e41e2ebeeccebaaff218d86184c09 09-Mar-2015 Yorke Lee <yorkelee@google.com> Standardize naming of methods and fix a typo

Change-Id: I9b294ab9f483bb5e7af149ff6054cd8cd667adca
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
979f38e37da9bdd4c51aceafe7bcc44b305e3d02 07-Mar-2015 Yorke Lee <yorkelee@google.com> Improve InCallUI fragment management

* Load some fragments on demand
* ConferenceManagerFragment
* DialpadFragment
* Remove ConferenceManagerFragment from incall_screen.xml so that
it is no longer loaded statically
* Add helper methods to InCallActivity to facilitate dynamically
loading fragments
* Fix some bugs with fragment visibility and activity recreation

Change-Id: I475e2302fae415817f06da209dd6484c89467480
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
3f6debde64399e573bd68d45faa44f59bce89790 05-Mar-2015 Yorke Lee <yorkelee@google.com> Merge "Remove CircularRevealActivity"
6596e1be9d3e15e2cbe4a5e9c3824ee47a0e2744 20-Feb-2015 Yorke Lee <yorkelee@google.com> Remove CircularRevealActivity

Replace CircularRevealActivity with a fragment that is tied to
the lifecycle of InCallActivity so that InCallActivity is the
only activity that is involved in the outgoing call process.

Simplify some of the intent creation logic that is used to launch
InCallActivity since we no longer need some of the flags that were
currently provided via various method overloads in
InCallPresenter.getAnimationIntent and getInCallIntent.

To further simplify this CL, a very rudimentary approach is taken to
track the state where we are starting up the UI but haven't received
a call from Telecom yet. This is done by a boolean flag set on the
InCallPresenter: mBoundAndWaitingForOutgoingCall.

Further changes will build upon and improve this.

Also set most elements inside primary_call_info.xml to
visibility: GONE by default to fix some animation jank where a
empty but not GONE view would continue to take up space.

Change-Id: Ic70857685680af6868d4b2153d942d73eef3ca56
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
8bf9040cfb63181c3655b3cb111a342058037d6f 03-Mar-2015 Yorke Lee <yorkelee@google.com> Merge "Don't hide dialpad when disconnecting"
ac3d2f0549f5f5d7789d92ff8d2f818315af0ad0 28-Feb-2015 Yorke Lee <yorkelee@google.com> Don't hide dialpad when disconnecting

This was originally needed because the dialpad was full screen
and would obscure the call status when ending the call.

This is no longer true with the L dialer and the dialpad
sliding animation when the call is ended looks weird.

Change-Id: Id78c2bef3470066b9e8e86bce0c6f431df5adde2
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
d5c4aad9e9a957fdaf30c9efe7d99fa4db0ff3b8 28-Feb-2015 Yorke Lee <yorkelee@google.com> Update some comments in InCallActivity

Change-Id: I9fce3fbd1fa51a6a0489de2d97691fc8e4aa143c
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
b16bc3bb33bb17e0b05e82f085ba4df405d5e201 19-Dec-2014 Yorke Lee <yorkelee@google.com> Merge "Show error dialog and end call for service not supported error" into lmp-mr1-dev
cb5ce98130681ef07f513fd3f9c332b183b61772 18-Dec-2014 Yorke Lee <yorkelee@google.com> Show error dialog and end call for service not supported error

Add another condition for which InCallActivity is launched so that
it can disconnect the call and show the error dialog.

Slight refactor of code that checks if a call has valid accounts so
that it can be shared.

Bug: 18781230
Change-Id: I83a9c4ee30f2a80168f3244f4929f70aa46b9d83
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
f5b50cf02b16c328f71b17afc4f6b993a2eee0dc 17-Dec-2014 Yorke Lee <yorkelee@google.com> Merge "Revert "Allow back to be pressed while in incoming call screen"" into lmp-mr1-dev
b5a3128869281c97fe75dee77403857b215585cd 16-Dec-2014 Yorke Lee <yorkelee@google.com> Revert "Allow back to be pressed while in incoming call screen"

This reverts commit bd9ccd501ebd83508dfe52121e0f4827cc6e1fa3.

Bug: 18742942
Change-Id: I8016ddae8addb56b4d6350748628fec351e6531a
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
73c4fdaf1794054fa7d8a5151f274a200b6bdd76 10-Dec-2014 Tyler Gunn <tgunn@google.com> No InCall UI visible after hiding conference manager.

- The hide of the conference manager fragment and subsequent show of the
call card was being done inconsistently in a few places.
- Added a new method to hide/show the conference manager fragment and
the call card at the same time and replaced all references with this new
unified method.

Bug: 18699503
Change-Id: Ia6b80bdc29198627b1c46de72da432dc9523dc5e
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
da4ebb3406456341f76bb85c6580c02cf554a845 05-Dec-2014 Yorke Lee <yorkelee@google.com> Merge "Improve outgoing call UI responsiveness" into lmp-mr1-dev
57510b311b126430c620478b15ea40307b47c0e0 05-Dec-2014 Tyler Gunn <tgunn@google.com> Merge "Fixing manage conference accessibility issues." into lmp-mr1-dev
609c0d0d02c8b45369095ae69951fa687ee25673 24-Nov-2014 Yorke Lee <yorkelee@google.com> Improve outgoing call UI responsiveness

* Start InCallUI immediately once Telecom binds

* This CL is a bandaid for improving outgoing call responsiveness
in the MR1 timeframe. Refactoring InCallActivity into dynamically
added fragments and modifying its lifecycle with respect to
the call list is too risky.

* Add a lightweight activity (CircularRevealAnimationActivity)
that is used to display the circular reveal animation while
the significantly heavier InCallActivity is starting up

* Inside InCallServiceImpl.bind, start the reveal animation once
bind is called to avoid being blocked by any synchronous work in
Telecom.

* Refactor CallCardFragment.animateForNewOutgoingCall to
conditionally display the reveal animation, depending on
whether or not it was already displayed by the
CircularRevealAnimationActivity.

* Refactor the calculation of theme colors in InCallPresenter so that
the CircularRevealAnimationActivity can use those colors as well.

* Remove PENDING_OUTGOING from the list of call states that bring up
InCallUI.

Bug: 18373617
Bug: 18611753

Change-Id: I44c593373864ffc0ba9edebb88887177112d8b27
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
6b929c026e2d7d9b4fb4ec401829431e817c8606 04-Dec-2014 Tyler Gunn <tgunn@google.com> Fixing manage conference accessibility issues.

1. The "Manage Conference" button would be announced twice when it received
focus. Moved content description to the parent FrameLayout that acts as
the button and made it focusable to ensure that the description is read
only a single time.
2. When tapping "Manage Conference" button there was no audible feedback
that the manage conference screen was opened. Set focus to the list of
conference participants so that this list is announced when the manage
conference screen opens.
3. It was possible to change focus from the list of participants in the
manage conference screen to the call card buttons and other elements
behind the manage conference screen. Fixed by explicitly setting the
call card fragment visibility to GONE when the conference manager is shown.

Bug: 18440532
Change-Id: I0ce4f74ccb98c5cefd6c6e75eb8ef9310bd6d7fb
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
9aa0cae59f741524285391fa6877252f6ade76ec 03-Dec-2014 Yorke Lee <yorkelee@google.com> Add some more logging in InCallActivity and InCallPresenter

Bug: 18589036
Change-Id: Idac704fab2f31ecc908c1fe9ffe854dda0d2c34f
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
ab03ce945b327558aac03fa5ef4db3c73119cd66 12-Nov-2014 Yorke Lee <yorkelee@google.com> Merge "Allow saving of presenter state during activity recreation" into lmp-mr1-dev
e21548dc297b809d288ac90d7b32163fe40f039f 10-Nov-2014 Nancy Chen <nancychen@google.com> String resource edits for InCallUI

Adjust strings in InCallUI per ewong@'s edits.

Bug: 17446974
Change-Id: Ic11f8de792e714c8d48b009ae75cb214fb2ba6ce
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
8430ccda6af3a038c1a48a3f7873ef9a2f4571be 08-Nov-2014 Yorke Lee <yorkelee@google.com> Allow saving of presenter state during activity recreation

Also correctly save state of CallButtonPresenter so that
mute/unmute logic persists across activity destruction.

Bug: 18270222
Change-Id: I56abd69aa04bfc63f2ffab0f35d551f03df75867
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
ccc5064e1df33c0480f5edf67cd9c358b58a99f9 06-Nov-2014 Yorke Lee <yorkelee@google.com> Merge "Make setting and unsetting InCallPresenter.mInCallActivity more robust" into lmp-mr1-dev
b8ef9f727314f0e9069aab6f1e8a2d909efbbbe7 31-Oct-2014 Yorke Lee <yorkelee@google.com> Make setting and unsetting InCallPresenter.mInCallActivity more robust

It is not likely because InCallActivity is single instance, but protect
against InCallPresenter.setActivity(null) being called by a second instance
of InCallActivity while the first is still active.

Also minimize the time InCallPresenter spends on the state where
mInCallActivity is not null but it is also finishing.

Bug: 18150786
Change-Id: I51ea5765cbc72cd9d0144d3f6bb6f64a7c8f17cf
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
ab86f04c5ed385eafcd9099fa4ca50fd2f4c5c33 04-Nov-2014 Nancy Chen <nancychen@google.com> Remove provider icon from InCallUI.

Because we are now using the SIM color to designate which SIM is being
used in the InCallUI, we are removing the icon from the primary and
secondary call info fields.

Bug: 18204058
Change-Id: Ibc0b74ce2a104e7aa506a2d200c0e1b9997df7d5
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
b5d055b15fcd9bbc083c88958e26c52a28b939dc 31-Oct-2014 Nancy Chen <nancychen@google.com> Merge "In Multi-SIM cases use the color of the SIM icon for InCallUI." into lmp-mr1-dev
0823232bf03bb2768690b500b619799d62e0399f 31-Oct-2014 Yorke Lee <yorkelee@google.com> Merge "Revert "Call InCallPresenter.setActivity(null) in onPause"" into lmp-mr1-dev
9443a9864d2ee4cd8fc3a466f77ac8f8d493c8fc 31-Oct-2014 Yorke Lee <yorkelee@google.com> Revert "Call InCallPresenter.setActivity(null) in onPause"

This reverts commit 29669fa9974ee7189bb89793d4b6fd13b5672fcb.

Change-Id: I20a7201e4715023cc8b02177bbac337f8e8a96c1
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
6a0b4dd87b24ab805ff82bb1801190495ee78cc9 31-Oct-2014 Yorke Lee <yorkelee@google.com> Merge "Call InCallPresenter.setActivity(null) in onPause" into lmp-mr1-dev
7aa1720391f35f2b242b6eb82394287be6d6f366 31-Oct-2014 Yorke Lee <yorkelee@google.com> Call InCallPresenter.setActivity(null) in onPause

Minimize the time InCallPresenter spends on the state where
mInCallActivity is not null but it is also finishing.

Bug: 18150786
Change-Id: Ibf432625180e40c79220bbc1562565033d1e2618
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
843a666c3740ce41864ea8249465286316130dfa 30-Oct-2014 Yorke Lee <yorkelee@google.com> Fix skipped frames in circular reveal animation

If FLAG_DISMISS_KEYGUARD was requested while in the middle of the
outgoing call animation, the resulting window update led to a relayout/
view traversal in the middle of the animation that would cause skipped
frames.

To fix this, cache the current state of whether or not the keyguard has
been dismissed, to prevent unnecessary changes to the window state.

Also request for the keyguard to be dismissed in onCreate if we know that
this is an outgoing call to prevent the unnecessary relayout later in the
outgoing call flow.

Bug: 18004737
Change-Id: I057a695ee513befbb410bfe1328d1aae45595896
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
991acb8d1b00d68e2be118cae5e9396d1127d5bb 25-Oct-2014 Nancy Chen <nancychen@google.com> In Multi-SIM cases use the color of the SIM icon for InCallUI.

Set the color of the InCallUI to be the color of the SIM icon. In the
single SIM case, the background should be the default background.
* Added id to all call button backgrounds for color change
* Initialize color onResume for InCallActivity
* CallCardFragment/CallButtonFragment/DialpadFragment update their colors
* Added InCallUIMaterialColorMapUtils to extract color

Bug: 17971273
Change-Id: Ia247b153b57ffc8a5277d521c433ab0be6696cf6
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
e31738eed907d9e38ec0e3abed4e29fd0eaf62e8 23-Oct-2014 Nancy Chen <nancychen@google.com> am f826a8f1: Merge "InCallUI should report to Telecom when user sets default account via dialog" into lmp-sprout-dev

* commit 'f826a8f12d2e32aa19f906eb424a5fcdb8840205':
InCallUI should report to Telecom when user sets default account via dialog
b95cf78480e2bdb6d1c38c897bab621ec20dec02 22-Oct-2014 Nancy Chen <nancychen@google.com> InCallUI should report to Telecom when user sets default account via dialog

Modify the phoneAccountSelected method to support the option to set the
selected phone account as the default for outgoing phone calls.
Refactor InCallUI to support this feature.

Bug: 18078232
Change-Id: I4d90a58c896f036020cc7e3ea63b0493976042a4
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
4713b98345b8c890c303a595cc099dc7e60437df 11-Oct-2014 Yorke Lee <yorkelee@google.com> Allow back to be pressed while in incoming call screen

Bug: 10692603
Change-Id: Id7ad95ec069f0f6a28183d0eb010ce4fa8758b52
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
7e2ade1c5f23678de800df837d4ae9179d29d5e9 08-Oct-2014 Nancy Chen <nancychen@google.com> Generalize select account dialog for usage anywhere in dialer (1/2)

Currently the select account dialog is specific to InCallUI, but there
are other places in the dialer app that will need the user to select an
account (e.g. MMI pin) so we want to reuse this dialog.
+ Move dialog to ContactsCommon
+ Add a listener to the SelectPhoneAccountDialogFragment class

Bug: 17917937

Change-Id: I872dba36f0f53737398861ff5376cc07f0e11c7b
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
84389d3039c1afc66b24455b3a62dfa33e22232f 19-Sep-2014 Nancy Chen <nancychen@google.com> Display error dialog if no accounts are available to call from.

Immediately disconnect call if no accounts are passed from Telecom to
select from and no account is preset.

Bug: 17486242

Change-Id: Ia2e3f78a75783f6c838c0ed38fc68d8eb96cf7af
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
dc8688bcae1455c028508ee03485c36a65efd46f 17-Sep-2014 Nancy Chen <nancychen@google.com> Replace get*PhoneAccounts* public API methods with new method (3/3)

Hide getCallCapablePhoneAccounts and getPhoneAccountsSupportingScheme
because a third party app should not be able to see all phone accounts
registered.
Also pass available phone accounts for the user to select from through
Telecom to InCallUI so InCallUI will not be calling the Telecom API
directly to get these accounts.

Bug: 17510811

Change-Id: Ia0398ec35cc576b946a85a10f6f58a74fcd5191b
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
50dbb6eeca55cf78e0fd9eb132a26787d293620a 13-Sep-2014 Andrew Lee <anwlee@google.com> Update InCallUi to use telecomm DisconnectCause.

- Remove conversion of messages for dialogs and failures. This is now
done by Telephony.
+ Replace telephony DisconnectCause with telecomm DisconnectCause.

Bug: 17329632
Id: I8677eb2cda008bd91f852c1de96174dfe42f735f

Change-Id: I9e170537845a67ff9b14a38f5f3425de82648ab5
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
4b293f0f08030c97e1bb54d2f79ac2fb1a6e29ae 13-Sep-2014 Tyler Gunn <tgunn@google.com> Renaming Telecomm to Telecom.

- Changing package from android.telecomm to android.telecom
- Changing package from com.android.telecomm to
com.android.server.telecomm.
- Renaming TelecommManager to TelecomManager.

Bug: 17364651
Change-Id: Ie5ae18f51baa5da2eb9793785ad0c9d83b6343d1
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
7c5cee7e818e7447a248b7ca6cd17ebec28fcf10 02-Sep-2014 Tyler Gunn <tgunn@google.com> Add supported URI scheme to PhoneAccounts. (4/4)

Modify SelectPhoneAccountDialogFragment to filter the PhoneAccounts to
only those which can support the URI scheme of the call.

Bug: 17140110
Change-Id: Iccf69fd7360ae05264cec0c19cc82ec34d3137ee
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
3a7108ae5fc630730457957629b1115dcc991454 25-Aug-2014 Andrew Lee <anwlee@google.com> Restyle conference call manager screen.

+ Swap out/in new assets for end/split icons in the manager screen,
and the splash screen in the InCall screen.
- Removed unused conference call manager code, including things like
chronometer and the "done" button.
+ Replaced custom action bar in conferece call manager with standard
action bar.
+ Added contact image (does not open quick contact) in the list of
calls in the conference call manager. This is done with a lookup
using the contact photo manager, and required adding the lookup key
to the ContactCacheEntry.
+ Handled a missing Call.State case in CallCardFragment for calls
with state CONFERENCED which caused crashes.
+ Misc style changes on conference call manager: colors, sizes,
paddings.
+ Adjusted elevations so dialpad covers manager/secondary buttons.
+ Added ripple to manager/secondary buttons.

Bug: 15862303
Change-Id: Iab9b6421d5a1ea69cd951a459d46c065f9456a8f
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
1da81ce59cfbebd4e53fdfd2011e859069120de7 23-Aug-2014 Andrew Lee <anwlee@google.com> Move "manage conference calls" button above photo.

- Remove it from the CallButtonFragment. This meant that related
logic was removed from CallButtonFragment/Presenter, and similar
logic was added to the CallCardFragment/Presenter.
- Delete old groups icons. (new ones added in ContactsCommon)
- Delete the extra_button_row logic.
+ Replace extra_button_row with a dedicated "manage conference
calls" button, and added to call card content layouts.
+ Style the new button to be similar to the secondary call info.

Bug: 15862303
Change-Id: I2b4e1a3a30422c7d5e9c01479f13291a785d85f3
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
5edb613e89236f8a10e99533a67b5c2006749dcb 19-Aug-2014 Nancy Chen <nancychen@google.com> Circle reveal for account selection dialog and check for valid account.

Touch animation reveal should happen from where the user touches the
screen. This change deals only with the account selection dialog case
(and should be the last one).
Also if phoneAccountSelected in TelecommAdapter is called with an empty
accountHandle, log an error.

Bug: 17124195

Change-Id: I381ec7e377ee3be981c4e8b63b5253d75561b6bf
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
c44f654b992c6ab8a4acff9cb5aa2678c58755d9 18-Aug-2014 Andrew Lee <anwlee@google.com> Move hold "bar" to the bottom of the screen.

+ Adjust FAB positioning scenarios; scale in and out instead of
translating when showing/hiding.
+ Translate FAB depending on whether secondary call info is shown.

Bug: 16399233
Bug: 15862303
Change-Id: Ibbf89f717a38f2ed6d4d995544e290da4d4d7462
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
d58311e2fff9a7143438ad005e5b3651c3e507a5 18-Aug-2014 Andrew Lee <anwlee@google.com> Merge "Position/size adjustments to the floating action button." into lmp-dev
45c0059f18883ebda7133d92f5828b5859d22934 15-Aug-2014 Andrew Lee <anwlee@google.com> Position/size adjustments to the floating action button.

+ Use new theme color for dialpad tints.
+ Translate FAB higher and make it 128% scaled in InCallUI.
+ Add methods so that dialpad is shown/hidden, FAB transitions
to/from its normal position and normal scale.
+ Translate button in/out when enabled/disabled.

Bug: 16399233
Change-Id: Ia8f56f494a89927c25657a75cfcca147c34c6c98
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
70d1235b4aec1c489468d973424ae3c1535dfffe 16-Aug-2014 Santos Cordon <santoscordon@google.com> Merge "Do not show error for a canceled call." into lmp-dev
c0d0810072f9afdffc4eb51e4d78b30879c2a6a7 16-Aug-2014 Santos Cordon <santoscordon@google.com> Do not show error for a canceled call.

Bug: 17067923
Change-Id: I89bcd3fd743da544957bc2af59126edf5a44548b
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
a920437f6af7b49669518d6e145ca444c6870560 15-Aug-2014 Yorke Lee <yorkelee@google.com> Fix NPE in InCallUI

If there is no call for some reason, just ignore the touch point.

Bug: 17065151
Change-Id: Ib208e08465cf8247d3fded6df323c66ccf7778d8
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
043bfe40b226819a0497c928dc3f40444731be3c 08-Aug-2014 Nancy Chen <nancychen@google.com> Reveal InCallUI starting from the user's touch point

InCallUI expanding circle should start where the UI made the call.

Bug: 16396523

Change-Id: I1c7775fcbe684a51376f5a1b744bdd06f26e7bbf
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
cf1c6b805796866e4c84ca52ca00b77bd0785200 13-Aug-2014 Tyler Gunn <tgunn@google.com> Merge "Correcting dialpad animations in landscape (2/3)." into lmp-dev
434e1a05ca5578f517058f39999b34db504b33c2 12-Aug-2014 Tyler Gunn <tgunn@google.com> Correcting dialpad animations in landscape (2/3).

1. Fixed slide in/out animations for RTL locales.

Bug: 16463723
Change-Id: I526efec7795c891cbb4fa27776bb8be7d26ac114
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
350551badce5c8e47d5c32cb805456a2d0b18334 12-Aug-2014 Tyler Gunn <tgunn@google.com> Improvements to InCall UI view inflation performance.

1. Flattened the view hierarchy to remove a few layers of nested frames.
Removed call_card.xml since it was essentially just nested frames.
2. Deferring inflation of the dialpad until it is actually needed.

Bug: 16594582
Change-Id: I34a03dc3d95431bd0ba1d784a64ae3929f240d46
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
7cde80445d5e237ed4b1b6795f68b9f5b7eadeb8 06-Aug-2014 Yorke Lee <yorkelee@google.com> Set correct interpolator for dialpad animation

Bug: 16659277
Change-Id: Ia8c61220b9278105a59894d326f55fcd309eb5db
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
350fff554bf7ed5b9e91985935488771156953ab 29-Jul-2014 Tyler Gunn <tgunn@google.com> Various changes.

1. Add InCallCameraManager to track active camera and manage camera
capabilities.
2. Use new camera manager in CallButtonPresenter instead of directly
accessing camera.
3. Implemented new camera setup flow between incall and telephony.
4. Landscape video call support (actively rotating while video is running
crashes InCall at the moment, but you can start it in portrait or
landscape fine). Includes ensuring layout works properly with RTL
locales.
5. Added progress spinner to CallCardFragment, useful to show when an
upgrade to video is pending.

Bug: 16012946
Change-Id: Iff33422eec3a92d8cbeb217f5be2f1c9c5f3e98d
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
6e1588189961c4aab0f036dd781ca0f218cbbe28 25-Jul-2014 Santos Cordon <santoscordon@google.com> Add more disconnect causes 4/4

Bug: 15692074
Change-Id: Ib94c33fac8450b70e53dbe12d71f41777e9e140c
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
af9eefb9174cdb7a4824fc0a8ed6e85754acd0bd 09-Jul-2014 Nancy Chen <nancychen@google.com> Bring up dialog when an account is not set for the phone call

If an account default is not set, the incall ui will display a dialog to
allow the user to select an account for that particular call.

Bug: 16243703

Change-Id: Ic97c50d1116dd11ef900c4d20c6439683ed60e06
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
8d38cf6761ae048b1a42504f1b59e872cf43df47 12-Jul-2014 Ihab Awad <ihab@google.com> Implement new In-Call Service interface

Change-Id: Ic1eb6fc98e7f030885596c9c40f0ed4f0e34e28b
(cherry picked from commit c90543e6ef64b16b4c1bb240494152bc513f1e36)
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
208071f50f93cd4968161c3ecfbb505f71c63934 25-Jun-2014 Yorke Lee <yorkelee@google.com> Fix NPE when referencing child fragments

Child fragments are now added to the parent fragment's
fragment manager due to a change in framework behavior (ag/489316).

As a result we now need to use the child fragment manager to obtain
references to child fragments.

Bug: 15872707
Change-Id: I351cfbee780129448c1a748716a3c4895fca67e7
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
94b777fa54d1f41bfe5bcb9af9aa7b84d203f3fb 19-Jun-2014 Sai Cheemalapati <saicheems@google.com> Update Emergency Dialer to match Dialer (4/7).

Emergency dialer style updated to match style in Dialer and
InCallUI.
Moved all dialpad resources to PhoneCommon.

Change-Id: I14a56573d8b3e69b2a4fe3675540e58bf4418df0
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
3c57ccad4f6bf55335ac60e42f0ce7788047644b 20-Jun-2014 Yorke Lee <yorkelee@google.com> Revert "Update Emergency Dialer to match Dialer (4/5)."

This reverts commit 68600983bd397729ded98d701c080d617f39813d.

Change-Id: I2143fa849b02644624d09e75aafae7346ec20f36
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
bf66e17262f968a91152a33139cd7cfb68dc1ccf 19-Jun-2014 Sai Cheemalapati <saicheems@google.com> Update Emergency Dialer to match Dialer (4/5).

Emergency dialer style updated to match style in Dialer and
InCallUI.
Moved all dialpad resources to PhoneCommon.

Change-Id: I2034949eeacd56c01b7babf921fb980a52fe9e93
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
06c7da3a55a2e06696a0dac8490f6dc84e8ff94e 11-Jun-2014 Sai Cheemalapati <saicheems@google.com> Fix key slide up animation on rotation in InCallUI.

Slide up animation no longer occurs after rotation when
dialpad is already revealed.

Change-Id: I5e75bae5df291dcd15ad2c3e346157f03a404e11
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
dfdcdbdf96b31ac529e907e54e4f1b10b9e01179 10-Jun-2014 Sai Cheemalapati <saicheems@google.com> Dialpad save on orientation change in InCallUI.

Dialpad now saves and restores entered text after
an orientation change.

Change-Id: I2616a9eeb60823a247fb3ded09f658bf3559b0df
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
452823e36677a4a0f0083497b67c9d5359d72a34 07-Jun-2014 Sai Cheemalapati <saicheems@google.com> Updating Dialpad animation in InCallUI.

Dialpad now saves orientation state.
Animation now matches duration and direction in Dialtacts.

Bug: 15386162

Change-Id: I6b8f23147c9be956d16c758a6a51a9fa3bb47ec6
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
afedca374ff6e13291fa681a71a1799e2d205a05 05-Jun-2014 Sai Cheemalapati <saicheems@google.com> Moving FAB logic to ContactsCommon.

Moved FAB to ContactsCommon.
Cleaned up FAB Controller.
Replaced implementation of FAB in InCallUI with controller.
Prevented animations from happening again in InCallUI on
orientaton change. FAB also repositions correctly on
orientation change in InCallUI.

Bug: 15386162

Change-Id: I8ea4ef8acb49a83dabe5c18223ce5bac28260824
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
20715cbb1d1d3f508642fde24f66c7db873e95a1 04-Jun-2014 Ihab Awad <ihab@google.com> DO NOT MERGE. Implement connection error dialogs (4/4)

Implement reporting of connection errors from ConnectionServices through
Telecomm to the InCallUI.

Bug: 15195720
Bug: 15117141
Change-Id: Ie466efb8badaab6785fb474c1c3d843a3234757a
(cherry picked from commit 8656969cd1a34c01a5f2a2d254f124a63df362df)
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
8ef5cf3987ab9f7988d0ce7b033270095e05481d 15-May-2014 Yorke Lee <yorkelee@google.com> First pass at Dialer to InCall transition

* Modify InCallActivity to perform an animation only on a new outgoing
call
* Add an animated scrim to call_card.xml that serves as the backdrop
of the full screen animated reveal
* Add resize animation
* Add circular reveal animation

Bug: 14820894

Change-Id: Iaa7e87e8a96dcd269e444a40eadac9d912625c01
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
7b2248bfff11c50e208908cb74b5f94b3ad7a3c0 01-Apr-2014 Sailesh Nepal <sail@google.com> InCallUI - Use String IDs

Change-Id: Ibacb79658c146466d4f23bfcf7af0ebfb6e84dd0
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
248a6687e8075e9730217be73c54ee4f95501a0e 01-Apr-2014 Sailesh Nepal <sail@google.com> InCallUI - Use custom object to track Calls

This is the first step in completely moving away from Telephony.

This CL creates a custom Call object. Currently this is just a
copy of the telephony Call object. I'll update various fields
in individual CLs.

This CL also deletes the old Telephony services.

Bug: 13643568
Change-Id: Id1860a5df9706f2a7fddd40e70f0d693af7b04bd
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
a3568bb2f52edacf85a63604011f145016bfed9c 31-Mar-2014 Andrew Lee <anwlee@google.com> am e1c9e81c: Merge "Don\'t show wait dialog if the activity is paused."

* commit 'e1c9e81cd5d481161944122a4f9b9be486656464':
Don't show wait dialog if the activity is paused.
80ba6e3503aef5ccc691ec6cee579ce67203c0bb 31-Mar-2014 Andrew Lee <anwlee@google.com> Merge "Don't show wait dialog if the activity is paused."
e30f7aeb2d251023b21927a86dd723a299908bb6 29-Mar-2014 Andrew Lee <anwlee@google.com> Don't show wait dialog if the activity is paused.

Instead, save parameters for the call to show the
PostCharDialogFragment to member variables if InCallUI is not the
foreground activity. When the activity is resumed, show the
PostCharDialogFragment with these saved parameters.

Bug: 13177104
Change-Id: I95629bfdece2f6f9efed2aa06d01b53791ff756d
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
f965ebbdfddf7070ab1807a49b203e76e58b7e4e 29-Mar-2014 Colin Cross <ccross@android.com> resolved conflicts for merge of 063fa2d9 to master-nova

Change-Id: Iaa921a78fb59185404d24b6a4245ae2cb691ea5f
917bb0e20a146a3ab4f7b0cebc4465d0806d0181 28-Mar-2014 Colin Cross <ccross@android.com> manually merge 9b4962cb into master
f66796c5ed01ec360a689a7639b6295baa0ce3f6 28-Mar-2014 Anders Kristensen <andersk@google.com> resolved conflicts for merge of 5feee861 to klp-modular-dev-plus-aosp

Change-Id: I5e8217fbe5336ebfa91eddf11e7f46465be8f751
479c50f6d4fac0fa44210c9bad4346f64dba3f1e 27-Feb-2014 Anders Kristensen <andersk@google.com> Remove duplicate call disconnect codes.

The Android code base defines call disconnect codes in three places:
- android.telephony.DisconnectCause
- android.internal.telephony.Connection.DisconnectCause
- com.android.services.telephony.common.Call.DisconnectCause

This CL consolidates the code to use the integer codes from
android.telephony.DisconnectCause everywhere.

Change-Id: I84a3fd5182a51d07fc7d81076e4b2c15ff26c61c
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
511e12c5f4747643c9683114038e129363a95277 25-Mar-2014 repo sync <ihab@google.com> DO NOT MERGE. One-time patch change to resolve differences where
klp-modular-dev became out of sync with klp-dev due to failures of
automatic merges. We decided it is far better to submit this to fix
the build rather than spending a bunch of time doing forensics on the
history of automated merges into klp-modular-dev.

Change-Id: I66ff89237b3308a919f711bc10425a7b9688c24b
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
53c3c2496804b41a4b520293afbeeb8edc31061e 25-Mar-2014 Sailesh Nepal <sail@google.com> Merge "Hookup audio mode to InCallUI" into master-nova
e0271c5a55fdd5c2847646d4a13ded71d100572f 24-Mar-2014 Yorke Lee <yorkelee@google.com> Fix for in-call dialpad not sliding full length of screen

Bug: 13189041
Change-Id: I5b5ceda11d1d5b89141255f867deb8688c95f5d4
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
c58da178877a4d42cb6dab9ad67d8cf86d030e1a 19-Mar-2014 Sailesh Nepal <sail@google.com> Hookup audio mode to InCallUI

Change-Id: I0f79cf4dede272811ef88540a3acdb0a6f332948
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
900988c67aa4276f6e2675e05d35db88f78c70aa 10-Mar-2014 Yorke Lee <yorkelee@google.com> Fix IllegalStateException in InCallUI

InCallActivity.displayDialpad can possibly be called after
onSaveInstanceState, so we need to use commitAllowingStateLoss
instead of commit.

Bug: 13396054
Change-Id: If2f61b16d97db159bebb5ddb5d1feecb87765386
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
5510dea8156517d56cf2104e113f9f9357d42b61 03-Mar-2014 Ihab Awad <ihab@google.com> Update dialpad to new look and feel.

http://b/13189041

Change-Id: I26b306300e11fd6830d40b51a705c472c89925f4
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
b55b50d78fb272268e14d26b7e8f660e97c16adf 15-Nov-2013 Chiao Cheng <chiaocheng@google.com> am cd29be4c: am fa7dd751: am 59517317: Merge "Add logic to dynamic dismiss keyguard." into klp-dev

* commit 'cd29be4cd60d6818b58a5927d452aaf52da43f6b':
Add logic to dynamic dismiss keyguard.
21256c08138c6700e47d7ea0517ecd001d681644 14-Nov-2013 Chiao Cheng <chiaocheng@google.com> Add logic to dynamic dismiss keyguard.

If the user rejects or misses call, keyguard should not be dismissed. Check for
active or outgoing call.

Bug: 11580109
Change-Id: I1d83041d38ae60dd835bb967ae307791b605cf21
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
d27f170a22d9374cadfa2d65a8e920708ef88f9d 07-Nov-2013 Sam Lin <samlin@google.com> am 84fa4c5b: am 4fa3514d: am 42d55df9: Disable HW BACK key at the incoming-call screen

* commit '84fa4c5b56882e21f89feb71cd6d2ae0ae6682ad':
Disable HW BACK key at the incoming-call screen
10e25b46bbb6ebb9a44d4cb6b6884cccaf1c46f5 06-Nov-2013 Sam Lin <samlin@google.com> Disable HW BACK key at the incoming-call screen

For devices with HW BACK key, it should be disabled at the incoming-
call screen. Therefore, a user will not leave the screen by mistake.

Bug: 11548503
Change-Id: I2f4f875c23687afe52a5f816550b9383b9a852c8
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
27ef1e6c1ae0a0b6b15c7ff83cbb7396d7bd976e 19-Oct-2013 Christine Chen <christinech@google.com> Removing private dependencies in InCallUi

- This CL addresses most of the private API calls in InCallUi.
- This CL removed Android.mk as we are not building InCallUi.apk
separately anymore. Changes to make an unbundled app will go into
Dialer, GoogleDialer, and Contacts apps' makefiles.
- Separated CLs will add libphonenumber, libgeocoding, and util classes
for TelephonyManager and PhoneNumberUtils.
- The only thing left for InCallUi is to unbundle ProximitySensor.
Currently PowerManager's functions to deal with the proximity sensor
are all private. It will take a rather substaintial amount of work to
implement the proximity sensor functions ourselves (read proximity
sensor event values, ask the screen to turn on, etc.). So we should
rather push to get those functions into the public API.

Change-Id: I18b3c52adb41c6131c1eb3c07ce32ebd56d0cc59
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
d88c3fbaffc0330fd2bb6ce48047680d9540229b 09-Oct-2013 Santos Cordon <santoscordon@google.com> update dialpad state more often.

Noticed while testing proximity sensor that we do not update the dialpad
state sufficiently. We have increased the amount of places in the code
where the dialpad comes up since we first introduced the proximity code
and the callbacks wheren't updated.

This manifested in situations where the proximity sensor was off at time
when it should have been on.
Repro: be in a call, answer a second call (call waiting), bring up
dialpad, hangup second call. The dialpad would go away but the prox
sensor still thought it was up.

This change moves the callback to proximity sensor to the exact
place where dialpad is shown/hidden in order to catch all instances.

bug:11006867
Change-Id: I7651b4769d035b9bc68d226da3ffb3aea8986e58
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
abbeb67a123055af1d140bb8aff259dc210ccfd0 08-Oct-2013 Christine Chen <christinech@google.com> Adds support for texting after phone disconnects.

Bug: 11111553
Change-Id: I8abcae4439e7b9697d7b4a4335e093d7ad13a1b3
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
27b776cad2792368ddc2e61caba0be26352bc807 26-Sep-2013 Yorke Lee <yorkelee@google.com> Show call ended if call disconnects while dialpad is showing

Bug: 10899209
Change-Id: Iefdef1890f8968fda57eb5f3286b97228906b596
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
69e35e542e8d0a072da721ea758d3d4aa91c7ea0 24-Sep-2013 Santos Cordon <santoscordon@google.com> Merge "Add generic error code dialogs for failed calls." into klp-dev
3557608a38f672c49829d3b2c6e235d8d971a84d 24-Sep-2013 Christine Chen <christinech@google.com> Merge "Adds hardware keyboard support for DTMF" into klp-dev
9ccf74a1e34b0a08b8d74cbb5a494eea879fd15e 21-Sep-2013 Santos Cordon <santoscordon@google.com> Add generic error code dialogs for failed calls.

This change listens for disconnected calls and if the disconnection
cause matches a set of predefined causes, we show a dialog to the user.

New dialog messages:
- You can\'t make outgoing calls while call barring is on.
- All calls are restricted by access control.
- Emergency calls are restricted by access control.
- Normal calls are restricted by access control.
- Outgoing calls are restricted by FDN.

Several changes were necessary to support this:
1) Dialog code (InCallActivity.java)
2) Notifications for a new disconnect (CallList.java)
- previously we sent a large update for ondisconnect, now we just
send the notice for that particular call. InCallPresenter was
written so that the same thing that used to happen still happens.
3) Check if we need to show a disconnect dialog when the UI comes up.
- I found that FDN disconnection happens so quickly that the
disconnect came before the UI was up, so this was necessary.
(InCallPresenter.setActivity())
4) CallCard should be initialized with disconnecting/disconnecting calls.
- Call Card presenter intializes itself when it starts up using live
calls, but as with the FDN case above, a disconnected call should be
used if no live calls exist. (CallList.getFirstCall())
5) If a dialog is up while an incoming call comes up, dismiss it
automatically so that users can see incoming UI.
- (InCallPresenter.startOrFinishUi())
6) Keep the UI up as long as there is a dialog for the incoming call.
- Previously, UI would come down once all calls were shut down but
in the case of present dialogs, we want it to stay up.
(InCallActivity.finish())
- When the dialog is dismissed, check if we want to tear down UI.
(InCallActivity.onDialogDismissed())
7) Only tear down UI once we are in the NO_CALL state.
- We used to tear down when the activity was null (closed) and the
service was disconnected. This is problematic because a call that
immediately disconnects (like FDN errors) would shut down the service
before the UI had a chance to come up. We added a check to the
conditional for the state NO_CALL before shutting down.
(InCallPresenter.attemptCleanup()).

bug: 10680210
Change-Id: I1fd33dd53dc0eec5a02b7a940cfd018cec3d20c0
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
c60103d277b6656729b8f8c3f7168da31c7bffa7 21-Sep-2013 Christine Chen <christinech@google.com> Adds hardware keyboard support for DTMF

Bug: 10808399
Change-Id: Id12acee7baf11335916a38c50a266f83f578e0bd
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
cd72227f331b862d70c1271b1c9a5f3a1ab30bee 21-Sep-2013 Yorke Lee <yorkelee@google.com> Read back contact information in in-call screen

This changes talkback behavior so that it behaves the same way
as in 4.3, other than reading the unnecessary description of the
contact's photo

Bug: 10844641

Change-Id: I2a2829d1a9650bf18d3b1d98d6ddc860fe9f8d27
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
1010270113596506f18443196c6d3e078ff3eecb 20-Sep-2013 Christine Chen <christinech@google.com> Addressing finished and postponed TODO(klp)

Bug: 10605909
Change-Id: Id7594b306d23d4bd5d7a6983f2dbe524591a0d69
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
7b35331be8f517a072e2d38603f82caba49d9d91 19-Sep-2013 Santos Cordon <santoscordon@google.com> Merge "Add support for hardware CALL button." into klp-dev
2acdea2c70d7fc470509b8d6ac3c5e7273544bea 19-Sep-2013 Santos Cordon <santoscordon@google.com> Add support for hardware CALL button.

bug:10809304
Change-Id: I8b6c5e27a37624f38df965e2ad001703cf558708
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
82d64da6612291b8a73db8e452c0b3a1c26abf92 19-Sep-2013 Yorke Lee <yorkelee@google.com> Merge "Make back button exit ConferenceManagerFragment" into klp-dev
ba7188997ad35d48247b8e9d93151a2d714712ca 19-Sep-2013 Yorke Lee <yorkelee@google.com> Make back button exit ConferenceManagerFragment

Bug: 10808785
Change-Id: I8acf38bfa06bb58a778c45b107ff49eead37f25b
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
1a495815c3c3fb3ca4fad29feb7ffb5000c1b264 18-Sep-2013 Christine Chen <christinech@google.com> Removing finished TODO(klp)

Bug: 10605909
Change-Id: Ia4bfcc385d4bf36cbc3b401521714958fd829c7e
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
91eb44029658695e655a20b06441628e6f151c11 13-Sep-2013 Makoto Onuki <omakoto@google.com> b/10699042 show dialpad when connects to voice mail.

Also now "Use touch tone keypad" in the dialer works, and
it automatically un-holds if there's only once call and it's
on hold. (which was a regression too.)

Change-Id: Id8eeb2737ffa2223acfbf9a8a30d957599c9db36
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
a060bb9eac9ea333b4a3e3ff46631b578b9cd6ef 11-Sep-2013 Christine Chen <christinech@google.com> Removes call buttons when there is no active call.

Bug: 10678069
Change-Id: Ic9356dff4a1f00fb1aea01f3bd553e2e8844ed83
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
3e6e27d27d79fa027f39c46ea6333b876220bfc7 09-Sep-2013 Santos Cordon <santoscordon@google.com> Merge "Improve lifecycle ordering for InCallUI" into klp-dev
1f63d2d8e8db3616c16886952813b3d0473216e7 05-Sep-2013 Santos Cordon <santoscordon@google.com> Improve lifecycle ordering for InCallUI

This CL rearranges startup and teardown of InCallUI to reduce the number
of race conditions resulting in runtime exceptions and app crashes.

At a high level this CL fixes the following:
- TeleService should be able to unbind and rebind at any time without
causing problems in the UI. (Fixes to InCallPresenter)
- On weird occasions we were seeing secondary UIs pop up if we
rebound while the older UI was still up and one of the UIs would be
orphaned on the foreground.
- call notifications can be sent during (1) activity startup, (2)
activity lifetime, (3) activity destruction, (4) no activity...and
nothing should crash.
- Lots of crashes when notifications came during destruction and
startup. (Fixed setup in InCallActivity + presenters, and
startup/teardown ordering in InCallPresenter)

Details:
(1) InCallPresenter handed out instances of member classes to the UI
classes, but upon unbinding and rebinding, the classes were
recreated. This meant that the activity which was potentially still up
had stale versions of AudioModeProvider and ProximitySensor.
- Classes created/used by CallHandlerService are now singletons so that
they do not change from one bind to the other. If the service tries
to initialize InCallPresenter while the activity is still up (and so
we haven't yet torn down) we reuse the reuse the previous
initialization since there is no need to recreate them, and classes
in the Activity dont ever become stale.
(2) We were recreating new copies of InCallActivity on updates that
occur while tearing down the previous activity. This caused weird
errors where second emptier activities were up after all calls ended.
- Solution to this was to ignore all updates while we are finishing the
activity. When the activity is finally finished, we check if we
should bring up a new activity in case some update came while we were
finishing.
(3) We set listeners on presenters from a parent class that wasn't aware
of UI transitions.
- All Presenters are not responsible for setting and unsetting their
listeners. This allows them to unset them before their UI goes away.

+ renamed HIDDEN to NO_CALLS as hidden was confusing to developers
which associated the term with foreground/backgroundness of the app.
+ Improved some logging

bug:10573125

Change-Id: I2d1af6a6e972b3b3bd93af839054e879f0b74b4f
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
b768e13959a69836096eeddd9a397189e50af959 07-Sep-2013 Chiao Cheng <chiaocheng@google.com> Port dtmf post dial wait feature.

Bug: 10459289
Change-Id: Iee799bd72aac9bb86e2f414e68f2643d8ba1c563
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
5345442d7238c1db00dc8d55a49f7f5dd713d994 05-Sep-2013 Christine Chen <christinech@google.com> Adds manage conference call UI

Bug: 10334739
Change-Id: I46a52ec967a1c496dd4b797f2064d9099670711f
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
b3dcd58432b0468ea9d69757f38051b94f2c05e4 29-Aug-2013 Santos Cordon <santoscordon@google.com> Move initializeInCall to onStart().

UI for presenters are not ready until after onViewCreated().
However, initializeInCall gets calls before that as as part of the
activity's onCreate. Move this initialization to onStart so that the
initialize process happens only after all the UI is ready.

bug: 10544690
Change-Id: I6f0db720ff8a5436f560850af7fb1c1fd7795ae5
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
42373eb59cbef15ec61ebb5c919031f293291a53 23-Aug-2013 Chiao Cheng <chiaocheng@google.com> Major fixes for in call to work with reverse number lookup.

- Separated caller info data into CallIdentification and switch callbacks to use
it where call state is un-necessary.
- Changed mCallList.update() method to be onIncoming().
- Catch all exceptions from service methods so errors do not vanish.
- Fixed bind failure cases which led to DeadObjectException.
- Changed local contact lookup to only occur for incoming calls.
- Fixed CallCardPresenter to start contact search upon isntantiation instead of
waiting for next call update.
- Convert ContactInfoCache to singleton to avoid race condition where it's not
initialized.
- Handle cases where primary call may be null when we find a contact.
- Fixed race conditions in CallButtonPresenter where audio mode is being set
before ui is ready.
- Fixed race condition in AnswerPresenter where state change was being called
before ui is ready.
- Changes to CallCardPresenter to support lookup for conference calls.

Bug: 10413515
Bug: 10390984

Change-Id: I9fc4f2f35e8f5aad33c301b3c5c93132634cb63c
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
a4bd83ad639b349fa16dbd07225017fcbf6ed550 21-Aug-2013 Chiao Cheng <chiaocheng@google.com> Protect all logging statements.

- Rename global logger so it can be a drop in replacement for framework log
class.
- Remove imports of android.util.Log

Bug: 10411948
Change-Id: I377625263b16c4f9408c79d5c533a1810fa6cde7
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
e7a567eea1613627e177c7445549abae0c89a6ee 21-Aug-2013 Santos Cordon <santoscordon@google.com> Adding proximity sensor code to in-call UI.

Many of these changes are verbatim code copies from what used to exist
in services/Telephony. The rest of them are straight logic copies that
should do the exact same things.

New class ProximitySensor manages the proximity behavior. It receives
device state from InCallPresenter, AudioModeProvider, CallButtonPresenter,
and AcceleromterListener, the last of which is a transplanted class from
services/Telephony.

ProximitySensor listens for the following events:
1. Change in the call state
2. Change in the audio mode
3. Change in the device orientation (from AccelerometerListener)
4. Change in the dialpad visibility
5. Change in hard keyboard open/close events.
6. Change in foreground position of InCall UI app.

It uses these to figure out when to enable/disable proximity sensor.

CL that removes code from TeleService: I77e0d15ad1a8f5a090c1368db98edaa246dbcd72

bug: 10366512
Change-Id: I5c2ea6daa9443e7ad77c67f272bc0bafdb060e5e
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
cab6935f7c42b32b128150ddbde818a902f1ca38 20-Aug-2013 Santos Cordon <santoscordon@google.com> Support connecting and disconnecting from Phone app.

Phone app now connects/disconnects from the UI when there are no active
calls but UI did not previously support being disconnected. This change
adds the following functionality to support dis/reconnection:

- CallCommandClient now supports setting new ICallCommandService
instances.
- CallCommandClient now checks if mCommandService is null before
executing a method.
- CallHandlerService performs more careful ordered cleanup with
destroyed including removing pending messages and clearing any
existing calls from the call list.
- InCallActivity now performs tearDown of the presenters with onDestroy
instead of finish() to reduce NPE instances.
- InCallActivity not notifies InCallPresenter when is finishes, and not
just when it starts.
- InCallPresenter tears itself down after two things happen: the UI is
destroyed and the service is disconnected.
- InCallPresenter now issues a full-screen restart of the UI if the
UI was previously hidden (except for new outgoing calls). This allows
the UI to come back to the foreground if it was in the foreground when
the app went down.

The above changes also now protect against the phone app crashing or the
incall UI crashing.

bug: 10363682
Change-Id: I9b785f906f29015827e8e53e64cd5f5c72cd7981
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
cea8155e7532f50953353500980d655816ebc121 13-Aug-2013 Santos Cordon <santoscordon@google.com> Use shared contact info cache to get data for the notification.

Move around where ContactInfoCache is created so that StatusBarNotifier
and CallCardPresenter will use the same shared instance.

Change-Id: I6e0a7c48aa7a35a0f1a52b399eb127d69f41a879
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
250f3792c16e15968b96fde2e52c434013b44d35 10-Aug-2013 Santos Cordon <santoscordon@google.com> Adding suppression behavior for in-call notification.

This suppresses the notificaiton if the call isn't active of outgoing.
We also suppress the notification if the user is currently in the
in-call screen.

...except during incoming (ringing) calls...we always show it for ringing calls.

Change-Id: Ib75545339376c62c975c390298ef9567d733b8e3
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
b8eedb3b9796873eaa22847205239a51092f1a43 09-Aug-2013 Santos Cordon <santoscordon@google.com> Singletons are hard, lets go chopping...them out of the code.

After this change, there remains only one singleton (InCallPresenter).
The whole system needs to be reworked in a better manner in terms of
build up and tear down.

Change-Id: I393ec648526bc28a3ae709004aed6d4627670549
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
e067a78c4c0817e9e81c41327460aedce7f1091d 08-Aug-2013 Santos Cordon <santoscordon@google.com> Improve outgoing call sequence

Changes:
- When we get a new outgoing call, fire up the UI (without the
notification) by sending it an ACTION_MAIN intent.
- Fix up the InCallState-setting code in InCallPresenter to be a
little cleaner and accomodate new OUTGOING code.
- Add missing call to set HOLD Ui button
- Fix an occassional NullPointerException in CallCardPresenter.java

Change-Id: I557a777287d9ab25ef1447be63b5da080f1b2532
(cherry picked from commit 4d5c29af103c13e78568dc772d26eb56a3e6d3e1)
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
e7097d78980eccdc2425266db92a3e88f4f5c1a5 03-Aug-2013 Christine Chen <christinech@google.com> Dialpad Ui elements for InCallUi

Change-Id: I7b230cc46993493459923c436a643910026cf6a6
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
1b60e8c70bdcbf07c3efab310790134ecf81d4fd 05-Aug-2013 Santos Cordon <santoscordon@google.com> Notifications in Phone (part 1)

- Added StatusBarNotification class to handle notifications
- StatusBarNotification has tons of copied comments from
NotificationMgr.java. Also has minimal code to make the notification
pop up (without call-specific data).
- Moved the UI start-up code from InCallPresenter to
StatusBarNotification. Incoming phone calls need to display an alert
above immersive (fullscreen) foreground activities and the way to do
that is through notifications. The old phone app did the same
thing...finally bringing over that functionality.

Change-Id: I3324503e0d7bb1de00d8e7fab72d4b40519491dd
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
b585c66c5fbf485256ef8fef5b0d06f51d8d9bf5 05-Aug-2013 Santos Cordon <santoscordon@google.com> Adding a central logging class.

Change-Id: I24f68d5ebcfed2740f9645736c35edf17efb4769
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
7ac6cb331919db2a3a8985e4cb3299b309d9012a 05-Aug-2013 Santos Cordon <santoscordon@google.com> Improve InCall State management

CL Contains the following changes:
- InCallPresenter now manages an overall in-call state
- Other presenters now listen to in-call state changes instead of
getting updates from CallList directly.
- Changes AnswerPresenter to a static fragment instead of dynamically
loading it. It makes code easier and more aligned with other fragments
used in the class.
- Presenters now save the appropriate call and use callId() for commands
sent to the telephony layer.
- Extra logging in CallList
- cleaned up the startup sequence in InCallActivity and moved everything
to onCreate instead of onCreate & onResume

Change-Id: I4ce4182eefcc134bfa16c33be8fe4aefc041f563
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
9a43aba1cbbff7f7d443afa327de5c5cd602e39f 03-Aug-2013 Santos Cordon <santoscordon@google.com> Fixing incoming call sequence, adding InCallPresenter

Moved handling of AnswerWidget from AnswerPresenter and into the new
InCallPresenter class.

InCallPresenter now also manages a high-level in-call UI state to be
expanded in subsequent CLs.

Change-Id: Ia4fee84db68f7eaedea307b25329dadb8cf754e5
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
75c86b55d45b1725c46ed2e5d77c9c43fcfd93da 01-Aug-2013 Santos Cordon <santoscordon@google.com> Adding multi-call support.

Before this change, the UI came up when we were notified that a new call
came in, but we did not actually look at the call state, etc. This
seemingly worked while we only supported single calls but did not scale.

This change does two main things:
a) Plugs in CallList into the presenters so that they can perform their
logic based on the actual state of the calls (necessary for multi-call
support)
b) Adds Secondary CallInfo UI to the Call Card so that we can display
information foreground and background calls.

As a result of (a) from above, a lot of changes you see will be to
Presenters, which now take their cues from CallList and update their
Ui's accordingly. A problem with this approach is that the presenters
(callcard/buttons/answer-widget) perform their changes independently.
A subsequent change will consolidate interactions with CallList to a
Presenter-Manager class and away from the presenters.

Change-Id: I89d1926fa1eef6f10d897d2ce360f666c8f341f8
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
c2b430394ac612ba4dd455fb988e29bfcc4d5c5f 31-Jul-2013 Santos Cordon <santoscordon@google.com> Adding simple number data to callcard

This CL allows the number to be displayed in the CallCard.

Previous interaction:
CallHandlerService->CallList CallCardFragment (isolated, no data)

New interaction:
CallHandlerService->MainHandler->CallList->CallCardPresenter->CallCardFragment

1) CallHandlerService.MainHandler: executes remote method calls on the
main thread.
2) CallList: Added support for listeners.
3) CallCardPresenter: Presenter layer for fragment. Listens to CallList
4) CallCardFragment: Gets real data from presenter, displays phone #.

Change-Id: I6de3a9da15b69d44826c3226701eed6a1b86239c
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
e58788a9fc47164e3586e862df1427b89cbe02db 25-Jul-2013 Chiao Cheng <chiaocheng@google.com> Finishing in call screen when call ends.

Change-Id: I80220deb47ec17fbfb017795f916ba0822ea41da
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
a152b4605cd8f441257f8b561fb8b1473e34c8a9 23-Jul-2013 Chiao Cheng <chiaocheng@google.com> Integrating mute and speaker buttons.

* Adding base classes for presenter, ui and fragments.
* Moved common presenter integration logic into base fragment.
* Adding presenter to handle button logic.
* Integrated disconnect and text from glowpad to presenter.
* Changed in-call buttons to be invisible so they do not show under transparent
glowpad.

Change-Id: I446db149769b5cf1abce960ecede01effeabfe1e
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
550f92b42a5387875d994a9b72050eaec2018649 20-Jul-2013 Chiao Cheng <chiaocheng@google.com> Adding call card and buttons to UI.

- Created a fragment for call card and a fragment for UI.
- Adding corresponding button images.

Change-Id: I5facacd3a4346ab9d9ec2a67a2742dc27dbf5583
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
f09116f03ffed67363438f32682e692016876321 19-Jul-2013 Chiao Cheng <chiaocheng@google.com> Connecting answer call action in UI to service.

Also starting pinging animation for glow pad.

Change-Id: Ifac94582b8448c288a07577db02633bf9452ee56
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java
a44c5910391e2c80f00a7873fca2032d08323eeb 15-Jul-2013 Chiao Cheng <chiaocheng@google.com> Adding in call screen template.

Along with glow pad for incoming call interaction..

Change-Id: I8d518b5247bee4a10c8fd06763a7e3fe6cff5652
/packages/apps/Dialer/InCallUI/src/com/android/incallui/InCallActivity.java