expo-image tweaks (#10710)
This commit is contained in:
@@ -499,6 +499,7 @@ function TriggerClone({
|
||||
accessibilityLabel={label}
|
||||
accessibilityHint={_(msg`The subject of the context menu`)}
|
||||
accessibilityIgnoresInvertColors={false}
|
||||
cachePolicy="none"
|
||||
/>
|
||||
</Animated.View>
|
||||
)
|
||||
|
||||
@@ -246,6 +246,7 @@ const ImageItem = ({
|
||||
}
|
||||
}
|
||||
cachePolicy="memory"
|
||||
useAppleWebpCodec
|
||||
/>
|
||||
</Animated.View>
|
||||
</Animated.View>
|
||||
|
||||
@@ -32,6 +32,7 @@ import Animated, {
|
||||
withSpring,
|
||||
type WithSpringConfig,
|
||||
} from 'react-native-reanimated'
|
||||
import {Image} from 'expo-image'
|
||||
import * as ScreenOrientation from 'expo-screen-orientation'
|
||||
|
||||
import {type Dimensions} from '#/lib/media/types'
|
||||
@@ -136,6 +137,9 @@ export default function ImageViewRoot({
|
||||
'worklet'
|
||||
thumbRects.set({})
|
||||
})()
|
||||
requestIdleCallback(() => {
|
||||
void Image.clearMemoryCache()
|
||||
})
|
||||
}, [thumbRects])
|
||||
|
||||
useAnimatedReaction(
|
||||
|
||||
@@ -129,6 +129,7 @@ export function ImageItem({
|
||||
contentFit="cover"
|
||||
accessible={true}
|
||||
accessibilityIgnoresInvertColors
|
||||
useAppleWebpCodec
|
||||
/>
|
||||
<MediaInsetBorder style={[a.rounded_xs]} />
|
||||
{children}
|
||||
|
||||
@@ -108,6 +108,7 @@ export const ExternalEmbed = ({
|
||||
source={{uri: imageUri}}
|
||||
accessibilityIgnoresInvertColors
|
||||
loading="lazy"
|
||||
useAppleWebpCodec
|
||||
/>
|
||||
) : undefined}
|
||||
|
||||
|
||||
@@ -166,6 +166,7 @@ export const StandardSiteEmbed = ({
|
||||
source={{uri: imageUri}}
|
||||
accessibilityIgnoresInvertColors
|
||||
loading="lazy"
|
||||
useAppleWebpCodec
|
||||
/>
|
||||
) : undefined}
|
||||
|
||||
|
||||
@@ -60,6 +60,7 @@ export function FindContactsBannerNUX() {
|
||||
a.self_end,
|
||||
a.mt_sm,
|
||||
]}
|
||||
useAppleWebpCodec
|
||||
/>
|
||||
<View style={[a.flex_1, a.justify_center, a.py_xl, a.pr_5xl]}>
|
||||
<Text
|
||||
|
||||
@@ -27,6 +27,7 @@ export function ContactsHeroImage() {
|
||||
alt={_(
|
||||
msg`An illustration depicting user avatars flowing from a contact book into the Bluesky app`,
|
||||
)}
|
||||
useAppleWebpCodec
|
||||
/>
|
||||
</View>
|
||||
)
|
||||
|
||||
@@ -113,6 +113,7 @@ export function ActivitySubscriptionsNUX() {
|
||||
alt={_(
|
||||
msg`A screenshot of a profile page with a bell icon next to the follow button, indicating the new activity notifications feature.`,
|
||||
)}
|
||||
useAppleWebpCodec
|
||||
/>
|
||||
</View>
|
||||
</View>
|
||||
|
||||
@@ -124,6 +124,7 @@ export function BookmarksAnnouncement() {
|
||||
'Contains a post that originally appeared in English. Consider translating the post text if it makes sense in your language, and noting that the post was translated from English.',
|
||||
}),
|
||||
)}
|
||||
useAppleWebpCodec
|
||||
/>
|
||||
</View>
|
||||
</View>
|
||||
|
||||
@@ -101,6 +101,7 @@ export function DraftsAnnouncement() {
|
||||
'Contains a post that originally appeared in English. Consider translating the post text if it makes sense in your language, and noting that the post was translated from English.',
|
||||
}),
|
||||
)}
|
||||
useAppleWebpCodec
|
||||
/>
|
||||
</View>
|
||||
<View style={[a.align_center, a.px_xl, a.pt_xl, a.gap_2xl, a.pb_sm]}>
|
||||
|
||||
@@ -78,6 +78,7 @@ export function FindContactsAnnouncement() {
|
||||
alt={_(
|
||||
msg`An illustration depicting user avatars flowing from a contact book into the Bluesky app`,
|
||||
)}
|
||||
useAppleWebpCodec
|
||||
/>
|
||||
</View>
|
||||
</View>
|
||||
|
||||
@@ -85,6 +85,7 @@ export function InitialVerificationAnnouncement() {
|
||||
alt={_(
|
||||
msg`An illustration showing that Bluesky selects trusted verifiers, and trusted verifiers in turn verify individual user accounts.`,
|
||||
)}
|
||||
useAppleWebpCodec
|
||||
/>
|
||||
</View>
|
||||
|
||||
@@ -119,6 +120,7 @@ export function InitialVerificationAnnouncement() {
|
||||
alt={_(
|
||||
msg`An mockup of a iPhone showing the Bluesky app open to the profile of a verified user with a blue checkmark next to their display name.`,
|
||||
)}
|
||||
useAppleWebpCodec
|
||||
/>
|
||||
</View>
|
||||
|
||||
|
||||
@@ -150,6 +150,7 @@ export function LiveNowBetaDialog() {
|
||||
'Contains a post that originally appeared in English. Consider translating the post text if it makes sense in your language, and noting that the post was translated from English.',
|
||||
}),
|
||||
)}
|
||||
useAppleWebpCodec
|
||||
/>
|
||||
</View>
|
||||
</View>
|
||||
|
||||
@@ -142,6 +142,7 @@ export function AutoSizedImage({
|
||||
}
|
||||
}}
|
||||
loading="lazy"
|
||||
useAppleWebpCodec
|
||||
/>
|
||||
<MediaInsetBorder />
|
||||
|
||||
|
||||
@@ -480,6 +480,7 @@ function GalleryImage({
|
||||
height: e.source.height,
|
||||
})
|
||||
}}
|
||||
useAppleWebpCodec
|
||||
/>
|
||||
|
||||
{(hasAlt || isCropped) && !hideBadges ? (
|
||||
|
||||
@@ -106,6 +106,7 @@ export function GalleryItem({
|
||||
}
|
||||
}}
|
||||
loading="lazy"
|
||||
useAppleWebpCodec
|
||||
/>
|
||||
<MediaInsetBorder style={insetBorderStyle} />
|
||||
</Pressable>
|
||||
|
||||
@@ -87,6 +87,7 @@ function Inner({
|
||||
alt={_(
|
||||
msg`An illustration showing that Bluesky selects trusted verifiers, and trusted verifiers in turn verify individual user accounts.`,
|
||||
)}
|
||||
useAppleWebpCodec
|
||||
/>
|
||||
</View>
|
||||
|
||||
|
||||
Reference in New Issue
Block a user