tree b60b0325c3e735eceb9c5a01b5cc23789deeeeb7
parent 2f77c3e4de3d68904a6a872d53283775b3a5c349
author David Brown <dab@google.com> 1286565288 -0700
committer David Brown <dab@google.com> 1286754021 -0700

Don't manually create CallerInfo objects from SipPhone

Currently the SipPhone class manually creates a CallerInfo object, and
populates it with very basic info from the SIP address, when making an
outgoing call.

But this is no longer needed, now that we do caller-id lookup properly for
SIP addresses (based on real data from the contacts database -- see
bug 3004127 and change https://android-git.corp.google.com/g/70555).
And in fact the presence of this initial CallerInfo object actually
*disabled* contacts lookup for outgoing calls (bug 3072731).

This change removes all that CallerInfo-related stuff from SipPhone.

(Thus SipPhone is now consistent with the other phone objects, like
GSMPhone and CDMAPhone, in that it doesn't muck with CallerInfo data at
all, but instead lets the phone app do it.)

Also, update isUriNumber() to handle "%40" in case the passed-in string is
URI-escaped.  (Nobody depends on that now, but it may be needed in the
future, and it's certainly safe to say that "%40" will never be found in a
legal PSTN number.)

TESTED:
  - Outgoing SIP call:
    - In-call UI shows correct contact info
    - After the call, Call Log shows correct contact info

  - Incoming SIP call:
    - In-call UI shows correct contact info
    - After the call, Call Log shows correct contact info

  - PSTN calls:
    - correct contact info everywhere

Bug: 3072731

Change-Id: I51434e4e5ad66d2e8ff51fc220001fb74485f0f5
