History log of /packages/apps/InCallUI/src/com/android/incallui/InCallPresenter.java
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
63c85b7bbe13b6beea0355c5ee08790fa0284ce0 27-Sep-2014 Yorke Lee <yorkelee@google.com> Merge "Fix for not being able to return to InCallUI after accepting call via BT" into lmp-dev
554c76ad81167eecb900336b1b67a6cda7c6ee5b 27-Sep-2014 Yorke Lee <yorkelee@google.com> Fix for not being able to return to InCallUI after accepting call via BT

No longer require that the activity was previously started for
bringToForeground to work. That check seemed to be unnecessary and was
causing problems in the case when the UI hadn't been shown previously
(e.g. accepting a call via BT).

Tested with the following scenarios:
1) Accepting an incoming call HUN via finger
2) Returning to in-call screen via dialer after accepting HUN via BT
3) Returning to in-call screen via lock screen after accepting HUN via BT
4) Returning to in-call screen via notification after accepting HUn via BT
5) Accepting a full screen call via BT
6) Receiving call waiting
7) Adding a new call
8) Conference calls

Bug: 17654200
Change-Id: I4886c9a611a71fd04eeb154960293f6b1494b4b2
/packages/apps/InCallUI/src/com/android/incallui/InCallPresenter.java
766c1e05845fa4d22b22acb32ad76d4b9e0eecab 26-Sep-2014 Ihab Awad <ihab@google.com> Preemptively update In-Call UI upon hangup

Updates the In-Call UI right away after hangup, to give the user
immediate feedback despite any disconnect delays that may exist in
the underlying layers.

Bug: 17480900
Change-Id: Iccd6a3d5bae9159284883df116822670557080f7
/packages/apps/InCallUI/src/com/android/incallui/InCallPresenter.java
6ba7f9de0e50e1c49daee77a9706e4d442779b96 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/InCallUI/src/com/android/incallui/InCallPresenter.java
6bfbae405c734c3000320d5b2d65654b2caa8d4e 16-Sep-2014 Evan Charlton <evanc@google.com> Pass Context to InCall ObjectFactory

When calling InCall's ObjectFactory to create Intents, pass along the
current Context.

Bug: 17523252
Change-Id: I301df3c046d6e2bd5ddf4b3501a567cd23c0471f
/packages/apps/InCallUI/src/com/android/incallui/InCallPresenter.java
e37fdac4a3090acd609eab754b221de500e5e7ef 16-Sep-2014 Evan Charlton <evanc@google.com> Merge "Switch InCallUI broadcast to be sticky" into lmp-dev
6cddf46812634fadc194830774110780f14e9462 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/InCallUI/src/com/android/incallui/InCallPresenter.java
1561de71662964208a6a2161d51cbedcdfb57ce1 12-Sep-2014 Evan Charlton <evanc@google.com> Switch InCallUI broadcast to be sticky

Make that "InCall ready" broadcast sticky so that a listener which
is registered after the fact will still get the Intent.

Bug: 16988478
Change-Id: I9fa9c18bb39337464f0903448304134e1b933ad2
/packages/apps/InCallUI/src/com/android/incallui/InCallPresenter.java
c8d497214bdb5cae99b2dee6f8226bb392e17f5d 11-Sep-2014 Evan Charlton <evanc@google.com> Merge "Send a broadcast when InCallUI is visible" into lmp-dev
fc48d607878f5abe156ff4145c5e32672d56e0b4 06-Sep-2014 Evan Charlton <evanc@google.com> Send a broadcast when InCallUI is visible

When InCallUI is visible, send a broadcast to let other apps know that
InCallUI is ready, and that it is now safe to draw UI.

Bug: 16988478
Change-Id: I1e9c3054e7c4f6d9809a4b13c3d1ff4516372143
/packages/apps/InCallUI/src/com/android/incallui/InCallPresenter.java
f20aee70331db950bc069403ed3270a9df1ade59 08-Sep-2014 Ihab Awad <ihab@google.com> Fix incorrect call state in InCallPresenter

Bug: 15195036
Change-Id: Id33577c2d9215fc7eb274b163c755684931bbc34
/packages/apps/InCallUI/src/com/android/incallui/InCallPresenter.java
52c30ebe11e132c5b00a15aabdf4a411355bf0f4 05-Sep-2014 Santos Cordon <santoscordon@google.com> Support CDMA conference calling.

Bug:17316859
Change from using GENERIC_CONFERENCE to a better MANAGE_CONFERENCE.

Change-Id: I0306aaa5cf4d35bf095d85db63b3d08395394645
/packages/apps/InCallUI/src/com/android/incallui/InCallPresenter.java
33d2ba2cd5dc9639b7e85ecd5719b1875d5a2927 03-Sep-2014 Evan Charlton <evanc@google.com> Remove startActivityFromInCall API

This API no longer exists, so remove usages from InCall.

