diff --git a/app/src/main/java/org/thoughtcrime/securesms/mediasend/v2/review/AddMessageDialogFragment.kt b/app/src/main/java/org/thoughtcrime/securesms/mediasend/v2/review/AddMessageDialogFragment.kt
index 61cf5c6e0c..ebdfa944f5 100644
--- a/app/src/main/java/org/thoughtcrime/securesms/mediasend/v2/review/AddMessageDialogFragment.kt
+++ b/app/src/main/java/org/thoughtcrime/securesms/mediasend/v2/review/AddMessageDialogFragment.kt
@@ -33,6 +33,7 @@ import org.thoughtcrime.securesms.keyboard.KeyboardPage
import org.thoughtcrime.securesms.keyboard.KeyboardPagerViewModel
import org.thoughtcrime.securesms.keyvalue.SignalStore
import org.thoughtcrime.securesms.mediasend.v2.HudCommand
+import org.thoughtcrime.securesms.mediasend.v2.MediaSelectionState
import org.thoughtcrime.securesms.mediasend.v2.MediaSelectionViewModel
import org.thoughtcrime.securesms.recipients.Recipient
import org.thoughtcrime.securesms.recipients.RecipientId
@@ -105,6 +106,10 @@ class AddMessageDialogFragment : KeyboardEntryDialogFragment(R.layout.v2_media_a
binding.hud.setOnClickListener { dismissAllowingStateLoss() }
+ binding.content.viewOnceToggle.setOnClickListener {
+ viewModel.incrementViewOnceState()
+ }
+
val confirm: View = view.findViewById(R.id.confirm_button)
confirm.setOnClickListener { dismissAllowingStateLoss() }
@@ -125,6 +130,14 @@ class AddMessageDialogFragment : KeyboardEntryDialogFragment(R.layout.v2_media_a
}
)
+ viewModel.state.observe(viewLifecycleOwner) { state ->
+ binding.content.viewOnceToggle.displayedChild = if (state.viewOnceToggleState == MediaSelectionState.ViewOnceToggleState.ONCE) 1 else 0
+ if (state.viewOnceToggleState == MediaSelectionState.ViewOnceToggleState.ONCE) {
+ binding.content.addAMessageInput.text = null
+ dismiss()
+ }
+ }
+
initializeMentions()
}
diff --git a/app/src/main/res/layout/v2_media_add_message_dialog_fragment_content.xml b/app/src/main/res/layout/v2_media_add_message_dialog_fragment_content.xml
index d49d947205..940f81eb75 100644
--- a/app/src/main/res/layout/v2_media_add_message_dialog_fragment_content.xml
+++ b/app/src/main/res/layout/v2_media_add_message_dialog_fragment_content.xml
@@ -25,9 +25,11 @@
android:layout_height="0dp"
android:background="@drawable/rounded_rectangle_surface_variant_20"
app:layout_constraintBottom_toBottomOf="@id/add_a_message_input"
- app:layout_constraintEnd_toEndOf="@id/add_a_message_limit"
+ app:layout_constraintEnd_toEndOf="@id/view_once_toggle"
+ app:layout_constraintHorizontal_bias="0.4"
app:layout_constraintStart_toStartOf="@id/emoji_toggle"
- app:layout_constraintTop_toTopOf="@id/add_a_message_input" />
+ app:layout_constraintTop_toTopOf="@id/add_a_message_input"
+ app:layout_constraintVertical_bias="0.0" />
+
+
+
+
+
+
+
+