summaryrefslogtreecommitdiff
path: root/java/com/android/dialer/calldetails/CallDetailsHeaderViewHolder.java
diff options
context:
space:
mode:
Diffstat (limited to 'java/com/android/dialer/calldetails/CallDetailsHeaderViewHolder.java')
-rw-r--r--java/com/android/dialer/calldetails/CallDetailsHeaderViewHolder.java21
1 files changed, 20 insertions, 1 deletions
diff --git a/java/com/android/dialer/calldetails/CallDetailsHeaderViewHolder.java b/java/com/android/dialer/calldetails/CallDetailsHeaderViewHolder.java
index f678061c8..13b03d047 100644
--- a/java/com/android/dialer/calldetails/CallDetailsHeaderViewHolder.java
+++ b/java/com/android/dialer/calldetails/CallDetailsHeaderViewHolder.java
@@ -17,18 +17,22 @@
package com.android.dialer.calldetails;
import android.content.Context;
+import android.content.Intent;
import android.net.Uri;
import android.support.v7.widget.RecyclerView;
import android.telecom.PhoneAccount;
import android.text.TextUtils;
import android.view.View;
import android.view.View.OnClickListener;
+import android.view.View.OnLongClickListener;
import android.widget.ImageView;
import android.widget.QuickContactBadge;
import android.widget.RelativeLayout;
import android.widget.TextView;
+import com.android.dialer.app.AccountSelectionActivity;
import com.android.dialer.calldetails.CallDetailsActivityCommon.AssistedDialingNumberParseWorker;
import com.android.dialer.calldetails.CallDetailsEntries.CallDetailsEntry;
+import com.android.dialer.callintent.CallInitiationType;
import com.android.dialer.calllogutils.CallbackActionHelper.CallbackAction;
import com.android.dialer.common.Assert;
import com.android.dialer.common.LogUtil;
@@ -41,6 +45,7 @@ import com.android.dialer.glidephotomanager.GlidePhotoManagerComponent;
import com.android.dialer.logging.InteractionEvent;
import com.android.dialer.logging.Logger;
import com.android.dialer.phonenumberutil.PhoneNumberHelper;
+import com.android.dialer.util.DialerUtils;
import com.android.dialer.widget.BidiTextView;
/**
@@ -49,7 +54,7 @@ import com.android.dialer.widget.BidiTextView;
* <p>The header contains contact info and the primary callback button.
*/
public class CallDetailsHeaderViewHolder extends RecyclerView.ViewHolder
- implements OnClickListener, FailureListener {
+ implements OnClickListener, OnLongClickListener, FailureListener {
private final CallDetailsHeaderListener callDetailsHeaderListener;
private final ImageView callbackButton;
@@ -86,6 +91,7 @@ public class CallDetailsHeaderViewHolder extends RecyclerView.ViewHolder
callDetailsHeaderListener::openAssistedDialingSettings);
callbackButton.setOnClickListener(this);
+ callbackButton.setOnLongClickListener(this);
this.number = number;
this.postDialDigits = postDialDigits;
@@ -250,6 +256,19 @@ public class CallDetailsHeaderViewHolder extends RecyclerView.ViewHolder
}
}
+ @Override
+ public boolean onLongClick(View view) {
+ if (view == callbackButton) {
+ Intent intent = AccountSelectionActivity.createIntent(view.getContext(),
+ number, CallInitiationType.Type.CALL_DETAILS);
+ if (intent != null) {
+ DialerUtils.startActivityWithErrorToast(view.getContext(), intent);
+ return true;
+ }
+ }
+ return false;
+ }
+
/** Listener for the call details header */
interface CallDetailsHeaderListener {