Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit d5678d3c authored by Flavio Lerda's avatar Flavio Lerda
Browse files

Use "Add to contacts" as header for unknown numbers.

Instead of repeating the number twice (in the header and in the
underlying call button), use the string "Add to contacts" instead, which
better represents the action performed by the header when clicked.

Bug: 5205326
Change-Id: I568373db2bbbd0ab7d5645a70eb25fbd577dca1e
parent 4e005b17
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -394,7 +394,7 @@ public class CallDetailActivity extends Activity implements ProximitySensorAware
                final Uri photoUri = firstDetails.photoUri;

                // Set the details header, based on the first phone call.
                mPhoneCallDetailsHelper.setPhoneCallName(mHeaderTextView, firstDetails);
                mPhoneCallDetailsHelper.setCallDetailsHeader(mHeaderTextView, firstDetails);

                // Cache the details about the phone number.
                final Uri numberCallUri = mPhoneNumberHelper.getCallUri(mNumber);
+4 −3
Original line number Diff line number Diff line
@@ -129,11 +129,12 @@ public class PhoneCallDetailsHelper {
        views.numberView.setText(numberText);
    }

    /** Sets the name in the text view for the given phone call. */
    public void setPhoneCallName(TextView nameView, PhoneCallDetails details) {
    /** Sets the text of the header view for the details page of a phone call. */
    public void setCallDetailsHeader(TextView nameView, PhoneCallDetails details) {
        final CharSequence nameText;
        final CharSequence displayNumber =
            mPhoneNumberHelper.getDisplayNumber(details.number, details.formattedNumber);
                mPhoneNumberHelper.getDisplayNumber(details.number,
                        mResources.getString(R.string.recentCalls_addToContact));
        if (TextUtils.isEmpty(details.name)) {
            nameText = displayNumber;
        } else {
+34 −10
Original line number Diff line number Diff line
@@ -201,14 +201,38 @@ public class PhoneCallDetailsHelperTest extends AndroidTestCase {
        setPhoneCallDetailsWithNumber(TEST_VOICEMAIL_NUMBER, "");
    }

    public void testSetPhoneName_NumberOnly() {
        setPhoneCallNameWithNumberOnly();
    public void testSetCallDetailsHeader_NumberOnly() {
        setCallDetailsHeaderWithNumberOnly(TEST_NUMBER);
        assertEquals(View.VISIBLE, mNameView.getVisibility());
        assertEquals(TEST_FORMATTED_NUMBER, mNameView.getText().toString());
        assertEquals("Add to contacts", mNameView.getText().toString());
    }

    public void testSetPhoneName() {
        setPhoneCallName("John Doe");
    public void testSetCallDetailsHeader_UnknownNumber() {
        setCallDetailsHeaderWithNumberOnly(CallerInfo.UNKNOWN_NUMBER);
        assertEquals(View.VISIBLE, mNameView.getVisibility());
        assertEquals("Unknown", mNameView.getText().toString());
    }

    public void testSetCallDetailsHeader_PrivateNumber() {
        setCallDetailsHeaderWithNumberOnly(CallerInfo.PRIVATE_NUMBER);
        assertEquals(View.VISIBLE, mNameView.getVisibility());
        assertEquals("Private number", mNameView.getText().toString());
    }

    public void testSetCallDetailsHeader_PayphoneNumber() {
        setCallDetailsHeaderWithNumberOnly(CallerInfo.PAYPHONE_NUMBER);
        assertEquals(View.VISIBLE, mNameView.getVisibility());
        assertEquals("Pay phone", mNameView.getText().toString());
    }

    public void testSetCallDetailsHeader_VoicemailNumber() {
        setCallDetailsHeaderWithNumberOnly(TEST_VOICEMAIL_NUMBER);
        assertEquals(View.VISIBLE, mNameView.getVisibility());
        assertEquals("Voicemail", mNameView.getText().toString());
    }

    public void testSetCallDetailsHeader() {
        setCallDetailsHeader("John Doe");
        assertEquals(View.VISIBLE, mNameView.getVisibility());
        assertEquals("John Doe", mNameView.getText().toString());
    }
@@ -288,14 +312,14 @@ public class PhoneCallDetailsHelperTest extends AndroidTestCase {
                false);
    }

    private void setPhoneCallNameWithNumberOnly() {
        mHelper.setPhoneCallName(mNameView,
                new PhoneCallDetails(TEST_NUMBER, TEST_FORMATTED_NUMBER, TEST_COUNTRY_ISO,
    private void setCallDetailsHeaderWithNumberOnly(String number) {
        mHelper.setCallDetailsHeader(mNameView,
                new PhoneCallDetails(number, TEST_FORMATTED_NUMBER, TEST_COUNTRY_ISO,
                        TEST_GEOCODE, new int[]{ Calls.INCOMING_TYPE }, TEST_DATE, TEST_DURATION));
    }

    private void setPhoneCallName(String name) {
        mHelper.setPhoneCallName(mNameView,
    private void setCallDetailsHeader(String name) {
        mHelper.setCallDetailsHeader(mNameView,
                new PhoneCallDetails(TEST_NUMBER, TEST_FORMATTED_NUMBER, TEST_COUNTRY_ISO,
                        TEST_GEOCODE, new int[]{ Calls.INCOMING_TYPE }, TEST_DATE, TEST_DURATION,
                        name, 0, "", null, null));