diff --git a/src/app/chat/view.nim b/src/app/chat/view.nim index 1c14679815..6e77c98b0a 100644 --- a/src/app/chat/view.nim +++ b/src/app/chat/view.nim @@ -102,8 +102,6 @@ QtObject: var m = self.replaceMentionsWithPubKeys(aliasMentions, contacts, message, (c => c.alias)) m = self.replaceMentionsWithPubKeys(ensMentions, contacts, m, (c => c.ensName)) m = self.replaceMentionsWithPubKeys(nameMentions, contacts, m, (c => c.ensName.split(".")[0])) - m = self.plainText(m) - self.status.chat.sendMessage(self.activeChannel.id, m, replyTo, contentType) proc verifyMessageSent*(self: ChatsView, data: string) {.slot.} = diff --git a/ui/app/AppLayouts/Chat/ChatColumn.qml b/ui/app/AppLayouts/Chat/ChatColumn.qml index cf7fa20967..0cd6a8b32b 100644 --- a/ui/app/AppLayouts/Chat/ChatColumn.qml +++ b/ui/app/AppLayouts/Chat/ChatColumn.qml @@ -218,8 +218,8 @@ StackLayout { position = nameLen text = "@" + aliasName + " " } else { - let left = currentText.substring(0, lastAtPosition) - let right = currentText.substring(lastAtPosition + 2) + let left = currentText.substring(0, lastAt) + let right = currentText.substring(lastAt + 1) text = `${left} @${aliasName} ${right}` } diff --git a/ui/app/AppLayouts/Chat/ChatColumn/ChatButtons.qml b/ui/app/AppLayouts/Chat/ChatColumn/ChatButtons.qml index f82695bc51..28556c450a 100644 --- a/ui/app/AppLayouts/Chat/ChatColumn/ChatButtons.qml +++ b/ui/app/AppLayouts/Chat/ChatColumn/ChatButtons.qml @@ -8,6 +8,7 @@ import "../components" Item { property int iconPadding: 6 property var addToChat: function () {} + property var onSend: function () {} id: chatButtonsContainer @@ -32,17 +33,7 @@ Item { anchors.verticalCenter: parent.verticalCenter anchors.right: parent.right onClicked: { - if(chatColumn.isImage){ - chatsModel.sendImage(sendImageArea.image); - } - - let msg = chatsModel.plainText(Emoji.deparse(txtData.text)).trim() - if(msg.length > 0){ - chatsModel.sendMessage(msg, chatColumn.isReply ? SelectedMessage.messageId : "", Utils.isOnlyEmoji(msg) ? Constants.emojiType : Constants.messageType) - txtData.text = ""; - } - - chatColumn.hideExtendedArea(); + onSend(); } background: Rectangle { color: parent.enabled ? Style.current.blue : Style.current.grey diff --git a/ui/app/AppLayouts/Chat/ChatColumn/ChatInput.qml b/ui/app/AppLayouts/Chat/ChatColumn/ChatInput.qml index 079d9bda01..44fca9dbd6 100644 --- a/ui/app/AppLayouts/Chat/ChatColumn/ChatInput.qml +++ b/ui/app/AppLayouts/Chat/ChatColumn/ChatInput.qml @@ -32,25 +32,25 @@ Rectangle { return msg } + function sendMsg(event){ + if(chatColumn.isImage){ + chatsModel.sendImage(sendImageArea.image); + } + var msg = chatsModel.plainText(Emoji.deparse(txtData.text).trim()).trim() + if(msg.length > 0){ + msg = interpretMessage(msg) + chatsModel.sendMessage(msg, chatColumn.isReply ? SelectedMessage.messageId : "", Utils.isOnlyEmoji(msg) ? Constants.emojiType : Constants.messageType); + txtData.text = ""; + if(event) event.accepted = true + sendMessageSound.stop() + Qt.callLater(sendMessageSound.play); + } + chatColumn.hideExtendedArea(); + } + function onEnter(event){ - if (event.modifiers === Qt.NoModifier && (event.key === Qt.Key_Enter || event.key === Qt.Key_Return)) { - if(chatColumn.isImage){ - chatsModel.sendImage(sendImageArea.image); - } - - var msg = chatsModel.plainText(Emoji.deparse(txtData.text).trim()).trim() - if(msg.length > 0){ - msg = interpretMessage(msg) - msg = Emoji.deparse(msg) - - chatsModel.sendMessage(msg, chatColumn.isReply ? SelectedMessage.messageId : "", Utils.isOnlyEmoji(msg) ? Constants.emojiType : Constants.messageType); - txtData.text = ""; - event.accepted = true - sendMessageSound.stop() - Qt.callLater(sendMessageSound.play); - } - chatColumn.hideExtendedArea(); + sendMsg(event); } } @@ -104,6 +104,9 @@ Rectangle { addToChat: function (text) { txtData.insert(txtData.length, text) } + onSend: function(){ + sendMsg(false) + } } } /*##^## diff --git a/vendor/nimqml b/vendor/nimqml index fe3d330269..57d6e6459d 160000 --- a/vendor/nimqml +++ b/vendor/nimqml @@ -1 +1 @@ -Subproject commit fe3d330269e08cf6a296719fa2dd84e91c7ecfda +Subproject commit 57d6e6459daab1d357adafcbf7cb008f5b8969e5