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