Do not show contact address in subtitle.

This commit is contained in:
Alan Evans 2019-06-11 12:52:28 -04:00 committed by Greyson Parrelli
parent fb4c9d3bf1
commit cecf16c595
5 changed files with 76 additions and 48 deletions

View File

@ -21,7 +21,6 @@
android:layout_gravity="center_vertical" android:layout_gravity="center_vertical"
android:gravity="center_vertical" android:gravity="center_vertical"
android:textCursorDrawable="@null" android:textCursorDrawable="@null"
android:textSize="18sp"
android:fontFamily="sans-serif"/> android:fontFamily="sans-serif"/>
<org.thoughtcrime.securesms.components.AnimatingToggle <org.thoughtcrime.securesms.components.AnimatingToggle

View File

@ -1,51 +1,50 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<org.thoughtcrime.securesms.conversation.ConversationTitleView <org.thoughtcrime.securesms.conversation.ConversationTitleView xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools" xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/conversation_title_view" android:id="@+id/conversation_title_view"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_height="match_parent"
xmlns:app="http://schemas.android.com/apk/res-auto" android:layout_gravity="center_vertical"
android:layout_gravity="center_vertical" android:gravity="center_vertical"
android:gravity="center_vertical"> tools:background="#007fff">
<org.thoughtcrime.securesms.components.AvatarImageView <org.thoughtcrime.securesms.components.AvatarImageView
android:id="@+id/contact_photo_image" android:id="@+id/contact_photo_image"
android:foreground="@drawable/contact_photo_background" android:layout_width="40dp"
android:layout_width="40dp" android:layout_height="40dp"
android:layout_height="40dp" android:layout_alignParentStart="true"
android:layout_alignParentStart="true" android:layout_centerVertical="true"
android:layout_centerVertical="true" android:layout_marginEnd="10dp"
android:layout_marginEnd="10dp" android:clickable="true"
android:cropToPadding="true" android:contentDescription="@string/conversation_list_item_view__contact_photo_image"
android:transitionName="contact_photo" android:cropToPadding="true"
android:clickable="true" android:foreground="@drawable/contact_photo_background"
app:inverted="true" android:transitionName="contact_photo"
tools:src="@drawable/ic_contact_picture" app:inverted="true"
android:contentDescription="@string/conversation_list_item_view__contact_photo_image"/> tools:src="@drawable/ic_contact_picture" />
<LinearLayout <LinearLayout
android:id="@+id/content" android:id="@+id/content"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:orientation="vertical" android:layout_centerVertical="true"
android:layout_toEndOf="@id/contact_photo_image" android:layout_toEndOf="@id/contact_photo_image"
android:layout_centerVertical="true"> android:orientation="vertical">
<org.thoughtcrime.securesms.components.emoji.EmojiTextView <org.thoughtcrime.securesms.components.emoji.EmojiTextView
android:id="@+id/title" android:id="@+id/title"
style="@style/TextSecure.TitleTextStyle"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:maxLines="1"
android:ellipsize="end"
android:textSize="18dp"
android:transitionName="recipient_name"
android:drawablePadding="5dp"
android:gravity="center_vertical"
android:layout_gravity="center_vertical" android:layout_gravity="center_vertical"
style="@style/TextSecure.TitleTextStyle" android:drawablePadding="5dp"
tools:text="Contact name" android:ellipsize="end"
tools:ignore="UnusedAttribute"/> android:gravity="center_vertical"
android:maxLines="1"
android:transitionName="recipient_name"
tools:ignore="UnusedAttribute"
tools:text="Contact name" />
<LinearLayout <LinearLayout
android:id="@+id/subtitle_container" android:id="@+id/subtitle_container"
@ -55,26 +54,39 @@
<ImageView <ImageView
android:id="@+id/verified_indicator" android:id="@+id/verified_indicator"
android:src="@drawable/ic_check_circle_white_18dp"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginEnd="3dp"
android:layout_gravity="bottom" android:layout_gravity="bottom"
android:layout_marginEnd="3dp"
android:alpha="0.7" android:alpha="0.7"
android:visibility="gone"/> android:src="@drawable/ic_check_circle_white_18dp"
android:visibility="gone"
tools:visibility="visible" />
<TextView
android:id="@+id/verified_subtitle"
style="@style/TextSecure.SubtitleTextStyle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical|start"
android:layout_marginEnd="3dp"
android:ellipsize="end"
android:gravity="center_vertical"
android:maxLines="1"
android:text="@string/ConversationTitleView_verified"
android:textDirection="ltr" />
<org.thoughtcrime.securesms.components.emoji.EmojiTextView <org.thoughtcrime.securesms.components.emoji.EmojiTextView
android:id="@+id/subtitle" android:id="@+id/subtitle"
style="@style/TextSecure.SubtitleTextStyle"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:maxLines="1"
android:ellipsize="end"
android:layout_gravity="center_vertical|start" android:layout_gravity="center_vertical|start"
android:ellipsize="end"
android:gravity="center_vertical" android:gravity="center_vertical"
android:maxLines="1"
android:textDirection="ltr" android:textDirection="ltr"
android:textSize="13dp" tools:text="(123) 123-1234" />
tools:text="(123) 123-1234"
style="@style/TextSecure.SubtitleTextStyle"/>
</LinearLayout> </LinearLayout>

