Fixing conference participant bug.

Fixing a bug where the conference participant calls, having never
been an active or background call, will never have a cached contact info
record created, causing them to not show up in the conference manager.

Bug: 18228141
Change-Id: I15999c983b5d6ce9600b71ad8d8e28582a328c95

Update UI based on MANAGE_CONFERENCE capability.

- Remove the manage conference button if capability disabled.

- Close the conference call manager if the capability is removed
while the conference manager is visible.

Bug: 17429707
Change-Id: Id242d776aa7b677edd4604b7c23caee315154b1b

Update Conference Manager UI after capability changes.

Before, we just set the visibility of the disconnect and separate
buttons based on the initial call capabilities when the fragment is
created.

This can actually change, for example if an IMS call changes to
a circuit switch GMS call.

To address this, now implement a call details listener on the
conference manager presenter, and update the UI if there is a change
to disconnect or separate capabilities on a call.

This required rearranging some code in the fragment to accomodate
these changes; we now no longer assume the code to set the visibility
of the buttons is only called once.

Bug: 17429707
Change-Id: I476202a21a8ce07568170cd0e046697df84df991

Add Null check for CanAddCall.

Missing null check in recently added CanAddCall property.

Bug: 18358924
Change-Id: Ia94e621b339fbd08ad074baa6eec787a90bb0fa4

Conference event package performance improvement.

Fixing bug where conference participants flash up in the incall UI before
the conference is established.
The new connections are added as NEW->IDLE.

Bug: 18057361
Change-Id: Idf317b25468515fec757afa2aa41945e8222a8f4

Make add-call a global property of telecom. (4/4)

ADD_CALL didn't make sense as a property of Connection or Call.
This changes it to be a global property instead.

Bug: 18285352
Change-Id: If43b30c54a6e6438933b19b8e3e628c9c02d3960

Add support for >5 participants to InCall manage conference UI.

- Previous UI had space in the layout for 5 participants only.
- Replaced the 5 static participant slots with a ListView.
- Created a new Adapter to populate the list.
- Added logic in the adapter to request contact info and photo from the
contact info cache -- this is required for conference event package
participants as they may not have had that information loaded yet.

Bug: 18201339
Change-Id: Ieb8038922d2cb4cb1dfce392cf5889e966ff2895

Don't let touches in ConferenceManagerFragment fall through

Prevent touches from triggering talkback on elements underneath
the ConferenceManagerFragment

Bug: 18269622
Change-Id: I98e28942bcb5c51fdc6a147a2d3b797ca1f100ae

Add Null check for CanAddCall.

Missing null check in recently added CanAddCall property.

Bug: 18358924
Change-Id: Ia94e621b339fbd08ad074baa6eec787a90bb0fa4

Use conference call label for IMS calls.

- Use GENERIC_CONFERENCE capability to show CDMA-scenario string
and image asset.
- Since mPrimary/mSecondary and others are class variables, don't
pass them around all the time through functions if we don't need to.
- Split out the isConference logic for setting the call cards into
its own block.
- Move logic for specifying conference string / icon into the
CallCardPresenter. This makes more sense here, and means that we
don't need to pass around a bunch of call paraemters to the fragment.

Not all these changes are strictly necessary for the change I need to
do, but I had made them originally because I had been thinking of
using the VoLTE capability. Even though now I use GENERIC capability,
I think the changes are still an improvement in terms of organization
though.

Bug: 18284408
Change-Id: I41d7825611456e9ea524db9dd2ef19c9646ab7e2

Change-Id: I41d7825611456e9ea524db9dd2ef19c9646ab7e2

Conflicts:
	src/com/android/incallui/Call.java