Bug: 16988478
Change-Id: Ib7b0493353262d9e795d78b78a98dd29e7a3f88e
/packages/apps/InCallUI/src/com/android/incallui/InCallPresenter.java
d33f525aa93abbd9919528679a641291f3599944 20-Aug-2014 Nancy Chen <nancychen@google.com> Merge "Ensure the InCallUI does not reanimate when it already is shown." into lmp-dev
026b7c4db27f13e31bc6d98e99df27679bbffb05 09-Aug-2014 Nancy Chen <nancychen@google.com> Ensure the InCallUI does not reanimate when it already is shown.

Closely restrict the cases where the InCallUI is initialized.

Bug: 16898291
Change-Id: I78be81f140b8de24fdd4a27cdf0aa01c6a230e3a
/packages/apps/InCallUI/src/com/android/incallui/InCallPresenter.java
4822c9429136fa3f225a4a7de96e7a8b19e01ff3 14-Aug-2014 Jay Shrauner <shrauner@google.com> Prevent ConcurrentModificationExceptions

Use sets backed by ConcurrentHashMaps instead of HashSets, and
CopyOnWriteArrayLists instead of ArrayLists, to prevent concurrent
exceptions if listeners try to remove themselves in callbacks while
iterating over the listeners.

Bug:16325026
Change-Id: Ia86f5cafa1d844aa7927df8ff9b02b5574bdde2b
/packages/apps/InCallUI/src/com/android/incallui/InCallPresenter.java
4ceb26e183d633586e54630820aad09c1ee1eaef 14-Aug-2014 Jay Shrauner <shrauner@google.com> Prevent ConcurrentModificationExceptions

Switch from HashSets to Sets backed by ConcurrentHashMaps, and from
ArrayLists to CopyOnWriteArrayLists, to prevent exceptions when listeners
remove themselves in their callback while iterating through the set or list.

Bug:17030803
Change-Id: I99511e56d77526796679e2840437d0ea47062830
/packages/apps/InCallUI/src/com/android/incallui/InCallPresenter.java
43f3e6e0760ea774e479935733d8a30b724457cd 08-Aug-2014 Ihab Awad <ihab@google.com> Final structural tweaks to Telecomm API (3/8)

Bug: 16416927
Bug: 16494880
Change-Id: If756941a5bdd25ff8ac633a56fe90c894d4a46a4
/packages/apps/InCallUI/src/com/android/incallui/InCallPresenter.java
fe4982c221c8ee734afedc4d005661d9c6c1ac31 11-Aug-2014 Andrew Lee <anwlee@google.com> Add UI/functions to handle a video upgrade request.

+ Move session modification listener into the video call presenter.
+ Add new video accept/reject notification and full-screen UI.
+ Added "handling" which sends session modification response.

Bug: 16657915
Change-Id: I35ff04e383d4938cbfb4e76677730f82557fd918
/packages/apps/InCallUI/src/com/android/incallui/InCallPresenter.java
f3d0654f2b6d77b7eef8bdcb4c39ee59e55017de 01-Aug-2014 Nancy Chen <nancychen@google.com> Reduce latency for InCallUI by adding an intermediate state

Add PENDING_OUTGOING as a state where the Telecomm information has not
yet returned but the UI has started. This allows the UI to immediately
begin initiating while Telecomm is waiting for the return of its
broadcast intent.

Bug: 16396523

Change-Id: Ia4b39689b89f9dea3aafae9e63ca0bfebb730501
/packages/apps/InCallUI/src/com/android/incallui/InCallPresenter.java
c79d745deeda2cdd2b17122602a32812132885aa 30-Jul-2014 Santos Cordon <santoscordon@google.com> Add setConferenceable() API from ConnectionService to incall. (3/4)

Change-Id: I64fdca08d35f893d755e3b154543a261b1418343
/packages/apps/InCallUI/src/com/android/incallui/InCallPresenter.java
85c114df8721b51b3b76cba9e7f9af825d05dc26 30-Jul-2014 Tyler Gunn <tgunn@google.com> Merge "Various changes." into lmp-dev
15a8e3cb2c01b59b5328a74e6c46144843103205 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/InCallUI/src/com/android/incallui/InCallPresenter.java
43b78a98d11ef11114fc05df6a11d19d80be4a40 28-Jul-2014 Andrew Lee <anwlee@google.com> Update VideoCallProfile.VideoState references.

Bug: 16629892
Change-Id: I689b5ce4f41db109b003bd15f9cae5596a1c3819
/packages/apps/InCallUI/src/com/android/incallui/InCallPresenter.java
2c702f7e3c774471c3ba5d557effa056a3b93b8f 22-Jul-2014 Tyler Gunn <tgunn@google.com> InCall UI VT changes

1. Adding CallVideoClientNotifier - used by InCallVideoClient to notify
interested listeners of events related to call video clients.
2. Change InCallVideoClient to use CallVideoClientNotifier to notify
listeners of incoming events.
3. Modify call details listener signature in InCallPresenter to include
the call for which the details changed.
4. Changing VideoCallPresenter to subscribe to call details changes,
so it will keep informed of changes to the video state of the call.