View File

@ -266,6 +266,9 @@
<!-- ConversationListItemAction --> <!-- ConversationListItemAction -->
<string name="ConversationListItemAction_archived_conversations_d">Archived conversations (%d)</string> <string name="ConversationListItemAction_archived_conversations_d">Archived conversations (%d)</string>
<!-- ConversationTitleView -->
<string name="ConversationTitleView_verified">Verified</string>
<!-- CreateProfileActivity --> <!-- CreateProfileActivity -->
<string name="CreateProfileActivity_your_profile_info">Your profile info</string> <string name="CreateProfileActivity_your_profile_info">Your profile info</string>
<string name="CreateProfileActivity_error_setting_profile_photo">Error setting profile photo</string> <string name="CreateProfileActivity_error_setting_profile_photo">Error setting profile photo</string>

View File

@ -91,10 +91,12 @@
<style name="TextSecure.TitleTextStyle" parent="TextAppearance.AppCompat.Widget.ActionBar.Title"> <style name="TextSecure.TitleTextStyle" parent="TextAppearance.AppCompat.Widget.ActionBar.Title">
<item name="android:textColor">@color/white</item> <item name="android:textColor">@color/white</item>
<item name="android:textColorHint">#BFffffff</item> <item name="android:textColorHint">#BFffffff</item>
<item name="android:textSize">18sp</item>
</style> </style>
<style name="TextSecure.SubtitleTextStyle" parent="TextAppearance.AppCompat.Widget.ActionBar.Subtitle"> <style name="TextSecure.SubtitleTextStyle" parent="TextAppearance.AppCompat.Widget.ActionBar.Subtitle">
<item name="android:textColor">#BFffffff</item> <item name="android:textColor">#BFffffff</item>
<item name="android:textSize">13sp</item>
</style> </style>
<style name="Registration.Description" parent="@android:style/TextAppearance"> <style name="Registration.Description" parent="@android:style/TextAppearance">

View File

