From 4b73d6849025c8272c3fc882855f73a0d113ced6 Mon Sep 17 00:00:00 2001 From: "B.Melnik" Date: Mon, 27 Sep 2021 15:08:55 +0300 Subject: [PATCH] fix(ui): Resolve conflict between click on text message and click on message Closes: #3593 --- .../Chat/ChatColumn/MessageComponents/ChatText.qml | 9 ++++++++- .../Chat/ChatColumn/MessageComponents/CompactMessage.qml | 7 +++++++ .../Chat/ChatColumn/MessageComponents/NormalMessage.qml | 7 +++++++ 3 files changed, 22 insertions(+), 1 deletion(-) diff --git a/ui/app/AppLayouts/Chat/ChatColumn/MessageComponents/ChatText.qml b/ui/app/AppLayouts/Chat/ChatColumn/MessageComponents/ChatText.qml index 754857d61b..9d5f807a61 100644 --- a/ui/app/AppLayouts/Chat/ChatColumn/MessageComponents/ChatText.qml +++ b/ui/app/AppLayouts/Chat/ChatColumn/MessageComponents/ChatText.qml @@ -5,13 +5,18 @@ import utils 1.0 import QtGraphicalEffects 1.0 Item { + id: root + property bool longChatText: true property bool veryLongChatText: chatsModel.plainText(message).length > (appSettings.useCompactMode ? Constants.limitLongChatTextCompactMode : Constants.limitLongChatText) property bool readMore: false property alias textField: chatText - id: root + signal linkActivated(url link) + + property bool linkHovered: chatText.hoveredLink !== "" + z: 51 implicitHeight: visible ? (showMoreLoader.active ? childrenRect.height - 10 : chatText.height) : 0 @@ -43,6 +48,8 @@ Item { height: root.veryLongChatText && !root.readMore ? Math.min(implicitHeight, 200) : implicitHeight clip: height < implicitHeight onLinkActivated: { + + root.linkActivated(link) if(link.startsWith("#")) { const channelName = link.substring(1); const foundChannelObj = chatsModel.getChannel(channelName); diff --git a/ui/app/AppLayouts/Chat/ChatColumn/MessageComponents/CompactMessage.qml b/ui/app/AppLayouts/Chat/ChatColumn/MessageComponents/CompactMessage.qml index 906fbe759c..51f8bec4fb 100644 --- a/ui/app/AppLayouts/Chat/ChatColumn/MessageComponents/CompactMessage.qml +++ b/ui/app/AppLayouts/Chat/ChatColumn/MessageComponents/CompactMessage.qml @@ -384,6 +384,12 @@ Item { anchors.leftMargin: -leftPadding textField.leftPadding: leftPadding textField.rightPadding: Style.current.bigPadding + + onLinkActivated: { + if (activityCenterMessage) { + clickMessage(false, isSticker, false) + } + } } Loader { @@ -446,6 +452,7 @@ Item { MessageMouseArea { id: messageMouseArea + enabled: !chatText.linkHovered anchors.fill: stickerLoader.active ? stickerLoader : chatText z: activityCenterMessage ? chatText.z + 1 : chatText.z -1 } diff --git a/ui/app/AppLayouts/Chat/ChatColumn/MessageComponents/NormalMessage.qml b/ui/app/AppLayouts/Chat/ChatColumn/MessageComponents/NormalMessage.qml index 5365e59d2b..e76a444300 100644 --- a/ui/app/AppLayouts/Chat/ChatColumn/MessageComponents/NormalMessage.qml +++ b/ui/app/AppLayouts/Chat/ChatColumn/MessageComponents/NormalMessage.qml @@ -151,6 +151,12 @@ Item { chatText.setWidths() } } + + onLinkActivated: { + if (activityCenterMessage) { + clickMessage(false, isSticker, false) + } + } } Loader { @@ -208,6 +214,7 @@ Item { MessageMouseArea { anchors.fill: parent + enabled: !chatText.linkHovered } RectangleCorner {