Bug: 16012946
Change-Id: I47aa2a8e8c852bb7e4ea2e83fa4a30b2697266e6
/packages/apps/InCallUI/src/com/android/incallui/InCallPresenter.java
bfb48c19b99fb1e2412f9c722f6f55a967c45233 20-Jul-2014 Evan Charlton <evanc@google.com> Rename PhoneAccountMetadata to PhoneAccount

Change-Id: I4597b14110c1cee7f637ec125b839852ef0f34c4
/packages/apps/InCallUI/src/com/android/incallui/InCallPresenter.java
2b22a35ee4c94adae074b1dd720fa8734d8461b7 20-Jul-2014 Evan Charlton <evanc@google.com> Rename PhoneAccount to PhoneAccountHandle

Change-Id: I2e97b348e6316a8b3ccc39fd81013e7f514a2889
/packages/apps/InCallUI/src/com/android/incallui/InCallPresenter.java
cdf1e087f31e9be47f6489c1d99cbd2faae4625b 19-Jul-2014 Sailesh Nepal <sail@google.com> Merge "Handle Call.onStartActivity in InCallUI" into lmp-dev
2bd22389354789782f8fe7377f5f29a8c96f353a 17-Jul-2014 Andrew Lee <anwlee@google.com> Merge "Hook up answering as video call." into lmp-dev
9044e6296320cac2ee7c49465fdbb4a55912058a 15-Jul-2014 Andrew Lee <anwlee@google.com> Hook up answering as video call.

Pass in the desired video state when answering incoming video calls.

Bug: 16013878
Bug: 16015750
Change-Id: I7f46dadfdaa6ab256626d2e2e49971e114f506dd
/packages/apps/InCallUI/src/com/android/incallui/InCallPresenter.java
3f4f33bc27ee1c9a12c9e55856b29079301c8a08 15-Jul-2014 Evan Charlton <evanc@google.com> Show message or call-back number in InCallUI

If the ConnectionService sets a call-back number or message, show
it in the in-call UI.

Bug: 13334257
Bug: 13334252

Change-Id: If7fde7c1ca6940cec8b7232469a22900c36dbb17
/packages/apps/InCallUI/src/com/android/incallui/InCallPresenter.java
39a579d7af514eced760426ccedf84ef5d412b6f 17-Jul-2014 Sailesh Nepal <sail@google.com> Handle Call.onStartActivity in InCallUI

With this CL, the InCallUI does PendingIntent.send() when
Call.onStartActivity is called.

The hope is that by having InCalUI do this, we wont have a
problem where the InCallUI shows up infront of the dialog
created by the ConnectionService.

Change-Id: I65119a89c925a93467d1b27304ffec9b088b172f
/packages/apps/InCallUI/src/com/android/incallui/InCallPresenter.java
4fbdb77e2abc34e0a5e2479ab3a7e71c1da4619d 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/InCallUI/src/com/android/incallui/InCallPresenter.java
df06e232852a93d8238f3cacaab4d704de7e1216 12-Jul-2014 Ihab Awad <ihab@google.com> Implement new In-Call Service interface

Change-Id: Ic1eb6fc98e7f030885596c9c40f0ed4f0e34e28b
(cherry picked from commit c90543e6ef64b16b4c1bb240494152bc513f1e36)
/packages/apps/InCallUI/src/com/android/incallui/InCallPresenter.java
5461c6a3b5090e6fab47076c5c0aeb2d1091606d 12-Jul-2014 Sailesh Nepal <sail@google.com> Misc Telecomm API changes: InCallUI

This CL hooks up the new APIs introduced in ag/501321 to the
InCallUI.

Change-Id: Iaffe0b84cea6003f2a9b9d8b30676743d2b236d4
/packages/apps/InCallUI/src/com/android/incallui/InCallPresenter.java
8238f7b3ad3a71beb5d5961e0f94d0f7d2f4ff41 13-Jun-2014 Andrew Lee <anwlee@google.com> Merge "Delete unused methods."
f55854f27dda67f4da6144cdce0f01d3883988fe 13-Jun-2014 Andrew Lee <anwlee@google.com> Delete unused methods.

Change-Id: I67d42f3476c1d173bcdd778505c24cdf11fb2142
/packages/apps/InCallUI/src/com/android/incallui/InCallPresenter.java
c9e18a969b97f6d110c1e1e84240d4828706c401 06-Jun-2014 Santos Cordon <santoscordon@google.com> Support conference calling. (4/4)

Bug: 15006702
Change-Id: I2764ea242f783ba478c9eae86618dd33e9fc792a
/packages/apps/InCallUI/src/com/android/incallui/InCallPresenter.java
e306b703259683799ade122458f6b05a03949800 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/InCallUI/src/com/android/incallui/InCallPresenter.java
b48e2280930b5ed0b04dd34d59dc5980b379a475 01-Apr-2014 Sailesh Nepal <sail@google.com> InCallUI: Use Telecomm CallCapabilites

