From 22fc02abbbf523b980a7bbde47565aeee4c409b5 Mon Sep 17 00:00:00 2001 From: zubiden <19638254+zubiden@users.noreply.github.com> Date: Mon, 14 Jul 2025 02:49:19 +0200 Subject: [PATCH] Avatar: Fix channel avatar animation (#6058) --- src/components/mediaViewer/MediaViewer.scss | 9 +-------- src/components/mediaViewer/MediaViewerContent.tsx | 12 +++++++----- src/components/mediaViewer/helpers/ghostAnimation.ts | 5 +---- src/global/selectors/messages.ts | 2 +- 4 files changed, 10 insertions(+), 18 deletions(-) diff --git a/src/components/mediaViewer/MediaViewer.scss b/src/components/mediaViewer/MediaViewer.scss index bff7caa35..464a1fdb1 100644 --- a/src/components/mediaViewer/MediaViewer.scss +++ b/src/components/mediaViewer/MediaViewer.scss @@ -218,20 +218,13 @@ transition: transform 0.2s ease, opacity 0.2s ease; - &.transition-circle { - transition: transform 0.2s ease, opacity 0.2s ease, border-radius 0.2s ease; - } - &.rounded-corners { border-radius: var(--border-radius-messages); } &.circle { border-radius: 50%; - } - - body.is-ios & { - transition: transform 0.2s ease, opacity 0.2s ease, border-radius 0.2s ease !important; + transition: transform 0.2s ease, opacity 0.2s ease, border-radius 0.2s ease; } img, diff --git a/src/components/mediaViewer/MediaViewerContent.tsx b/src/components/mediaViewer/MediaViewerContent.tsx index 7761a63c9..a962d70e0 100644 --- a/src/components/mediaViewer/MediaViewerContent.tsx +++ b/src/components/mediaViewer/MediaViewerContent.tsx @@ -172,11 +172,13 @@ const MediaViewerContent = ({ } } - const textParts = textMessage && (textMessage.content.action?.type === 'suggestProfilePhoto' - ? lang('Conversation.SuggestedPhotoTitle') - : renderMessageText({ - message: textMessage, maxTimestamp, threadId, forcePlayback: true, isForMediaViewer: true, - })); + const textParts = textMessage && ( + textMessage.content.action + ? (textMessage.content.action.type === 'suggestProfilePhoto' + ? lang('Conversation.SuggestedPhotoTitle') : undefined) + : renderMessageText({ + message: textMessage, maxTimestamp, threadId, forcePlayback: true, isForMediaViewer: true, + })); const buttonText = textMessage && 'buttonText' in textMessage ? textMessage.buttonText : undefined; const hasFooter = Boolean(textParts); const posterSize = calculateMediaViewerDimensions(dimensions!, hasFooter, isVideo); diff --git a/src/components/mediaViewer/helpers/ghostAnimation.ts b/src/components/mediaViewer/helpers/ghostAnimation.ts index cd314a9ff..78789dd29 100644 --- a/src/components/mediaViewer/helpers/ghostAnimation.ts +++ b/src/components/mediaViewer/helpers/ghostAnimation.ts @@ -371,7 +371,6 @@ function applyShape(ghost: HTMLDivElement, origin: MediaViewerOrigin) { case MediaViewerOrigin.ScheduledInline: case MediaViewerOrigin.StarsTransaction: case MediaViewerOrigin.PreviewMedia: - case MediaViewerOrigin.ChannelAvatar: ghost.classList.add('rounded-corners'); break; @@ -384,10 +383,8 @@ function applyShape(ghost: HTMLDivElement, origin: MediaViewerOrigin) { case MediaViewerOrigin.MiddleHeaderAvatar: case MediaViewerOrigin.SuggestedAvatar: + case MediaViewerOrigin.ChannelAvatar: ghost.classList.add('circle'); - if (origin === MediaViewerOrigin.SuggestedAvatar) { - ghost.classList.add('transition-circle'); - } break; } } diff --git a/src/global/selectors/messages.ts b/src/global/selectors/messages.ts index dfcd8ac0b..0ffcf1659 100644 --- a/src/global/selectors/messages.ts +++ b/src/global/selectors/messages.ts @@ -569,7 +569,7 @@ export function selectThreadIdFromMessage(global: T, mess const chat = selectChat(global, message.chatId); const { content } = message; const { replyToMsgId, replyToTopId, isForumTopic } = getMessageReplyInfo(message) || {}; - if ('action' in content && content.action?.type === 'topicCreate') { + if (content.action?.type === 'topicCreate') { return message.id; }