diff --git a/Linphone/core/chat/message/content/ChatMessageContentCore.cpp b/Linphone/core/chat/message/content/ChatMessageContentCore.cpp index a1e365c5b..9d7524ebc 100644 --- a/Linphone/core/chat/message/content/ChatMessageContentCore.cpp +++ b/Linphone/core/chat/message/content/ChatMessageContentCore.cpp @@ -155,6 +155,12 @@ void ChatMessageContentCore::setSelf(QSharedPointer me) mChatMessageContentModelConnection->invokeToCore( [this, msgState = LinphoneEnums::fromLinphone(state)] { emit msgStateChanged(msgState); }); }); + + // Sync state from SDK in case the file was already downloaded before we registered as listener + // (e.g. auto-download in group chats may complete before the UI objects are created). + if (mIsFileTransfer && !mWasDownloaded) { + mChatMessageContentModelConnection->invokeToModel([this] { mChatMessageContentModel->createThumbnail(); }); + } } bool ChatMessageContentCore::isFile() const { diff --git a/Linphone/view/Page/Form/Chat/SelectedChatView.qml b/Linphone/view/Page/Form/Chat/SelectedChatView.qml index e004d2f4a..2c27d4d9f 100644 --- a/Linphone/view/Page/Form/Chat/SelectedChatView.qml +++ b/Linphone/view/Page/Form/Chat/SelectedChatView.qml @@ -459,6 +459,7 @@ FocusScope { (mainItem.chatMessage ? qsTr("reply_to_label").arg(UtilsCpp.boldTextPart(mainItem.chatMessage.core.fromName, mainItem.chatMessage.core.fromName)) : "") : qsTr("conversation_editing_message_title") color: DefaultStyle.main2_500_main + textFormar: Text.RichText font { pixelSize: Typography.p3.pixelSize weight: Typography.p3.weight