Change-Id: I4236543da5648d2cf6ba525c8fc87a93000f50a7
/packages/apps/InCallUI/src/com/android/incallui/InCallPresenter.java
6af0c61c32da6cfb400168ae3b0cf9f802abfed4 01-Apr-2014 Sailesh Nepal <sail@google.com> InCallUI - Use String IDs

Change-Id: Ibacb79658c146466d4f23bfcf7af0ebfb6e84dd0
/packages/apps/InCallUI/src/com/android/incallui/InCallPresenter.java
fc22ba88566ef70e202128335231c367de6c52af 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/InCallUI/src/com/android/incallui/InCallPresenter.java
4549f54d6799f549fa60cfe32949c640135480e4 09-Mar-2014 Sailesh Nepal <sail@google.com> Update InCallUI to use new Telecomm wrappers

Change-Id: I4ea05f03418302bf9eb904bda25844a9c52ea609
/packages/apps/InCallUI/src/com/android/incallui/InCallPresenter.java
65ece2267bcdf2520241eb2cbec7c41200b46611 27-Feb-2014 Chris Wren <cwren@android.com> am d52e4929: add actions to the incoming call notification

* commit 'd52e4929af6e83e9fcb9ffef3f2f8c74a14e5aca':
add actions to the incoming call notification
d52e4929af6e83e9fcb9ffef3f2f8c74a14e5aca 25-Feb-2014 Chris Wren <cwren@android.com> add actions to the incoming call notification

Bug: 12605720
Change-Id: Ic3593da8693e9fd51e9d3d87aa3ede770aa598cc
/packages/apps/InCallUI/src/com/android/incallui/InCallPresenter.java
d9adc4f7cae49347238c51ae10acde7ced78b29e 27-Feb-2014 Chris Wren <cwren@android.com> am 757f6653: Merge "only disable the system bars when inCallActivity is visible"

* commit '757f6653ce8686f5e853aa52bef7c77f6f110536':
only disable the system bars when inCallActivity is visible
23be40f480f324cdd685ab81cc6f248ac15f7732 27-Feb-2014 Chris Wren <cwren@android.com> am d8babfb9: Merge "always add full screen intent if a call is incoming"

* commit 'd8babfb9c75a48f28312146f4e8b7bf407333652':
always add full screen intent if a call is incoming
dd5a1c327227420bed2c911a57329ecd15d22a77 11-Feb-2014 Chris Wren <cwren@android.com> only disable the system bars when inCallActivity is visible

Change-Id: I1fb7c7dc403720d22520710155dbd0bf87f1a9fd
/packages/apps/InCallUI/src/com/android/incallui/InCallPresenter.java
8fe89fd254473c569c5afe306634df586ad884d8 09-Dec-2013 Chris Wren <cwren@android.com> always add full screen intent if a call is incoming

Bug: 12605720
Change-Id: Ic1527d49661d1b6dfefed2de3620f5185c42d2de
/packages/apps/InCallUI/src/com/android/incallui/InCallPresenter.java
e3a1a6245bd952cb6ad378fc136889c841ff3713 30-Jan-2014 Santos Cordon <santoscordon@google.com> OutgoingCalls(4/6) - Connecting the in-call disconnect button with Telecomm.

In-call app now sends appropriate disconnect command when user clicks
the end-call button.

Change-Id: I3da99827ce068566ca9e72d69c0375f0409a8014
/packages/apps/InCallUI/src/com/android/incallui/InCallPresenter.java
166aa8d5aa00d343d83226e110ea0be4e1577ba9 29-Jan-2014 Santos Cordon <santoscordon@google.com> Add implementation of InCallService.

Adds a rudimentary implementation of IInCallService which supports
updating the UI with new outgoing calls and changing a call to active or
disconnected. The new service takes updates from Telecomm in the form of
CallInfo object or callInfo IDs and turns them into Call objects which
work with the existing CallList.

This CL does not have the changes to send commands back to Telecomm.

Change-Id: I985de1d7e0c7fbcbf242ce3f7a831335790d05b5
/packages/apps/InCallUI/src/com/android/incallui/InCallPresenter.java
01563b04e60e34845ed57d8bb0e90ed01c8462ab 06-Dec-2013 Jay Shrauner <shrauner@google.com> Fix NPE in onPostDialCharWait

Handle calls to onPostDialCharWait when mInCallActivity is null.

Bug:12021342
Change-Id: Id8da6074f7bd3a0c0962dbaa9246c2de18e6e38b
/packages/apps/InCallUI/src/com/android/incallui/InCallPresenter.java
35f767bc119403a8503984e1fea8a2cffaa4ea4c 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.
7f1d6342bd61a1e4e6b3198f3f7602b3cb378cce 15-Nov-2013 Santos Cordon <santoscordon@google.com> am 1d0e426e: am 78cbbb3f: am 0b2b20a9: Add incoming-during-hold case to fullscreen Notification code.

