fix(reply): fix reply image displaying the current user

Fixes #4185
This commit is contained in:
Jonathan Rainville 2021-11-26 10:08:36 -05:00
parent 2d49da7331
commit 4d7d2261aa
5 changed files with 31 additions and 18 deletions

View File

@ -79,16 +79,16 @@ QtObject {
property bool isStatusUpdate: false property bool isStatusUpdate: false
property int statusAgeEpoch: 0 property int statusAgeEpoch: 0
property int replyMessageIndex: chatsModel.messageView.messageList.getMessageIndex(responseTo); // property int replyMessageIndex: chatsModel.messageView.messageList.getMessageIndex(responseTo);
property string repliedMessageAuthor: replyMessageIndex > -1 ? chatsModel.messageView.messageList.getMessageData(replyMessageIndex, "userName") : ""; // property string repliedMessageAuthor: replyMessageIndex > -1 ? chatsModel.messageView.messageList.getMessageData(replyMessageIndex, "userName") : "";
property string repliedMessageAuthorPubkey: replyMessageIndex > -1 ? chatsModel.messageView.messageList.getMessageData(replyMessageIndex, "publicKey") : ""; // property string repliedMessageAuthorPubkey: replyMessageIndex > -1 ? chatsModel.messageView.messageList.getMessageData(replyMessageIndex, "publicKey") : "";
property bool repliedMessageAuthorIsCurrentUser: replyMessageIndex > -1 ? repliedMessageAuthorPubkey === userProfile.pubKey : ""; // property bool repliedMessageAuthorIsCurrentUser: replyMessageIndex > -1 ? repliedMessageAuthorPubkey === userProfile.pubKey : "";
property bool repliedMessageIsEdited: replyMessageIndex > -1 ? chatsModel.messageView.messageList.getMessageData(replyMessageIndex, "isEdited") === "true" : false; // property bool repliedMessageIsEdited: replyMessageIndex > -1 ? chatsModel.messageView.messageList.getMessageData(replyMessageIndex, "isEdited") === "true" : false;
property string repliedMessageContent: replyMessageIndex > -1 ? chatsModel.messageView.messageList.getMessageData(replyMessageIndex, "message") : ""; // property string repliedMessageContent: replyMessageIndex > -1 ? chatsModel.messageView.messageList.getMessageData(replyMessageIndex, "message") : "";
property int repliedMessageType: replyMessageIndex > -1 ? parseInt(chatsModel.messageView.messageList.getMessageData(replyMessageIndex, "contentType")) : 0; // property int repliedMessageType: replyMessageIndex > -1 ? parseInt(chatsModel.messageView.messageList.getMessageData(replyMessageIndex, "contentType")) : 0;
property string repliedMessageImage: replyMessageIndex > -1 ? chatsModel.messageView.messageList.getMessageData(replyMessageIndex, "image") : ""; // property string repliedMessageImage: replyMessageIndex > -1 ? chatsModel.messageView.messageList.getMessageData(replyMessageIndex, "image") : "";
property string repliedMessageUserIdenticon: replyMessageIndex > -1 ? chatsModel.messageView.messageList.getMessageData(replyMessageIndex, "identicon") : ""; // property string repliedMessageUserIdenticon: replyMessageIndex > -1 ? chatsModel.messageView.messageList.getMessageData(replyMessageIndex, "identicon") : "";
property string repliedMessageUserImage: replyMessageIndex > -1 ? appMain.getProfileImage(repliedMessageAuthorPubkey, repliedMessageAuthorIsCurrentUser , false) || "" : ""; // property string repliedMessageUserImage: replyMessageIndex > -1 ? appMain.getProfileImage(repliedMessageAuthorPubkey, repliedMessageAuthorIsCurrentUser , false) || "" : "";
property var imageClick: function () {} property var imageClick: function () {}
property var scrollToBottom: function () {} property var scrollToBottom: function () {}

View File

@ -10,8 +10,8 @@ Loader {
height: active ? item.height : 0 height: active ? item.height : 0
property int imageHeight: 36 property int imageHeight: 36
property int imageWidth: 36 property int imageWidth: 36
// property string profileImage: "" property string profileImage: ""
// property string identiconImageSource: "" property string identiconImageSource: ""
property bool isReplyImage: false property bool isReplyImage: false
// property var messageContextMenu // property var messageContextMenu
// property bool isCurrentUser: false // property bool isCurrentUser: false
@ -31,6 +31,14 @@ Loader {
border.width: 1 border.width: 1
border.color: Style.current.border border.color: Style.current.border
source: { source: {
if (root.isReplyImage) {
if (root.profileImage) {
return root.profileImage
}
if (root.identiconImageSource) {
return root.identiconImageSource
}
}
if (profileImageSource) { if (profileImageSource) {
return profileImageSource return profileImageSource
} }

View File

@ -27,9 +27,9 @@ Loader {
// property bool isCurrentUser: false // property bool isCurrentUser: false
// property int repliedMessageType // property int repliedMessageType
// property string repliedMessageImage // property string repliedMessageImage
// property string repliedMessageUserIdenticon property string repliedMessageUserIdenticon: ""
// property bool repliedMessageIsEdited // property bool repliedMessageIsEdited
// property string repliedMessageUserImage property string repliedMessageUserImage: ""
// property string repliedMessageAuthor // property string repliedMessageAuthor
// property string repliedMessageContent // property string repliedMessageContent
// property string responseTo: "" // property string responseTo: ""
@ -107,9 +107,9 @@ Loader {
active: true active: true
anchors.left: replyCorner.right anchors.left: replyCorner.right
anchors.leftMargin: Style.current.halfPadding anchors.leftMargin: Style.current.halfPadding
// identiconImageSource: repliedMessageUserIdenticon identiconImageSource: repliedMessageUserIdenticon
isReplyImage: true isReplyImage: true
// profileImage: repliedMessageUserImage profileImage: repliedMessageUserImage
// isCurrentUser: isCurrentUser // isCurrentUser: isCurrentUser
onClickMessage: { onClickMessage: {
root.clickMessage(true, false, false, null, false, false, isReplyImage) root.clickMessage(true, false, false, null, false, false, isReplyImage)

View File

@ -40,6 +40,9 @@ Item {
return false; return false;
} }
} }
property string repliedMessageUserIdenticon
property string repliedMessageUserImage
property bool showEdit: true property bool showEdit: true
property var messageContextMenu property var messageContextMenu
signal addEmoji(bool isProfileClick, bool isSticker, bool isImage , var image, bool emojiOnly, bool hideEmojiPicker) signal addEmoji(bool isProfileClick, bool isSticker, bool isImage , var image, bool emojiOnly, bool hideEmojiPicker)
@ -243,9 +246,9 @@ Item {
// isCurrentUser: root.messageStore.isCurrentUser // isCurrentUser: root.messageStore.isCurrentUser
// repliedMessageType: root.messageStore.repliedMessageType // repliedMessageType: root.messageStore.repliedMessageType
// repliedMessageImage: root.messageStore.repliedMessageImage // repliedMessageImage: root.messageStore.repliedMessageImage
// repliedMessageUserIdenticon: root.messageStore.repliedMessageUserIdenticon repliedMessageUserIdenticon: root.repliedMessageUserIdenticon
// repliedMessageIsEdited: root.messageStore.repliedMessageIsEdited // repliedMessageIsEdited: root.messageStore.repliedMessageIsEdited
// repliedMessageUserImage: root.messageStore.repliedMessageUserImage repliedMessageUserImage: root.repliedMessageUserImage
// repliedMessageAuthor: root.messageStore.repliedMessageAuthor // repliedMessageAuthor: root.messageStore.repliedMessageAuthor
// repliedMessageContent: root.messageStore.repliedMessageContent // repliedMessageContent: root.messageStore.repliedMessageContent
// responseTo: root.messageStore.responseTo // responseTo: root.messageStore.responseTo

View File

@ -368,6 +368,8 @@ Column {
messageContextMenu: root.messageContextMenu messageContextMenu: root.messageContextMenu
store: root.rootStore store: root.rootStore
messageStore: root.messageStore messageStore: root.messageStore
repliedMessageUserIdenticon: root.repliedMessageUserIdenticon
repliedMessageUserImage: root.repliedMessageUserImage
onAddEmoji: { onAddEmoji: {
root.clickMessage(isProfileClick, isSticker, isImage , image, emojiOnly, hideEmojiPicker); root.clickMessage(isProfileClick, isSticker, isImage , image, emojiOnly, hideEmojiPicker);
} }