mirror of
https://github.com/signalapp/Signal-Android.git
synced 2025-12-25 05:27:42 +00:00
Fix draft lost bug when leaving media send flow.
This commit is contained in:
@@ -91,6 +91,7 @@ class AddMessageDialogFragment : KeyboardEntryDialogFragment(R.layout.v2_media_a
|
||||
})
|
||||
|
||||
binding.content.addAMessageInput.setText(requireArguments().getCharSequence(ARG_INITIAL_TEXT))
|
||||
binding.content.addAMessageInput.addTextChangedListener { viewModel.setMessage(it) }
|
||||
|
||||
binding.content.emojiToggle.setOnClickListener { onEmojiToggleClicked() }
|
||||
if (requireArguments().getBoolean(ARG_INITIAL_EMOJI_TOGGLE) && view is KeyboardAwareLinearLayout) {
|
||||
@@ -124,7 +125,11 @@ 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
|
||||
val newChild = if (state.viewOnceToggleState == MediaSelectionState.ViewOnceToggleState.ONCE) 1 else 0
|
||||
if (binding.content.viewOnceToggle.displayedChild != newChild) {
|
||||
binding.content.viewOnceToggle.displayedChild = newChild
|
||||
}
|
||||
|
||||
if (state.viewOnceToggleState == MediaSelectionState.ViewOnceToggleState.ONCE) {
|
||||
binding.content.addAMessageInput.text = null
|
||||
dismiss()
|
||||
|
||||
@@ -9,6 +9,7 @@ import android.graphics.Rect
|
||||
import android.net.Uri
|
||||
import android.os.Bundle
|
||||
import android.provider.OpenableColumns
|
||||
import android.text.SpannableString
|
||||
import android.view.Gravity
|
||||
import android.view.View
|
||||
import android.view.ViewGroup
|
||||
@@ -496,10 +497,7 @@ class MediaReviewFragment : Fragment(R.layout.v2_media_review_fragment), Schedul
|
||||
when (viewOnceState) {
|
||||
MediaSelectionState.ViewOnceToggleState.INFINITE -> {
|
||||
addMessageButton.gravity = Gravity.CENTER_VERTICAL
|
||||
addMessageButton.setText(
|
||||
message.takeIf { it.isNotNullOrBlank() } ?: getString(R.string.MediaReviewFragment__add_a_message),
|
||||
TextView.BufferType.SPANNABLE
|
||||
)
|
||||
addMessageButton.text = SpannableString(message.takeIf { it.isNotNullOrBlank() } ?: getString(R.string.MediaReviewFragment__add_a_message))
|
||||
addMessageButton.isClickable = true
|
||||
}
|
||||
MediaSelectionState.ViewOnceToggleState.ONCE -> {
|
||||
|
||||
Reference in New Issue
Block a user