* commit '1d0e426ed2a22deffca8e24c463be7dc44bfe296':
Add incoming-during-hold case to fullscreen Notification code.
59517317d64761707b4d6d437ef49025d478eb17 15-Nov-2013 Chiao Cheng <chiaocheng@google.com> Merge "Add logic to dynamic dismiss keyguard." into klp-dev
225f91fe84d243ca1a4eabf0756639adb3c07bd4 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/InCallUI/src/com/android/incallui/InCallPresenter.java
0b2b20a9dbecff3e0ac345b559caeaae779de03d 14-Nov-2013 Santos Cordon <santoscordon@google.com> Add incoming-during-hold case to fullscreen Notification code.

We use fullScreen notifications to bring up the incoming call screen
when it is not already being shown. Android framework ignores
fullScreen property if the same notification ID already exists. To fix
that we cancel the notification right before setting it to full screen.

We only used to do that for the CALL_WAITING state since that when it
mattered. However, if the current call is on hold, a new call comes in
as INCOMING instead of CALL_WAITING so this change adds that condition
as well.

Also fixed two other minor pieces of code which only checked INCOMING
and not CALL_WAITING. One for an icon, the other used to acquiring
location as part of the contact info (we only do so for incoming calls).

bug:11578080
Change-Id: Id010a6848cd1ca06d68e8405041565bc008a781e
/packages/apps/InCallUI/src/com/android/incallui/InCallPresenter.java
86a4e32687a12f50f877a85a6764d6d03f55aff7 14-Nov-2013 Ihab Awad <ihab@google.com> am a7c0d02a: am bc52c444: am dba637fa: Merge "Show status bar notification on quick navigate from in-call UI" into klp-dev

* commit 'a7c0d02adf20bd8fe8f6e1dba87e842360d88aba':
Show status bar notification on quick navigate from in-call UI
e6d74148bc5f9cf586933429a67da0d46bc2e7a8 08-Nov-2013 Ihab Awad <ihab@google.com> Show status bar notification on quick navigate from in-call UI

Add logic to force the status bar notification of an outgoing call
to be displayed after a reasonable if the user, e.g. by pressing
Home, navigates away from the in-call UI before it has a chance
to show up.

Bug: 11341599
Change-Id: I13f86b940cc82097596634c7634cb5a8726e7d12
/packages/apps/InCallUI/src/com/android/incallui/InCallPresenter.java
55e998472730cae27a82eed49cf7b020699b9286 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/InCallUI/src/com/android/incallui/InCallPresenter.java
ff40f157168bc54fec724350387670876ae382b1 15-Oct-2013 Christine Chen <christinech@google.com> Clears notification when there is no call.

Bug: 11083320
Change-Id: I05efd985114a78d87098a46b1c4c33ad5bcc5b94
/packages/apps/InCallUI/src/com/android/incallui/InCallPresenter.java
64f6ec50ac061ccd063bfb1093e91600e4bac286 12-Oct-2013 Santos Cordon <santoscordon@google.com> Recalculate in-call state when activity ends.

Previoulsy we only calculated the in-call state on activity end if
TeleService was still connected. This was insufficient as transitions
to NO_CALLS (which happens generally when TeleService disconnects) may
rely on the recalculation after the activity ends in cases where the
app finish()es out of in-call's normal flow (like hitting back button
while the call is ending).

bug:11122139
Change-Id: I02eb8e7a977048d6f167c11a3f28e7aa629bdbe2
/packages/apps/InCallUI/src/com/android/incallui/InCallPresenter.java
c8bde8e136be44d4a02cff6deb9441786c802321 08-Oct-2013 Santos Cordon <santoscordon@google.com> Turn screen on for call-waiting calls

Normal incoming calls get the screen powered on through the window
flag FLAG_TURN_SCREEN_ON. However, this only works when the window
is being created or sent to foreground. But for call-waiting cases where
the screen is off and in-call is in foreground, the screen remains off
since the flag is not triggered.

Solution is to look for the case where the screen is off and the new
incoming call is a call-waiting call...and in that case finish() the
activity and create it again. Since the screen is off, there is no
concern over jank from bouncing the activity.

bug:11031245
Change-Id: Ic0c206d57c9d1ce5beebff49a07c7877f6d1a423
/packages/apps/InCallUI/src/com/android/incallui/InCallPresenter.java
442af5cf9d3946e4927ef2ab52e0600a1871f11e 30-Sep-2013 Santos Cordon <santoscordon@google.com> Protect hideDialpad() code with isActivityStarted() check.

Could hit NPE if the activity was not up or already brought down like
with Fixed Dial Number where a disconnect comes almost immediately after
dialing out.

bug:10995838
Change-Id: I150d1ca135702814ac6d78722c3ad15ae5273c83
/packages/apps/InCallUI/src/com/android/incallui/InCallPresenter.java
428e848d50a2a34f4815f31786c0d2af1a4b611c 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/InCallUI/src/com/android/incallui/InCallPresenter.java
d72076f2561ec8099fe11983d5995c65325847b3 24-Sep-2013 Santos Cordon <santoscordon@google.com> Check for null during notification hangup Intent receipt.

