mirror of
https://github.com/signalapp/Signal-Android.git
synced 2026-04-21 17:29:32 +01:00
Fix edit quote draft loading incorrectly bug.
This commit is contained in:
@@ -132,6 +132,11 @@ class DraftRepository(
|
||||
|
||||
val draftText: CharSequence? = drafts.firstOrNull { it.type == DraftTable.Draft.TEXT }?.let { updatedText ?: it.value }
|
||||
|
||||
val messageEdit: ConversationMessage? = drafts.firstOrNull { it.type == DraftTable.Draft.MESSAGE_EDIT }?.let { loadDraftMessageEditInternal(it.value) }
|
||||
if (messageEdit != null) {
|
||||
return ShareOrDraftData.SetEditMessage(messageEdit, draftText, clearQuote = drafts.none { it.type == DraftTable.Draft.QUOTE }) to drafts
|
||||
}
|
||||
|
||||
val location: SignalPlace? = drafts.firstOrNull { it.type == DraftTable.Draft.LOCATION }?.let { SignalPlace.deserialize(it.value) }
|
||||
if (location != null) {
|
||||
return ShareOrDraftData.SetLocation(location, draftText) to drafts
|
||||
@@ -142,11 +147,6 @@ class DraftRepository(
|
||||
return ShareOrDraftData.SetQuote(quote, draftText) to drafts
|
||||
}
|
||||
|
||||
val messageEdit: ConversationMessage? = drafts.firstOrNull { it.type == DraftTable.Draft.MESSAGE_EDIT }?.let { loadDraftMessageEditInternal(it.value) }
|
||||
if (messageEdit != null) {
|
||||
return ShareOrDraftData.SetEditMessage(messageEdit, draftText) to drafts
|
||||
}
|
||||
|
||||
if (draftText != null) {
|
||||
return ShareOrDraftData.SetText(draftText) to drafts
|
||||
}
|
||||
@@ -248,6 +248,6 @@ class DraftRepository(
|
||||
data class SetText(val text: CharSequence) : ShareOrDraftData
|
||||
data class SetLocation(val location: SignalPlace, val draftText: CharSequence?) : ShareOrDraftData
|
||||
data class SetQuote(val quote: ConversationMessage, val draftText: CharSequence?) : ShareOrDraftData
|
||||
data class SetEditMessage(val messageEdit: ConversationMessage, val draftText: CharSequence?) : ShareOrDraftData
|
||||
data class SetEditMessage(val messageEdit: ConversationMessage, val draftText: CharSequence?, val clearQuote: Boolean) : ShareOrDraftData
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1496,7 +1496,7 @@ class ConversationFragment :
|
||||
is ShareOrDraftData.SetLocation -> attachmentManager.setLocation(data.location, MediaConstraints.getPushMediaConstraints())
|
||||
is ShareOrDraftData.SetEditMessage -> {
|
||||
composeText.setDraftText(data.draftText)
|
||||
inputPanel.enterEditMessageMode(Glide.with(this), data.messageEdit, true)
|
||||
inputPanel.enterEditMessageMode(Glide.with(this), data.messageEdit, true, data.clearQuote)
|
||||
}
|
||||
|
||||
is ShareOrDraftData.SetMedia -> {
|
||||
@@ -2326,7 +2326,7 @@ class ConversationFragment :
|
||||
|
||||
viewModel.resolveMessageToEdit(conversationMessage)
|
||||
.subscribeBy { updatedMessage ->
|
||||
inputPanel.enterEditMessageMode(Glide.with(this), updatedMessage, false)
|
||||
inputPanel.enterEditMessageMode(Glide.with(this), updatedMessage, false, false)
|
||||
}
|
||||
.addTo(disposables)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user