diff --git a/app/src/main/java/org/thoughtcrime/securesms/components/FromTextView.java b/app/src/main/java/org/thoughtcrime/securesms/components/FromTextView.java index 61a6442c01..138dda05e1 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/components/FromTextView.java +++ b/app/src/main/java/org/thoughtcrime/securesms/components/FromTextView.java @@ -39,7 +39,7 @@ public class FromTextView extends SimpleEmojiTextView { } public void setText(Recipient recipient, boolean read, @Nullable String suffix) { - setText(recipient, recipient.getDisplayNameOrUsername(getContext()), read, suffix); + setText(recipient, recipient.getDisplayName(getContext()), read, suffix); } public void setText(Recipient recipient, @Nullable CharSequence fromString, boolean read, @Nullable String suffix) { diff --git a/app/src/main/java/org/thoughtcrime/securesms/components/settings/conversation/preferences/BioTextPreference.kt b/app/src/main/java/org/thoughtcrime/securesms/components/settings/conversation/preferences/BioTextPreference.kt index f14394c381..324cd53f75 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/components/settings/conversation/preferences/BioTextPreference.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/components/settings/conversation/preferences/BioTextPreference.kt @@ -45,7 +45,7 @@ object BioTextPreference { val name = if (recipient.isSelf) { context.getString(R.string.note_to_self) } else { - recipient.getDisplayNameOrUsername(context) + recipient.getDisplayName(context) } if (!recipient.showVerified() && !recipient.isIndividual) { diff --git a/app/src/main/java/org/thoughtcrime/securesms/contacts/SelectedContacts.kt b/app/src/main/java/org/thoughtcrime/securesms/contacts/SelectedContacts.kt index b4771a9363..243b97f7c1 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/contacts/SelectedContacts.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/contacts/SelectedContacts.kt @@ -30,7 +30,7 @@ object SelectedContacts { private val chip: ContactChip = itemView.findViewById(R.id.contact_chip) override fun bind(model: Model) { - chip.text = model.recipient.getShortDisplayNameIncludingUsername(context) + chip.text = model.recipient.getShortDisplayName(context) chip.setContact(model.selectedContact) chip.isCloseIconVisible = true chip.setOnCloseIconClickListener { diff --git a/app/src/main/java/org/thoughtcrime/securesms/conversation/ConversationHeaderView.java b/app/src/main/java/org/thoughtcrime/securesms/conversation/ConversationHeaderView.java index 38e85fcf7d..470f21d09a 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/conversation/ConversationHeaderView.java +++ b/app/src/main/java/org/thoughtcrime/securesms/conversation/ConversationHeaderView.java @@ -76,7 +76,7 @@ public class ConversationHeaderView extends ConstraintLayout { } public String setTitle(@NonNull Recipient recipient) { - SpannableStringBuilder title = new SpannableStringBuilder(recipient.isSelf() ? getContext().getString(R.string.note_to_self) : recipient.getDisplayNameOrUsername(getContext())); + SpannableStringBuilder title = new SpannableStringBuilder(recipient.isSelf() ? getContext().getString(R.string.note_to_self) : recipient.getDisplayName(getContext())); if (recipient.showVerified()) { SpanUtil.appendCenteredImageSpan(title, ContextUtil.requireDrawable(getContext(), R.drawable.ic_official_28), 28, 28); } diff --git a/app/src/main/java/org/thoughtcrime/securesms/conversation/ConversationTitleView.java b/app/src/main/java/org/thoughtcrime/securesms/conversation/ConversationTitleView.java index 076d9d1ad7..9f719c2b3a 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/conversation/ConversationTitleView.java +++ b/app/src/main/java/org/thoughtcrime/securesms/conversation/ConversationTitleView.java @@ -207,7 +207,7 @@ public class ConversationTitleView extends ConstraintLayout { } private void setIndividualRecipientTitle(@NonNull Recipient recipient) { - final String displayName = recipient.getDisplayNameOrUsername(getContext()); + final String displayName = recipient.getDisplayName(getContext()); this.title.setText(displayName); this.subtitle.setText(null); updateSubtitleVisibility(); diff --git a/app/src/main/java/org/thoughtcrime/securesms/conversationlist/ConversationListItem.java b/app/src/main/java/org/thoughtcrime/securesms/conversationlist/ConversationListItem.java index 04c798041a..c7f0e69399 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/conversationlist/ConversationListItem.java +++ b/app/src/main/java/org/thoughtcrime/securesms/conversationlist/ConversationListItem.java @@ -299,7 +299,7 @@ public final class ConversationListItem extends ConstraintLayout implements Bind joinMembersDisposable.dispose(); setSubjectViewText(null); - fromView.setText(recipient.get(), recipient.get().getDisplayNameOrUsername(getContext()), false, null, false); + fromView.setText(recipient.get(), recipient.get().getDisplayName(getContext()), false, null, false); setSubjectViewText(SearchUtil.getHighlightedSpan(locale, searchStyleFactory, messageResult.getBodySnippet(), highlightSubstring, SearchUtil.MATCH_ALL)); updateDateView = () -> dateView.setText(DateUtils.getBriefRelativeTimeSpanString(getContext(), locale, messageResult.getReceivedTimestampMs())); diff --git a/app/src/main/java/org/thoughtcrime/securesms/database/model/GroupsV2UpdateMessageProducer.java b/app/src/main/java/org/thoughtcrime/securesms/database/model/GroupsV2UpdateMessageProducer.java index 24e72956b8..e84973e0ad 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/database/model/GroupsV2UpdateMessageProducer.java +++ b/app/src/main/java/org/thoughtcrime/securesms/database/model/GroupsV2UpdateMessageProducer.java @@ -1584,7 +1584,7 @@ final class GroupsV2UpdateMessageProducer { String beforeChunk = template.substring(startIndex, nearestPosition); builder.append(beforeChunk); - builder.append(SpanUtil.clickable(Recipient.resolved(recipientId).getDisplayNameOrUsername(context), ContextCompat.getColor(context, R.color.conversation_item_update_text_color), v -> { + builder.append(SpanUtil.clickable(Recipient.resolved(recipientId).getDisplayName(context), ContextCompat.getColor(context, R.color.conversation_item_update_text_color), v -> { if (!recipientId.isUnknown() && clickHandler != null) { clickHandler.accept(recipientId); } diff --git a/app/src/main/java/org/thoughtcrime/securesms/groups/ui/GroupMemberListAdapter.java b/app/src/main/java/org/thoughtcrime/securesms/groups/ui/GroupMemberListAdapter.java index b9fe65149c..fc7a0e3328 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/groups/ui/GroupMemberListAdapter.java +++ b/app/src/main/java/org/thoughtcrime/securesms/groups/ui/GroupMemberListAdapter.java @@ -399,7 +399,7 @@ final class GroupMemberListAdapter extends RecyclerView.Adapter { Recipient recipient = Recipient.resolved(recipientId); Recipient groupRecipient = Recipient.resolved(groupRecipientIds.get(0)); - String recipientName = recipient.getDisplayNameOrUsername(context); + String recipientName = recipient.getDisplayName(context); String groupName = groupRecipient.getDisplayName(context); if (groupRecipient.getGroupId().get().isV1() && !recipient.hasE164()) { diff --git a/app/src/main/java/org/thoughtcrime/securesms/groups/ui/managegroup/dialogs/GroupInviteSentDialog.java b/app/src/main/java/org/thoughtcrime/securesms/groups/ui/managegroup/dialogs/GroupInviteSentDialog.java index 861d468392..61eaf68388 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/groups/ui/managegroup/dialogs/GroupInviteSentDialog.java +++ b/app/src/main/java/org/thoughtcrime/securesms/groups/ui/managegroup/dialogs/GroupInviteSentDialog.java @@ -33,7 +33,7 @@ public final class GroupInviteSentDialog { .setTitle(context.getResources().getQuantityString(R.plurals.GroupManagement_invitation_sent, size, size)) .setPositiveButton(android.R.string.ok, null); if (size == 1) { - builder.setMessage(context.getString(R.string.GroupManagement_invite_single_user, recipients.get(0).getDisplayNameOrUsername(context))); + builder.setMessage(context.getString(R.string.GroupManagement_invite_single_user, recipients.get(0).getDisplayName(context))); } else { builder.setMessage(R.string.GroupManagement_invite_multiple_users) .setView(R.layout.dialog_multiple_group_invites_sent); diff --git a/app/src/main/java/org/thoughtcrime/securesms/notifications/v2/NotificationItem.kt b/app/src/main/java/org/thoughtcrime/securesms/notifications/v2/NotificationItem.kt index 38a0ef48fa..d5462ed7dc 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/notifications/v2/NotificationItem.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/notifications/v2/NotificationItem.kt @@ -93,7 +93,7 @@ sealed class NotificationItem(val threadRecipient: Recipient, protected val reco context.getString(R.string.SingleRecipientNotificationBuilder_new_message) } else { SpannableStringBuilder().apply { - append(Util.getBoldedString(authorRecipient.getShortDisplayNameIncludingUsername(context))) + append(Util.getBoldedString(authorRecipient.getShortDisplayName(context))) if (threadRecipient != authorRecipient) { append(Util.getBoldedString("@${threadRecipient.getDisplayName(context)}")) } diff --git a/app/src/main/java/org/thoughtcrime/securesms/recipients/Recipient.java b/app/src/main/java/org/thoughtcrime/securesms/recipients/Recipient.java index 6452bc06c6..3a1e4aa808 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/recipients/Recipient.java +++ b/app/src/main/java/org/thoughtcrime/securesms/recipients/Recipient.java @@ -544,10 +544,6 @@ public class Recipient { } } - public boolean hasName() { - return groupName != null; - } - /** * False iff it {@link #getDisplayName} would fall back to e164, email or unknown. */ @@ -560,6 +556,10 @@ public class Recipient { public @NonNull String getDisplayName(@NonNull Context context) { String name = getNameFromLocalData(context); + if (Util.isEmpty(name)) { + name = username; + } + if (Util.isEmpty(name)) { name = getUnknownDisplayName(context); } @@ -567,20 +567,6 @@ public class Recipient { return StringUtil.isolateBidi(name); } - public @NonNull String getDisplayNameOrUsername(@NonNull Context context) { - String name = getNameFromLocalData(context); - - if (Util.isEmpty(name)) { - name = StringUtil.isolateBidi(username); - } - - if (Util.isEmpty(name)) { - name = StringUtil.isolateBidi(getUnknownDisplayName(context)); - } - - return StringUtil.isolateBidi(name); - } - public boolean hasNonUsernameDisplayName(@NonNull Context context) { return getNameFromLocalData(context) != null; } @@ -643,16 +629,6 @@ public class Recipient { String name = Util.getFirstNonEmpty(getGroupName(context), getSystemProfileName().getGivenName(), getProfileName().getGivenName(), - getDisplayName(context)); - - return StringUtil.isolateBidi(name); - } - - public @NonNull String getShortDisplayNameIncludingUsername(@NonNull Context context) { - String name = Util.getFirstNonEmpty(getGroupName(context), - getSystemProfileName().getGivenName(), - getProfileName().getGivenName(), - shouldShowE164() ? getE164().orElse(null) : null, getUsername().orElse(null), getDisplayName(context)); diff --git a/app/src/main/java/org/thoughtcrime/securesms/recipients/ui/about/AboutSheet.kt b/app/src/main/java/org/thoughtcrime/securesms/recipients/ui/about/AboutSheet.kt index da9954ccaa..4db9e45db2 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/recipients/ui/about/AboutSheet.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/recipients/ui/about/AboutSheet.kt @@ -89,8 +89,8 @@ class AboutSheet : ComposeBottomSheetDialogFragment() { model = AboutModel( isSelf = recipient.get().isSelf, hasAvatar = recipient.get().profileAvatarFileDetails.hasFile(), - displayName = recipient.get().getDisplayNameOrUsername(requireContext()), - shortName = recipient.get().getShortDisplayNameIncludingUsername(requireContext()), + displayName = recipient.get().getDisplayName(requireContext()), + shortName = recipient.get().getShortDisplayName(requireContext()), about = recipient.get().about, verified = verified, recipientForAvatar = recipient.get(), diff --git a/app/src/main/java/org/thoughtcrime/securesms/recipients/ui/bottomsheet/RecipientBottomSheetDialogFragment.java b/app/src/main/java/org/thoughtcrime/securesms/recipients/ui/bottomsheet/RecipientBottomSheetDialogFragment.java index 6e76866ad4..3f5759dfee 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/recipients/ui/bottomsheet/RecipientBottomSheetDialogFragment.java +++ b/app/src/main/java/org/thoughtcrime/securesms/recipients/ui/bottomsheet/RecipientBottomSheetDialogFragment.java @@ -184,7 +184,7 @@ public final class RecipientBottomSheetDialogFragment extends BottomSheetDialogF } String name = recipient.isSelf() ? requireContext().getString(R.string.note_to_self) - : recipient.getDisplayNameOrUsername(requireContext()); + : recipient.getDisplayName(requireContext()); fullName.setVisibility(TextUtils.isEmpty(name) ? View.GONE : View.VISIBLE); SpannableStringBuilder nameBuilder = new SpannableStringBuilder(name); if (recipient.showVerified()) { diff --git a/app/src/main/java/org/thoughtcrime/securesms/sharing/ShareSelectionMappingModel.java b/app/src/main/java/org/thoughtcrime/securesms/sharing/ShareSelectionMappingModel.java index dcd202b095..2c94980a4b 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/sharing/ShareSelectionMappingModel.java +++ b/app/src/main/java/org/thoughtcrime/securesms/sharing/ShareSelectionMappingModel.java @@ -22,7 +22,7 @@ public class ShareSelectionMappingModel implements MappingModel recipient.isSelf() ? context.getString(R.string.note_to_self) - : recipient.getShortDisplayNameIncludingUsername(context)) + : recipient.getShortDisplayName(context)) .orElseGet(shareContact::getNumber); return isFirst ? name : context.getString(R.string.ShareActivity__comma_s, name); diff --git a/app/src/main/java/org/thoughtcrime/securesms/sharing/interstitial/ShareInterstitialMappingModel.java b/app/src/main/java/org/thoughtcrime/securesms/sharing/interstitial/ShareInterstitialMappingModel.java index c08bdc2cb8..8de6ba8134 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/sharing/interstitial/ShareInterstitialMappingModel.java +++ b/app/src/main/java/org/thoughtcrime/securesms/sharing/interstitial/ShareInterstitialMappingModel.java @@ -21,7 +21,7 @@ class ShareInterstitialMappingModel extends RecipientMappingModel