From 393c0df6a01bf6890a944284e6d62a482b5d62ae Mon Sep 17 00:00:00 2001 From: erfanian Date: Mon, 14 Aug 2017 14:58:46 -0700 Subject: Register call initiated from a known contact in Dialer. This additional metadata will be used by the telephony system to determine if an outgoing call is eligible for assisted dialing. Bug: 63995025 Test: some new unit tests PiperOrigin-RevId: 165233878 Change-Id: Idee6491e3396b0798ae6c72da53d51367f9fd7ee --- .../android/dialer/app/calllog/CallLogListItemViewHolder.java | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'java/com/android/dialer/app/calllog') diff --git a/java/com/android/dialer/app/calllog/CallLogListItemViewHolder.java b/java/com/android/dialer/app/calllog/CallLogListItemViewHolder.java index 745f8b665..55490393e 100644 --- a/java/com/android/dialer/app/calllog/CallLogListItemViewHolder.java +++ b/java/com/android/dialer/app/calllog/CallLogListItemViewHolder.java @@ -23,6 +23,7 @@ import android.content.Intent; import android.content.res.Resources; import android.net.Uri; import android.os.AsyncTask; +import android.os.Bundle; import android.provider.CallLog; import android.provider.CallLog.Calls; import android.provider.ContactsContract.CommonDataKinds.Phone; @@ -68,6 +69,7 @@ import com.android.dialer.callintent.CallIntentBuilder; import com.android.dialer.common.Assert; import com.android.dialer.common.LogUtil; import com.android.dialer.compat.CompatUtils; +import com.android.dialer.compat.telephony.TelephonyManagerCompat; import com.android.dialer.configprovider.ConfigProviderBindings; import com.android.dialer.constants.ActivityRequestCodes; import com.android.dialer.contactphoto.ContactPhotoManager; @@ -886,6 +888,15 @@ public final class CallLogListItemViewHolder extends RecyclerView.ViewHolder return; } + if (info != null && info.lookupKey != null) { + Bundle extras = new Bundle(); + if (intent.hasExtra(TelecomManager.EXTRA_OUTGOING_CALL_EXTRAS)) { + extras = intent.getParcelableExtra(TelecomManager.EXTRA_OUTGOING_CALL_EXTRAS); + } + extras.putBoolean(TelephonyManagerCompat.ALLOW_ASSISTED_DIAL, true); + intent.putExtra(TelecomManager.EXTRA_OUTGOING_CALL_EXTRAS, extras); + } + // We check to see if we are starting a Lightbringer intent. The reason is Lightbringer // intents need to be started using startActivityForResult instead of the usual startActivity String packageName = intent.getPackage(); -- cgit v1.2.3