mirror of
https://github.com/nextcloud/talk-android
synced 2025-07-09 13:59:48 +01:00
move edit button on click listener to setEditUI
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
This commit is contained in:
parent
09905e61fe
commit
15f3240f98
@ -40,6 +40,8 @@ import androidx.appcompat.content.res.AppCompatResources
|
||||
import androidx.appcompat.view.ContextThemeWrapper
|
||||
import androidx.core.content.ContextCompat
|
||||
import androidx.core.graphics.drawable.toDrawable
|
||||
import androidx.core.text.toSpannable
|
||||
import androidx.core.text.toSpanned
|
||||
import androidx.core.view.isVisible
|
||||
import androidx.core.widget.doAfterTextChanged
|
||||
import androidx.emoji2.widget.EmojiTextView
|
||||
@ -78,6 +80,7 @@ import com.nextcloud.talk.utils.CharPolicy
|
||||
import com.nextcloud.talk.utils.ImageEmojiEditText
|
||||
import com.nextcloud.talk.utils.SpreedFeatures
|
||||
import com.nextcloud.talk.utils.database.user.CurrentUserProviderNew
|
||||
import com.nextcloud.talk.utils.message.MessageUtils
|
||||
import com.nextcloud.talk.utils.text.Spans
|
||||
import com.otaliastudios.autocomplete.Autocomplete
|
||||
import com.stfalcon.chatkit.commons.models.IMessage
|
||||
@ -125,6 +128,9 @@ class MessageInputFragment : Fragment() {
|
||||
@Inject
|
||||
lateinit var networkMonitor: NetworkMonitor
|
||||
|
||||
@Inject
|
||||
lateinit var messageUtils: MessageUtils
|
||||
|
||||
lateinit var binding: FragmentMessageInputBinding
|
||||
private lateinit var conversationInternalId: String
|
||||
private var typedWhileTypingTimerIsRunning: Boolean = false
|
||||
@ -412,39 +418,6 @@ class MessageInputFragment : Fragment() {
|
||||
submitMessage(false)
|
||||
}
|
||||
|
||||
binding.fragmentMessageInputView.editMessageButton.setOnClickListener {
|
||||
val editable = binding.fragmentMessageInputView.inputEditText!!.editableText
|
||||
val mentionSpans = editable.getSpans(
|
||||
0,
|
||||
editable.length,
|
||||
Spans.MentionChipSpan::class.java
|
||||
)
|
||||
var mentionSpan: Spans.MentionChipSpan
|
||||
for (i in mentionSpans.indices) {
|
||||
mentionSpan = mentionSpans[i]
|
||||
var mentionId = mentionSpan.id
|
||||
val shouldQuote = mentionId.contains(" ") ||
|
||||
mentionId.contains("@") ||
|
||||
mentionId.startsWith("guest/") ||
|
||||
mentionId.startsWith("group/") ||
|
||||
mentionId.startsWith("email/") ||
|
||||
mentionId.startsWith("team/")
|
||||
if (shouldQuote) {
|
||||
mentionId = "\"" + mentionId + "\""
|
||||
}
|
||||
editable.replace(editable.getSpanStart(mentionSpan), editable.getSpanEnd(mentionSpan), "@$mentionId")
|
||||
}
|
||||
val message = chatActivity.messageInputViewModel.getEditChatMessage.value as ChatMessage
|
||||
val editedMessage = ChatUtils.getParsedMessage(editable!!.toString(), message.messageParameters)
|
||||
if (message.message!!.trim() != editedMessage?.trim()) {
|
||||
editMessageAPI(message, editedMessage!!)
|
||||
}
|
||||
clearEditUI()
|
||||
}
|
||||
binding.fragmentEditView.clearEdit.setOnClickListener {
|
||||
clearEditUI()
|
||||
}
|
||||
|
||||
if (CapabilitiesUtil.hasSpreedFeatureCapability(chatActivity.spreedCapabilities, SpreedFeatures.SILENT_SEND)) {
|
||||
binding.fragmentMessageInputView.button?.setOnLongClickListener {
|
||||
showSendButtonMenu()
|
||||
@ -964,6 +937,38 @@ class MessageInputFragment : Fragment() {
|
||||
binding.fragmentMessageInputView.editMessageButton.visibility = View.VISIBLE
|
||||
binding.fragmentEditView.editMessageView.visibility = View.VISIBLE
|
||||
binding.fragmentMessageInputView.attachmentButton.visibility = View.GONE
|
||||
|
||||
binding.fragmentMessageInputView.editMessageButton.setOnClickListener {
|
||||
val editable = binding.fragmentMessageInputView.inputEditText!!.editableText
|
||||
val mentionSpans = editable.getSpans(
|
||||
0,
|
||||
editable.length,
|
||||
Spans.MentionChipSpan::class.java
|
||||
)
|
||||
var mentionSpan: Spans.MentionChipSpan
|
||||
for (i in mentionSpans.indices) {
|
||||
mentionSpan = mentionSpans[i]
|
||||
var mentionId = mentionSpan.id
|
||||
val shouldQuote = mentionId.contains(" ") ||
|
||||
mentionId.contains("@") ||
|
||||
mentionId.startsWith("guest/") ||
|
||||
mentionId.startsWith("group/") ||
|
||||
mentionId.startsWith("email/") ||
|
||||
mentionId.startsWith("team/")
|
||||
if (shouldQuote) {
|
||||
mentionId = "\"" + mentionId + "\""
|
||||
}
|
||||
editable.replace(editable.getSpanStart(mentionSpan), editable.getSpanEnd(mentionSpan), "@$mentionId")
|
||||
}
|
||||
val message = chatActivity.messageInputViewModel.getEditChatMessage.value as ChatMessage
|
||||
if (message.message!!.trim() != editable?.trim()) {
|
||||
editMessageAPI(message, editable!!.toString())
|
||||
}
|
||||
clearEditUI()
|
||||
}
|
||||
binding.fragmentEditView.clearEdit.setOnClickListener {
|
||||
clearEditUI()
|
||||
}
|
||||
}
|
||||
|
||||
private fun clearEditUI() {
|
||||
|
Loading…
Reference in New Issue
Block a user