bug:10863336
Change-Id: I775f1855d07cc4f6591ceb51a0f90754ecc833ad
/packages/apps/InCallUI/src/com/android/incallui/InCallPresenter.java
7fff6a25f65e0949c8e2682d6470cf065e76a63f 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/InCallUI/src/com/android/incallui/InCallPresenter.java
672b16d0620d033e10fab30ccd70f5dd23e823b7 19-Sep-2013 Santos Cordon <santoscordon@google.com> Add "retrying" text for CDMA redial calls.

listening for new REDIALING state.

bug:10824223
Change-Id: I2b6f2f74713197902c93deca203f4f136732f7a2
/packages/apps/InCallUI/src/com/android/incallui/InCallPresenter.java
46a86660c3f8150bf63d89ec3ce37396d4ac1858 19-Sep-2013 Santos Cordon <santoscordon@google.com> Merge "Tear down proximity sensors when no longer in use." into klp-dev
f6fb19c1e4ac91a325f0f2608f874ce18b33a7f9 19-Sep-2013 Santos Cordon <santoscordon@google.com> Merge "Add support for hardware CALL button." into klp-dev
db4054e7c14191285cd23032b6a59f4432eb93cd 19-Sep-2013 Christine Chen <christinech@google.com> Merge "Adds DISCONNECTING state support." into klp-dev
972946d1abbba1e72e292c3e7dcab59df94af0fc 19-Sep-2013 Yorke Lee <yorkelee@google.com> Merge "Hide home and back buttons during incoming call" into klp-dev
f9080e1eeaf03d90b955133ba28485291491cbd9 19-Sep-2013 Santos Cordon <santoscordon@google.com> Tear down proximity sensors when no longer in use.

bug:10493709
Change-Id: I76e1940472aa503f1fe8c4a73c82852f8670b61c
/packages/apps/InCallUI/src/com/android/incallui/InCallPresenter.java
14ba5d960414ea8fc69d644f1ecca7872d7ffa03 19-Sep-2013 Santos Cordon <santoscordon@google.com> Add support for hardware CALL button.

bug:10809304
Change-Id: I8b6c5e27a37624f38df965e2ad001703cf558708
/packages/apps/InCallUI/src/com/android/incallui/InCallPresenter.java
ecabb6923e6587e0f0ca98cc895be7d99e694015 19-Sep-2013 Christine Chen <christinech@google.com> Adds DISCONNECTING state support.

When user ends a call locally, we first set the call state to
DISCONNECTING and show "Hanging up" as the status. We then show the
"Call ended" status when the telephony layer comes back with the
DISCONNECTED state for the call.

Bug: 10808537
Change-Id: Iad5eda6ee34e2f04a861977ac1a2453a52081d27
/packages/apps/InCallUI/src/com/android/incallui/InCallPresenter.java
da6476c15e902e10c33adda5d5687322aa264af7 19-Sep-2013 Yorke Lee <yorkelee@google.com> Hide home and back buttons during incoming call

Bug: 10692603
Change-Id: I9bacaf39d926b9004778b33c33420a51dde1332f
/packages/apps/InCallUI/src/com/android/incallui/InCallPresenter.java
7fee23beeb764c116f6d0c288ad3f27188025d31 19-Sep-2013 Santos Cordon <santoscordon@google.com> Merge "Allow bringToForeground to work even after activity is destroyed" into klp-dev
046386ed5ae615c8d83bb5a9eccc15e5f79b61cc 18-Sep-2013 Christine Chen <christinech@google.com> Moves some TODO(klp) to TODO

Bug: 10605909
Change-Id: I6c961494f5470e6e96dd50ccec49bbc8c5862285
/packages/apps/InCallUI/src/com/android/incallui/InCallPresenter.java
120c3547957d69fa938de4510078b99c381e5153 16-Sep-2013 Santos Cordon <santoscordon@google.com> Allow bringToForeground to work even after activity is destroyed

bug:10550460
Change-Id: I63d8b13c423c198603768e17a1ef15bbbb4c7705
/packages/apps/InCallUI/src/com/android/incallui/InCallPresenter.java
2ce872d6f7dd8a7eb0275b4195336f779972f698 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/InCallUI/src/com/android/incallui/InCallPresenter.java
6b381d25a7ebd048a26a5f115e920cea27507603 16-Sep-2013 Santos Cordon <santoscordon@google.com> Merge "CallCardPresenter should listen for Call Waiting" into klp-dev
1ee82fcea79556c90eec0f55ea2e2ab5c6dfadda 16-Sep-2013 Santos Cordon <santoscordon@google.com> CallCardPresenter should listen for Call Waiting

Regression from recent change to only update UI with incoming calls
using the onIncomingCall callback. The CallCardPresenter wasn't
listening for that specific change so call-waiting calls were not
displaying "incoming call" label.

Change-Id: I6a732585509c1e27e7ecf5805cb17ea8e7f043ed
/packages/apps/InCallUI/src/com/android/incallui/InCallPresenter.java
4eae63d139bca9f9dc6e2d42beef918b43490e79 16-Sep-2013 Santos Cordon <santoscordon@google.com> Shut down if UI starts after service is disconnected.

