diff --git a/app/src/main/java/org/thoughtcrime/securesms/components/settings/conversation/ConversationSettingsFragment.kt b/app/src/main/java/org/thoughtcrime/securesms/components/settings/conversation/ConversationSettingsFragment.kt index cd5deb7fb0..abb05eec06 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/components/settings/conversation/ConversationSettingsFragment.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/components/settings/conversation/ConversationSettingsFragment.kt @@ -543,16 +543,14 @@ class ConversationSettingsFragment : DSLSettingsFragment( } } - if (recipientState.identityRecord != null) { - clickPref( - title = DSLSettingsText.from(R.string.ConversationSettingsFragment__view_safety_number), - icon = DSLSettingsIcon.from(R.drawable.ic_safety_number_24), - isEnabled = !state.isDeprecatedOrUnregistered, - onClick = { - VerifyIdentityActivity.startOrShowExchangeMessagesDialog(requireActivity(), recipientState.identityRecord) - } - ) - } + clickPref( + title = DSLSettingsText.from(R.string.ConversationSettingsFragment__view_safety_number), + icon = DSLSettingsIcon.from(R.drawable.ic_safety_number_24), + isEnabled = !state.isDeprecatedOrUnregistered, + onClick = { + VerifyIdentityActivity.startOrShowExchangeMessagesDialog(requireActivity(), recipientState.identityRecord) + } + ) } if (state.sharedMedia != null && state.sharedMedia.count > 0) { 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 064f1d0fdd..972af19f08 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 @@ -314,14 +314,11 @@ public final class RecipientBottomSheetDialogFragment extends BottomSheetDialogF }); viewModel.getIdentity().observe(getViewLifecycleOwner(), identityRecord -> { - viewSafetyNumberButton.setVisibility(identityRecord != null ? View.VISIBLE : View.GONE); - - if (identityRecord != null) { - viewSafetyNumberButton.setOnClickListener(view -> { - dismiss(); - viewModel.onViewSafetyNumberClicked(requireActivity(), identityRecord); - }); - } + viewSafetyNumberButton.setVisibility(View.VISIBLE); + viewSafetyNumberButton.setOnClickListener(view -> { + dismiss(); + viewModel.onViewSafetyNumberClicked(requireActivity(), identityRecord); + }); }); avatar.setOnClickListener(view -> { diff --git a/app/src/main/java/org/thoughtcrime/securesms/verify/VerifyIdentityActivity.java b/app/src/main/java/org/thoughtcrime/securesms/verify/VerifyIdentityActivity.java index 5cc0a96627..c7af36de96 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/verify/VerifyIdentityActivity.java +++ b/app/src/main/java/org/thoughtcrime/securesms/verify/VerifyIdentityActivity.java @@ -5,6 +5,7 @@ import android.content.Intent; import android.os.Bundle; import androidx.annotation.NonNull; +import androidx.annotation.Nullable; import com.google.android.material.dialog.MaterialAlertDialogBuilder; @@ -35,8 +36,12 @@ public class VerifyIdentityActivity extends PassphraseRequiredActivity { private final DynamicTheme dynamicTheme = new DynamicNoActionBarTheme(); public static void startOrShowExchangeMessagesDialog(@NonNull Context context, - @NonNull IdentityRecord identityRecord) { - startOrShowExchangeMessagesDialog(context, identityRecord.getRecipientId(), identityRecord.getIdentityKey(), identityRecord.getVerifiedStatus() == IdentityTable.VerifiedStatus.VERIFIED); + @Nullable IdentityRecord identityRecord) { + if (identityRecord != null) { + startOrShowExchangeMessagesDialog(context, identityRecord.getRecipientId(), identityRecord.getIdentityKey(), identityRecord.getVerifiedStatus() == IdentityTable.VerifiedStatus.VERIFIED); + } else { + showExchangeMessagesDialog(context); + } } public static void startOrShowExchangeMessagesDialog(@NonNull Context context,