@ -32,6 +32,7 @@ public class ConversationTitleView extends RelativeLayout {
private TextView subtitle; private TextView subtitle;
private ImageView verified; private ImageView verified;
private View subtitleContainer; private View subtitleContainer;
private View verifiedSubtitle;
public ConversationTitleView(Context context) { public ConversationTitleView(Context context) {
this(context, null); this(context, null);
@ -51,6 +52,7 @@ public class ConversationTitleView extends RelativeLayout {
this.subtitle = ViewUtil.findById(this, R.id.subtitle); this.subtitle = ViewUtil.findById(this, R.id.subtitle);
this.verified = ViewUtil.findById(this, R.id.verified_indicator); this.verified = ViewUtil.findById(this, R.id.verified_indicator);
this.subtitleContainer = ViewUtil.findById(this, R.id.subtitle_container); this.subtitleContainer = ViewUtil.findById(this, R.id.subtitle_container);
this.verifiedSubtitle = ViewUtil.findById(this, R.id.verified_subtitle);
this.avatar = ViewUtil.findById(this, R.id.contact_photo_image); this.avatar = ViewUtil.findById(this, R.id.contact_photo_image);
ViewUtil.setTextViewGravityStart(this.title, getContext()); ViewUtil.setTextViewGravityStart(this.title, getContext());
@ -58,6 +60,8 @@ public class ConversationTitleView extends RelativeLayout {
} }
public void setTitle(@NonNull GlideRequests glideRequests, @Nullable Recipient recipient) { public void setTitle(@NonNull GlideRequests glideRequests, @Nullable Recipient recipient) {
this.subtitleContainer.setVisibility(View.VISIBLE);
if (recipient == null) setComposeTitle(); if (recipient == null) setComposeTitle();
else setRecipientTitle(recipient); else setRecipientTitle(recipient);
@ -72,10 +76,14 @@ public class ConversationTitleView extends RelativeLayout {
if (recipient != null) { if (recipient != null) {
this.avatar.setAvatar(glideRequests, recipient, false); this.avatar.setAvatar(glideRequests, recipient, false);
} }
updateVerifiedSubtitleVisibility();
} }
public void setVerified(boolean verified) { public void setVerified(boolean verified) {
this.verified.setVisibility(verified ? View.VISIBLE : View.GONE); this.verified.setVisibility(verified ? View.VISIBLE : View.GONE);
updateVerifiedSubtitleVisibility();
} }
@Override @Override
@ -113,7 +121,6 @@ public class ConversationTitleView extends RelativeLayout {
.collect(Collectors.joining(", "))); .collect(Collectors.joining(", ")));
this.subtitle.setVisibility(View.VISIBLE); this.subtitle.setVisibility(View.VISIBLE);
this.subtitleContainer.setVisibility(VISIBLE);
} }
private void setSelfTitle() { private void setSelfTitle() {
@ -124,7 +131,6 @@ public class ConversationTitleView extends RelativeLayout {
@SuppressLint("SetTextI18n") @SuppressLint("SetTextI18n")
private void setNonContactRecipientTitle(Recipient recipient) { private void setNonContactRecipientTitle(Recipient recipient) {
this.title.setText(recipient.getAddress().serialize()); this.title.setText(recipient.getAddress().serialize());
this.subtitleContainer.setVisibility(VISIBLE);
if (TextUtils.isEmpty(recipient.getProfileName())) { if (TextUtils.isEmpty(recipient.getProfileName())) {
this.subtitle.setText(null); this.subtitle.setText(null);
@ -138,10 +144,16 @@ public class ConversationTitleView extends RelativeLayout {
private void setContactRecipientTitle(Recipient recipient) { private void setContactRecipientTitle(Recipient recipient) {
this.title.setText(recipient.getName()); this.title.setText(recipient.getName());
if (recipient.getCustomLabel() != null) this.subtitle.setText(recipient.getCustomLabel()); if (TextUtils.isEmpty(recipient.getCustomLabel())) {
else this.subtitle.setText(recipient.getAddress().serialize()); this.subtitle.setText(null);
this.subtitle.setVisibility(View.GONE);
} else {
this.subtitle.setText(recipient.getCustomLabel());
this.subtitle.setVisibility(View.VISIBLE);
}
}
this.subtitle.setVisibility(View.VISIBLE); private void updateVerifiedSubtitleVisibility() {
this.subtitleContainer.setVisibility(VISIBLE); verifiedSubtitle.setVisibility(subtitle.getVisibility() != VISIBLE && verified.getVisibility() == VISIBLE ? VISIBLE : GONE);
} }
} }