diff options
author | dan <dan.abramov@gmail.com> | 2024-11-18 22:21:47 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-11-18 22:21:47 +0000 |
commit | 7b6c18272385494145676e42cbe922bde7ceae6b (patch) | |
tree | c8d41082b9a04e33e3b24b4d51e5af25cfd63daa /src/view/com/util/images/AutoSizedImage.tsx | |
parent | 4f0f9eb4139a8c3439be0125ffd982b3cbf5c9b5 (diff) | |
download | voidsky-7b6c18272385494145676e42cbe922bde7ceae6b.tar.zst |
Add useHandleRef as a lighter alternative for useAnimatedRef (#6500)
Diffstat (limited to 'src/view/com/util/images/AutoSizedImage.tsx')
-rw-r--r-- | src/view/com/util/images/AutoSizedImage.tsx | 13 |
1 files changed, 5 insertions, 8 deletions
diff --git a/src/view/com/util/images/AutoSizedImage.tsx b/src/view/com/util/images/AutoSizedImage.tsx index 0ecbb3597..617b9bec4 100644 --- a/src/view/com/util/images/AutoSizedImage.tsx +++ b/src/view/com/util/images/AutoSizedImage.tsx @@ -1,11 +1,11 @@ import React, {useRef} from 'react' import {DimensionValue, Pressable, View} from 'react-native' -import Animated, {AnimatedRef, useAnimatedRef} from 'react-native-reanimated' import {Image} from 'expo-image' import {AppBskyEmbedImages} from '@atproto/api' import {msg} from '@lingui/macro' import {useLingui} from '@lingui/react' +import {HandleRef, useHandleRef} from '#/lib/hooks/useHandleRef' import type {Dimensions} from '#/lib/media/types' import {isNative} from '#/platform/detection' import {useLargeAltBadgeEnabled} from '#/state/preferences/large-alt-badge' @@ -68,17 +68,14 @@ export function AutoSizedImage({ image: AppBskyEmbedImages.ViewImage crop?: 'none' | 'square' | 'constrained' hideBadge?: boolean - onPress?: ( - containerRef: AnimatedRef<React.Component<{}, {}, any>>, - fetchedDims: Dimensions | null, - ) => void + onPress?: (containerRef: HandleRef, fetchedDims: Dimensions | null) => void onLongPress?: () => void onPressIn?: () => void }) { const t = useTheme() const {_} = useLingui() const largeAlt = useLargeAltBadgeEnabled() - const containerRef = useAnimatedRef() + const containerRef = useHandleRef() const fetchedDimsRef = useRef<{width: number; height: number} | null>(null) let aspectRatio: number | undefined @@ -109,7 +106,7 @@ export function AutoSizedImage({ const hasAlt = !!image.alt const contents = ( - <Animated.View ref={containerRef} collapsable={false} style={{flex: 1}}> + <View ref={containerRef} collapsable={false} style={{flex: 1}}> <Image style={[a.w_full, a.h_full]} source={image.thumb} @@ -188,7 +185,7 @@ export function AutoSizedImage({ )} </View> ) : null} - </Animated.View> + </View> ) if (cropDisabled) { |