diff options
Diffstat (limited to 'java/com/android/incallui/contactgrid')
-rw-r--r-- | java/com/android/incallui/contactgrid/ContactGridManager.java | 63 | ||||
-rw-r--r-- | java/com/android/incallui/contactgrid/res/layout/incall_contactgrid_bottom_row.xml | 9 |
2 files changed, 51 insertions, 21 deletions
diff --git a/java/com/android/incallui/contactgrid/ContactGridManager.java b/java/com/android/incallui/contactgrid/ContactGridManager.java index b3b775be2..ed533be58 100644 --- a/java/com/android/incallui/contactgrid/ContactGridManager.java +++ b/java/com/android/incallui/contactgrid/ContactGridManager.java @@ -22,6 +22,7 @@ import android.graphics.drawable.Drawable; import android.os.SystemClock; import android.support.annotation.NonNull; import android.support.annotation.Nullable; +import android.support.v4.view.ViewCompat; import android.telecom.TelecomManager; import android.text.TextUtils; import android.view.View; @@ -50,13 +51,13 @@ public class ContactGridManager { // Row 0: [Wi-Fi icon] Calling via Starbucks Wi-Fi // Row 0: [Wi-Fi icon] Starbucks Wi-Fi // Row 0: Hey Jake, pick up! - private ImageView connectionIconImageView; - private TextView statusTextView; + private final ImageView connectionIconImageView; + private final TextView statusTextView; // Row 1: Jake Peralta [Contact photo] // Row 1: Walgreens // Row 1: +1 (650) 253-0000 - private TextView contactNameTextView; + private final TextView contactNameTextView; @Nullable private ImageView avatarImageView; // Row 2: Mobile +1 (650) 253-0000 @@ -65,13 +66,14 @@ public class ContactGridManager { // Row 2: Hanging up // Row 2: [Alert sign] Suspected spam caller // Row 2: Your emergency callback number: +1 (650) 253-0000 - private ImageView workIconImageView; - private ImageView hdIconImageView; - private ImageView forwardIconImageView; - private ImageView spamIconImageView; - private ViewAnimator bottomTextSwitcher; - private TextView bottomTextView; - private Chronometer bottomTimerView; + private final ImageView workIconImageView; + private final ImageView hdIconImageView; + private final ImageView forwardIconImageView; + private final TextView forwardedNumberView; + private final ImageView spamIconImageView; + private final ViewAnimator bottomTextSwitcher; + private final TextView bottomTextView; + private final Chronometer bottomTimerView; private int avatarSize; private boolean hideAvatar; private boolean showAnonymousAvatar; @@ -89,16 +91,17 @@ public class ContactGridManager { this.avatarImageView = avatarImageView; this.avatarSize = avatarSize; this.showAnonymousAvatar = showAnonymousAvatar; - connectionIconImageView = (ImageView) view.findViewById(R.id.contactgrid_connection_icon); - statusTextView = (TextView) view.findViewById(R.id.contactgrid_status_text); - contactNameTextView = (TextView) view.findViewById(R.id.contactgrid_contact_name); - workIconImageView = (ImageView) view.findViewById(R.id.contactgrid_workIcon); - hdIconImageView = (ImageView) view.findViewById(R.id.contactgrid_hdIcon); - forwardIconImageView = (ImageView) view.findViewById(R.id.contactgrid_forwardIcon); - spamIconImageView = (ImageView) view.findViewById(R.id.contactgrid_spamIcon); - bottomTextSwitcher = (ViewAnimator) view.findViewById(R.id.contactgrid_bottom_text_switcher); - bottomTextView = (TextView) view.findViewById(R.id.contactgrid_bottom_text); - bottomTimerView = (Chronometer) view.findViewById(R.id.contactgrid_bottom_timer); + connectionIconImageView = view.findViewById(R.id.contactgrid_connection_icon); + statusTextView = view.findViewById(R.id.contactgrid_status_text); + contactNameTextView = view.findViewById(R.id.contactgrid_contact_name); + workIconImageView = view.findViewById(R.id.contactgrid_workIcon); + hdIconImageView = view.findViewById(R.id.contactgrid_hdIcon); + forwardIconImageView = view.findViewById(R.id.contactgrid_forwardIcon); + forwardedNumberView = view.findViewById(R.id.contactgrid_forwardNumber); + spamIconImageView = view.findViewById(R.id.contactgrid_spamIcon); + bottomTextSwitcher = view.findViewById(R.id.contactgrid_bottom_text_switcher); + bottomTextView = view.findViewById(R.id.contactgrid_bottom_text); + bottomTimerView = view.findViewById(R.id.contactgrid_bottom_timer); contactGridLayout = (View) contactNameTextView.getParent(); letterTile = new LetterTileDrawable(context.getResources()); @@ -336,9 +339,27 @@ public class ContactGridManager { } else if (!info.isHdAttemptingIconVisible) { hdIconImageView.setVisibility(View.GONE); } - forwardIconImageView.setVisibility(info.isForwardIconVisible ? View.VISIBLE : View.GONE); spamIconImageView.setVisibility(info.isSpamIconVisible ? View.VISIBLE : View.GONE); + if (info.isForwardIconVisible) { + forwardIconImageView.setVisibility(View.VISIBLE); + forwardedNumberView.setVisibility(View.VISIBLE); + if (info.isTimerVisible) { + bottomTextSwitcher.setVisibility(View.VISIBLE); + if (ViewCompat.getLayoutDirection(contactGridLayout) == ViewCompat.LAYOUT_DIRECTION_LTR) { + forwardedNumberView.setText(TextUtils.concat(info.label, " • ")); + } else { + forwardedNumberView.setText(TextUtils.concat(" • ", info.label)); + } + } else { + bottomTextSwitcher.setVisibility(View.GONE); + forwardedNumberView.setText(info.label); + } + } else { + forwardIconImageView.setVisibility(View.GONE); + forwardedNumberView.setVisibility(View.GONE); + } + if (info.isTimerVisible) { bottomTextSwitcher.setDisplayedChild(1); bottomTimerView.setBase( diff --git a/java/com/android/incallui/contactgrid/res/layout/incall_contactgrid_bottom_row.xml b/java/com/android/incallui/contactgrid/res/layout/incall_contactgrid_bottom_row.xml index ac378484b..c74017e5d 100644 --- a/java/com/android/incallui/contactgrid/res/layout/incall_contactgrid_bottom_row.xml +++ b/java/com/android/incallui/contactgrid/res/layout/incall_contactgrid_bottom_row.xml @@ -20,6 +20,15 @@ android:id="@id/contactgrid_forwardIcon" style="@style/BottomRowIcon" android:src="@drawable/quantum_ic_forward_vd_theme_24"/> + <TextView + android:id="@+id/contactgrid_forwardNumber" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:visibility="gone" + android:singleLine="true" + android:textAppearance="@style/Dialer.Incall.TextAppearance" + tools:gravity="start" + tools:text="+1 (650) 253-0000"/> <ImageView android:id="@+id/contactgrid_spamIcon" style="@style/BottomRowIcon" |