From 776807580a9be81aab33b43526c5ecb95ce2ba5e Mon Sep 17 00:00:00 2001 From: Tobias Fella Date: Tue, 6 Aug 2024 22:01:25 +0200 Subject: [PATCH] Re-add pending event indicator This seems to have been accidentally removed BUG: 491277 --- src/timeline/Bubble.qml | 54 +++++++++++++++++++++----------- src/timeline/MessageDelegate.qml | 2 ++ 2 files changed, 37 insertions(+), 19 deletions(-) diff --git a/src/timeline/Bubble.qml b/src/timeline/Bubble.qml index c99ac2a00..ddcd69963 100644 --- a/src/timeline/Bubble.qml +++ b/src/timeline/Bubble.qml @@ -74,6 +74,8 @@ QQC2.Control { */ property real maxContentWidth: -1 + required property bool isPending + /** * @brief The reply has been clicked. */ @@ -89,29 +91,43 @@ QQC2.Control { */ signal showMessageMenu - contentItem: ColumnLayout { - id: contentColumn - spacing: Kirigami.Units.smallSpacing - Repeater { - id: contentRepeater - model: root.contentModel - delegate: MessageComponentChooser { - room: root.room - index: root.index - actionsHandler: root.actionsHandler - timeline: root.timeline - maxContentWidth: root.maxContentWidth + contentItem: RowLayout { + Kirigami.Icon { + source: "content-loading-symbolic" + Layout.preferredWidth: Kirigami.Units.iconSizes.small + Layout.preferredHeight: Kirigami.Units.iconSizes.small + visible: root.isPending && NeoChatConfig.showLocalMessagesOnRight + } + ColumnLayout { + id: contentColumn + spacing: Kirigami.Units.smallSpacing + Repeater { + id: contentRepeater + model: root.contentModel + delegate: MessageComponentChooser { + room: root.room + index: root.index + actionsHandler: root.actionsHandler + timeline: root.timeline + maxContentWidth: root.maxContentWidth - onReplyClicked: eventId => { - root.replyClicked(eventId); + onReplyClicked: eventId => { + root.replyClicked(eventId); + } + onSelectedTextChanged: selectedText => { + root.selectedTextChanged(selectedText); + } + onShowMessageMenu: root.showMessageMenu() + onRemoveLinkPreview: index => root.contentModel.closeLinkPreview(index) } - onSelectedTextChanged: selectedText => { - root.selectedTextChanged(selectedText); - } - onShowMessageMenu: root.showMessageMenu() - onRemoveLinkPreview: index => root.contentModel.closeLinkPreview(index) } } + Kirigami.Icon { + source: "content-loading-symbolic" + Layout.preferredWidth: Kirigami.Units.iconSizes.small + Layout.preferredHeight: Kirigami.Units.iconSizes.small + visible: root.isPending && !NeoChatConfig.showLocalMessagesOnRight + } } background: Kirigami.ShadowedRectangle { diff --git a/src/timeline/MessageDelegate.qml b/src/timeline/MessageDelegate.qml index f2259b665..022bc329c 100644 --- a/src/timeline/MessageDelegate.qml +++ b/src/timeline/MessageDelegate.qml @@ -288,6 +288,8 @@ TimelineDelegate { showHighlight: root.showHighlight + isPending: root.isPending + onReplyClicked: eventId => { root.replyClicked(eventId); }