Additionally, this change can cause multiple calls to attemptToCleanup()
so the change adds appropriate null checks.

bug:10767438
Change-Id: Ieeb4a00653a6b3bcacca105d649ca9efd8ae8d44
/packages/apps/InCallUI/src/com/android/incallui/InCallPresenter.java
14dbc3f0ca3a7998c9c5d28aba637487724f529f 14-Sep-2013 Santos Cordon <santoscordon@google.com> Fix UI lag when calling a contact with a photo.

Related fixes unrelated to latency problem:
a. Update StatusBarNotifier with new changes to CallerInfoCache.
b. Outgoing JANK fix in notifier needed to know if the activity
was previously started, not just if it was finished. (b/10734874)
c. Consolidate places where we use the Intent.

Several improvements to speed up startUp time from most egregious to
least:
1. In InCallPresenter, statusBarNotifier wasn't unlistening to
incoming call changes which kept orphaned instances still listening and
calling into contactInfoCache. ContactInfoCache was subsequently calling
into many notifiers which did heavy image parcelling work.
- Clear incomingCallListeners on tear down.
2. StatusBarNotifier was getting called directly from InCallPresenter &
onIncomingCall() callbacks. onIncomingCall callback was unnecessary and
caused extra work.
- Fix is to stop listening to incoming calls. Status bar notifier gets
called directly by InCallPresenter in startAndFinish() so listening
to incoming was redundant.
3. Make ContactInfoCache listeners list a Set to avoid duplicate
entries and reduce callback execution.

bug:10712670
bug:10734874

Change-Id: Ic8d50b1d9ce336ffe3a5191abe1c9db32365eee6
/packages/apps/InCallUI/src/com/android/incallui/InCallPresenter.java
c5991d5b374cec8e0fd07329711226d33bcc9a50 09-Sep-2013 Santos Cordon <santoscordon@google.com> Merge "Improve lifecycle ordering for InCallUI" into klp-dev
b0d08a16da088e01f416f52a7b74ee9630c1493a 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/InCallUI/src/com/android/incallui/InCallPresenter.java
2fa6baa2e70e26f6c6f3681e804c33677384fbd7 07-Sep-2013 Chiao Cheng <chiaocheng@google.com> Port dtmf post dial wait feature.

Bug: 10459289
Change-Id: Iee799bd72aac9bb86e2f414e68f2643d8ba1c563
/packages/apps/InCallUI/src/com/android/incallui/InCallPresenter.java
518519c83063f94fe5010ed5075b38a066e794ec 30-Aug-2013 Santos Cordon <santoscordon@google.com> Merge "Allow new call waiting calls to pop up when not in foreground." into klp-dev
179bcc00d5140f577f009e296c965bdfebfb4763 29-Aug-2013 Santos Cordon <santoscordon@google.com> Allow new call waiting calls to pop up when not in foreground.

Added some additional debug logging.
Allow full-screen startup sequence to happen with any transition
to IN_CALL state, not just from a HIDDEN state.
(e.g., from IN_CALL -> INCOMING)

And for the grand finale, uncomment the code that would have made
this work from the beginning. :P

bug:10396126
Change-Id: Id34805941b75b28d4876153bb1bf0305142fc4cd
/packages/apps/InCallUI/src/com/android/incallui/InCallPresenter.java
0d9cfa48c3bf44d800e280ec6bf1d8a226fab7ca 29-Aug-2013 Santos Cordon <santoscordon@google.com> Ensure that OUTGOING calls bring up the notification dialog.

Change-Id: I32b3ed77dae7f839036ea24ae09b9a9d0e87b746
/packages/apps/InCallUI/src/com/android/incallui/InCallPresenter.java
11b099d632e87965c4240b1a1829989d4e2e2193 28-Aug-2013 Santos Cordon <santoscordon@google.com> Adding implementation for bringToForeground.

Add implementation for CallHandlerService's new method, bring to
foreground. When called, the incallui determines if we have an active
call and the activity is not currently in the foreground. If both those
are true, then we bring up the existing InCallUI.

bug:10313347
Change-Id: Ic70cd7f1c5701992580626458c8d459a8ece7d9c
/packages/apps/InCallUI/src/com/android/incallui/InCallPresenter.java
7791690df4406bd51e3d3b0c256a4d6664951141 28-Aug-2013 Chiao Cheng <chiaocheng@google.com> Merge "Major fixes for in call to work with reverse number lookup." into klp-dev
8b6c8d0dbfba6eabe3d835f8cdcec8a13e253d0c 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/InCallUI/src/com/android/incallui/InCallPresenter.java
2c9fa78fea8fad3190ebdd1e2e1b789a2ceb8cf2 28-Aug-2013 Santos Cordon <santoscordon@google.com> Remove extra code which set Activity to null.

Activity is set to null with setActivity() called from onDestroy and
thise additional set (that this CL removes) was causing a precondition
failure due to a double-teardown.

