diff --git a/src/components/GracefullyImage.tsx b/src/components/GracefullyImage.tsx index fb95f5b0..53d046ff 100644 --- a/src/components/GracefullyImage.tsx +++ b/src/components/GracefullyImage.tsx @@ -23,6 +23,7 @@ export interface Props { imageStyle?: ImageStyle dim?: boolean + withoutTransition?: boolean enableLiveTextInteraction?: boolean } @@ -36,6 +37,7 @@ const GracefullyImage = ({ style, imageStyle, dim, + withoutTransition = false, enableLiveTextInteraction = false }: Props) => { const { reduceMotionEnabled } = useAccessibility() @@ -59,7 +61,7 @@ const GracefullyImage = ({ placeholderContentFit='cover' placeholder={sources.blurhash || connectMedia(sources.preview)} source={hidden ? undefined : connectMedia(source)} - transition={{ duration: 80 }} + {...((!withoutTransition || !reduceMotionEnabled) && { transition: { duration: 120 } })} style={{ flex: 1, ...imageStyle }} onError={() => { if ( diff --git a/src/components/Timeline/Shared/Attachment/Audio.tsx b/src/components/Timeline/Shared/Attachment/Audio.tsx index 4e176df8..ca75708f 100644 --- a/src/components/Timeline/Shared/Attachment/Audio.tsx +++ b/src/components/Timeline/Shared/Attachment/Audio.tsx @@ -5,8 +5,9 @@ import { connectMedia } from '@utils/api/helpers/connect' import { StyleConstants } from '@utils/styles/constants' import { useTheme } from '@utils/styles/ThemeManager' import { Audio } from 'expo-av' -import React, { useCallback, useEffect, useRef, useState } from 'react' +import React, { useCallback, useContext, useEffect, useRef, useState } from 'react' import { AppState, AppStateStatus, View } from 'react-native' +import StatusContext from '../Context' import AttachmentAltText from './AltText' import { aspectRatio } from './dimensions' @@ -18,6 +19,7 @@ export interface Props { } const AttachmentAudio: React.FC = ({ total, index, sensitiveShown, audio }) => { + const { inThread } = useContext(StatusContext) const { colors } = useTheme() const [audioPlayer, setAudioPlayer] = useState() @@ -88,6 +90,7 @@ const AttachmentAudio: React.FC = ({ total, index, sensitiveShown, audio height: '100%' }} dim + withoutTransition={inThread} /> ) : null ) : ( @@ -100,6 +103,7 @@ const AttachmentAudio: React.FC = ({ total, index, sensitiveShown, audio }} style={{ position: 'absolute', width: '100%', height: '100%' }} dim + withoutTransition={inThread} /> ) : null}