diff --git a/app/src/androidTest/java/org/thoughtcrime/securesms/conversation/SafetyNumberChangeDialogPreviewer.kt b/app/src/androidTest/java/org/thoughtcrime/securesms/conversation/SafetyNumberChangeDialogPreviewer.kt index e6b520e66..78d4968fb 100644 --- a/app/src/androidTest/java/org/thoughtcrime/securesms/conversation/SafetyNumberChangeDialogPreviewer.kt +++ b/app/src/androidTest/java/org/thoughtcrime/securesms/conversation/SafetyNumberChangeDialogPreviewer.kt @@ -5,6 +5,7 @@ import androidx.test.ext.junit.runners.AndroidJUnit4 import org.junit.Rule import org.junit.Test import org.junit.runner.RunWith +import org.signal.core.util.ThreadUtil import org.thoughtcrime.securesms.contacts.paged.ContactSearchKey import org.thoughtcrime.securesms.database.IdentityDatabase import org.thoughtcrime.securesms.database.SignalDatabase @@ -20,7 +21,7 @@ import org.thoughtcrime.securesms.testing.SignalActivityRule @RunWith(AndroidJUnit4::class) class SafetyNumberChangeDialogPreviewer { - @get:Rule val harness = SignalActivityRule(othersCount = 10) + @get:Rule val harness = SignalActivityRule(othersCount = 5) @Test fun testShowLongName() { @@ -46,7 +47,7 @@ class SafetyNumberChangeDialogPreviewer { othersRecipients.forEach { other -> SignalDatabase.recipients.setProfileName(other.id, ProfileName.fromParts("My", "Name")) - harness.setVerified(other, IdentityDatabase.VerifiedStatus.VERIFIED) + harness.setVerified(other, IdentityDatabase.VerifiedStatus.DEFAULT) harness.changeIdentityKey(other) } @@ -61,6 +62,6 @@ class SafetyNumberChangeDialogPreviewer { } // Uncomment to make dialog stay on screen, otherwise will show/dismiss immediately - // ThreadUtil.sleep(15000) + ThreadUtil.sleep(15000) } } diff --git a/app/src/main/java/org/thoughtcrime/securesms/safety/SafetyNumberRecipientRowItem.kt b/app/src/main/java/org/thoughtcrime/securesms/safety/SafetyNumberRecipientRowItem.kt index a78e8fae9..920716d3a 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/safety/SafetyNumberRecipientRowItem.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/safety/SafetyNumberRecipientRowItem.kt @@ -3,6 +3,7 @@ package org.thoughtcrime.securesms.safety import android.view.View import android.view.ViewGroup import android.widget.TextView +import org.signal.core.util.DimensionUnit import org.signal.core.util.or import org.thoughtcrime.securesms.R import org.thoughtcrime.securesms.components.AvatarImageView @@ -47,7 +48,6 @@ object SafetyNumberRecipientRowItem { private val avatar: AvatarImageView = itemView.findViewById(R.id.safety_number_recipient_avatar) private val name: TextView = itemView.findViewById(R.id.safety_number_recipient_name) private val identifier: TextView = itemView.findViewById(R.id.safety_number_recipient_identifier) - private val menu: View = itemView.findViewById(R.id.safety_number_recipient_menu) override fun bind(model: Model) { avatar.setRecipient(model.recipient) @@ -62,8 +62,12 @@ object SafetyNumberRecipientRowItem { identifier.text = subLineText identifier.visible = !subLineText.isNullOrBlank() - menu.setOnClickListener { + + itemView.setOnClickListener { + itemView.isSelected = true SignalContextMenu.Builder(itemView, itemView.rootView as ViewGroup) + .offsetY(DimensionUnit.DP.toPixels(12f).toInt()) + .onDismiss { itemView.isSelected = false } .show(model.getContextMenuActions(model)) } } diff --git a/app/src/main/res/layout/safety_number_recipient_row_item.xml b/app/src/main/res/layout/safety_number_recipient_row_item.xml index 6ec73f962..1e62d7433 100644 --- a/app/src/main/res/layout/safety_number_recipient_row_item.xml +++ b/app/src/main/res/layout/safety_number_recipient_row_item.xml @@ -4,22 +4,25 @@ xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="wrap_content" - android:layout_marginStart="@dimen/dsl_settings_gutter" - android:layout_marginEnd="4dp" + android:layout_marginStart="12dp" + android:layout_marginEnd="12dp" + android:background="@drawable/selectable_list_item_background" android:minHeight="64dp"> 24dp 10dp 16dp + 12dp 260dp diff --git a/app/src/main/res/values/dimens.xml b/app/src/main/res/values/dimens.xml index e6c8558d6..f5f4ddcbd 100644 --- a/app/src/main/res/values/dimens.xml +++ b/app/src/main/res/values/dimens.xml @@ -199,6 +199,7 @@ 16dp 2dp 8dp + 4dp 240dp