bug:10516078
Change-Id: I501b36173f24f2a4fdf38ecc38239ea81cc66e55
/packages/apps/InCallUI/src/com/android/incallui/InCallPresenter.java
759c018d108551b0d2dac1294e7cddf55ea6edf1 24-Aug-2013 Santos Cordon <santoscordon@google.com> Adding more public logging to InCallUI

bug: 10461651
Change-Id: Ib79717530911d30478a9c00ad154423f0aca670d
/packages/apps/InCallUI/src/com/android/incallui/InCallPresenter.java
1a7f2bcab2d2023f2ee4cfb0bc57bc265b5aab87 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/InCallUI/src/com/android/incallui/InCallPresenter.java
3c2a439eb67ec6fb89daf1914ab3ce05e8aaa428 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/InCallUI/src/com/android/incallui/InCallPresenter.java
3c5581a67ba89fd96fc19e64f6c4780d0a58f640 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/InCallUI/src/com/android/incallui/InCallPresenter.java
1df52df7a0248814fbd4575103059a8b427f5d9a 15-Aug-2013 Santos Cordon <santoscordon@google.com> Add logic support for manage conference screen. (Part 2 of 4)

Changes:
- Add conference call resource photo
- Move logic to determine the name/numbers to show in the Call card
from CallCardFragment to CallCardPresenter.
- CallCardPresenter now tells CallCardFragment if the primary call is
a conference call.
- Updated the primary/secondary call order do that Active Calls are
primary instead of Disconnected calls when both exist.
- Cleaned up some excessive logging.
- The CallCard code uses a whitelist to know which callcard to show.
The change in services/Telephony to add CONFERENCED state is what
causes the new child calls to now show since that is not added to
the whitelist in this CL (by design).

bug: 10334739
Change-Id: Iaeab3f8bc9bda7693fa4a27bb8d3fe5de4dc9dfc
/packages/apps/InCallUI/src/com/android/incallui/InCallPresenter.java
0e27ca6253114be60b85f912a1af62dbf35c1b9e 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/InCallUI/src/com/android/incallui/InCallPresenter.java
73e8dc0225c601f7203dd4d12e4f7653a1f9a9b0 10-Aug-2013 Santos Cordon <santoscordon@google.com> Add basic call information to the notification.

Change-Id: I33bc1445e9fc515b68205a12d7297a8f3013fecd
/packages/apps/InCallUI/src/com/android/incallui/InCallPresenter.java
de7685bd2f489bd0a7c74721f73a37c69eeba367 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/InCallUI/src/com/android/incallui/InCallPresenter.java
0866ac1055b4e505339a94b4f5177b862d6301aa 09-Aug-2013 Santos Cordon <santoscordon@google.com> Adding hangup capability to in-call notification.

Change-Id: I7ba4dd0824f41d9989e36bff10fbfca68596134e
/packages/apps/InCallUI/src/com/android/incallui/InCallPresenter.java
9de3d7c5188c02cabf03799f87d494ee7dc702cb 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/InCallUI/src/com/android/incallui/InCallPresenter.java
91d578df9ba4fb77832cf5f20cf5143b67ff2581 09-Aug-2013 Christine Chen <christinech@google.com> Remove STARTED and START_UP states

Change-Id: I963f0ce7c695349854b738ae57b39f2c6718e570
/packages/apps/InCallUI/src/com/android/incallui/InCallPresenter.java
b6ec8a55702f69c1bcb7b3eb1646c363ad9b4d10 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/InCallUI/src/com/android/incallui/InCallPresenter.java
a12f2589f424e26c63c8ee5b6fad89e30b69d7fb 07-Aug-2013 Santos Cordon <santoscordon@google.com> Add UI to show when the Call disconnects.

When the call disconnects, we need to show UI for a short time before
existing the UI.

Change-Id: Iee648b8c54ee4b5ea09cfaec508e1bf8fb8f1643
/packages/apps/InCallUI/src/com/android/incallui/InCallPresenter.java
e7be13fb0556e62b07bc271b130412d82d7f7521 07-Aug-2013 Santos Cordon <santoscordon@google.com> Supports for outgoing calls starting up the UI.

- Added the OUTGOING InCallState
- Added support for OUTGOING into InCallState, InCallPresenter, and
StatusBarNotifier.

Change-Id: I49d5a56a4394d05e948b16a82f23e3eb925fd0a0
/packages/apps/InCallUI/src/com/android/incallui/InCallPresenter.java
efd4282ec4221ec5eefd4155a4ad915adcedca70 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/InCallUI/src/com/android/incallui/InCallPresenter.java
9f22c7496af167f2eada26aa998364d4cf03a619 05-Aug-2013 Santos Cordon <santoscordon@google.com> Adding a central logging class.

Change-Id: I24f68d5ebcfed2740f9645736c35edf17efb4769
/packages/apps/InCallUI/src/com/android/incallui/InCallPresenter.java
671b221ccadea34fb9327ef5342b26419eb5ca99 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/InCallUI/src/com/android/incallui/InCallPresenter.java
4d5c70b96ed0b49d737a7a60d02488681f023450 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/InCallUI/src/com/android/incallui/InCallPresenter.java