fix(app): copy selected message text without markdown (#2759)

This commit is contained in:
Hampus authored and GitHub committed 2026-09-14 14:53:53 +02:00
1 parent 91a2604e9e
commit 7d56481aba
4 files changed
+38 -13

No files matched your search

@@ -27,6 +27,7 @@ import {parse} from '@app/features/messaging/components/markdown/renderers';
import {MarkdownContext} from '@app/features/messaging/components/markdown/renderers/RendererTypes';
import MessageEdit from '@app/features/messaging/state/MessageEdit';
import {hasStyleableMessageText} from '@app/features/messaging/utils/FailedMessageDisplayUtils';
import {buildMessageContentCopyText} from '@app/features/messaging/utils/MessageCopyTextUtils';
import {
buildExistingAttachmentEditReferences,
canSubmitEmptyMessageEdit,
@@ -140,6 +141,16 @@ export const UserMessage = observer(() => {
}),
[message.id, message.channelId, message.mentionChannels],
);
const contentCopyText = useMemo(
() =>
buildMessageContentCopyText(astNodes, {
channelId: message.channelId,
messageId: message.id,
mentionChannels: message.mentionChannels,
i18n,
}),
[astNodes, message.id, message.channelId, message.mentionChannels, i18n.locale],
);
const shouldHideContent =
UserSettings.getRenderEmbeds() &&
message.embeds.length > 0 &&
@@ -281,7 +292,7 @@ export const UserMessage = observer(() => {
className={clsx(markupStyles.markup)}
data-search-highlight-scope="message"
data-flx="channel.user-message.render-message-content.div"
{...messageContentCopyBlockProps(message.content)}
{...messageContentCopyBlockProps(contentCopyText)}
>
<SafeMarkdown
content={message.content}
@@ -315,6 +326,7 @@ export const UserMessage = observer(() => {
shouldShowEditingInput,
shouldHideContent,
markdownOptions,
contentCopyText,
message,
message.content,
message.id,
@@ -415,7 +427,7 @@ export const UserMessage = observer(() => {
className={clsx(markupStyles.markup)}
data-search-highlight-scope="message"
data-flx="channel.user-message.div"
{...messageContentCopyBlockProps(message.content)}
{...messageContentCopyBlockProps(contentCopyText)}
>
<SafeMarkdown
content={message.content}