reset
This commit is contained in:
@@ -156,7 +156,6 @@ const ImageItem = ({
|
|||||||
delayLongPress,
|
delayLongPress,
|
||||||
swipeToCloseEnabled = true,
|
swipeToCloseEnabled = true,
|
||||||
doubleTapToZoomEnabled = true,
|
doubleTapToZoomEnabled = true,
|
||||||
gestureRef,
|
|
||||||
}: Props) => {
|
}: Props) => {
|
||||||
const [isScaled, setIsScaled] = useState(false)
|
const [isScaled, setIsScaled] = useState(false)
|
||||||
const [isLoaded, setIsLoaded] = useState(false)
|
const [isLoaded, setIsLoaded] = useState(false)
|
||||||
@@ -224,7 +223,6 @@ const ImageItem = ({
|
|||||||
}
|
}
|
||||||
|
|
||||||
const pinch = Gesture.Pinch()
|
const pinch = Gesture.Pinch()
|
||||||
.withRef(gestureRef)
|
|
||||||
.onStart((e) => {
|
.onStart((e) => {
|
||||||
pinchOrigin.value = {
|
pinchOrigin.value = {
|
||||||
x: e.focalX - SCREEN.width/2,
|
x: e.focalX - SCREEN.width/2,
|
||||||
@@ -267,7 +265,6 @@ const ImageItem = ({
|
|||||||
|
|
||||||
const pan = Gesture.Pan()
|
const pan = Gesture.Pan()
|
||||||
.averageTouches(true)
|
.averageTouches(true)
|
||||||
.enabled(isScaled)
|
|
||||||
.onChange((e) => {
|
.onChange((e) => {
|
||||||
if (!imageDimensions) {
|
if (!imageDimensions) {
|
||||||
return;
|
return;
|
||||||
|
|||||||
@@ -112,13 +112,6 @@ function ImageViewing({
|
|||||||
return null
|
return null
|
||||||
}
|
}
|
||||||
|
|
||||||
const [gestureRefs] = useState(new Map())
|
|
||||||
for (let imageSrc of images) {
|
|
||||||
if (!gestureRefs.get(imageSrc)) {
|
|
||||||
gestureRefs.set(imageSrc, createRef())
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<SafeAreaView
|
<SafeAreaView
|
||||||
style={styles.screen}
|
style={styles.screen}
|
||||||
@@ -137,47 +130,14 @@ function ImageViewing({
|
|||||||
<ImageDefaultHeader onRequestClose={onRequestCloseEnhanced} />
|
<ImageDefaultHeader onRequestClose={onRequestCloseEnhanced} />
|
||||||
)}
|
)}
|
||||||
</Animated.View>
|
</Animated.View>
|
||||||
<VirtualizedList
|
<ImageItem
|
||||||
ref={imageList}
|
onZoom={onZoom}
|
||||||
data={images}
|
imageSrc={images[0]}
|
||||||
horizontal
|
onRequestClose={onRequestCloseEnhanced}
|
||||||
pagingEnabled
|
onLongPress={onLongPress}
|
||||||
showsHorizontalScrollIndicator={false}
|
delayLongPress={delayLongPress}
|
||||||
showsVerticalScrollIndicator={false}
|
swipeToCloseEnabled={swipeToCloseEnabled}
|
||||||
getItem={(_, index) => images[index]}
|
doubleTapToZoomEnabled={doubleTapToZoomEnabled}
|
||||||
getItemCount={() => images.length}
|
|
||||||
getItemLayout={(_, index) => ({
|
|
||||||
length: SCREEN_WIDTH,
|
|
||||||
offset: SCREEN_WIDTH * index,
|
|
||||||
index,
|
|
||||||
})}
|
|
||||||
renderItem={({item: imageSrc}) => (
|
|
||||||
<ImageItem
|
|
||||||
onZoom={onZoom}
|
|
||||||
imageSrc={imageSrc}
|
|
||||||
onRequestClose={onRequestCloseEnhanced}
|
|
||||||
onLongPress={onLongPress}
|
|
||||||
delayLongPress={delayLongPress}
|
|
||||||
swipeToCloseEnabled={swipeToCloseEnabled}
|
|
||||||
doubleTapToZoomEnabled={doubleTapToZoomEnabled}
|
|
||||||
gestureRef={gestureRefs.get(imageSrc)}
|
|
||||||
/>
|
|
||||||
)}
|
|
||||||
renderScrollComponent={props => (
|
|
||||||
<ScrollView
|
|
||||||
{...props}
|
|
||||||
waitFor={Array.from(gestureRefs.values())}
|
|
||||||
/>
|
|
||||||
)}
|
|
||||||
onMomentumScrollEnd={onScroll}
|
|
||||||
//@ts-ignore
|
|
||||||
keyExtractor={(imageSrc, index) =>
|
|
||||||
keyExtractor
|
|
||||||
? keyExtractor(imageSrc, index)
|
|
||||||
: typeof imageSrc === 'number'
|
|
||||||
? `${imageSrc}`
|
|
||||||
: imageSrc.uri
|
|
||||||
}
|
|
||||||
/>
|
/>
|
||||||
{typeof FooterComponent !== 'undefined' && (
|
{typeof FooterComponent !== 'undefined' && (
|
||||||
<Animated.View style={[styles.footer, {transform: footerTransform}]}>
|
<Animated.View style={[styles.footer, {transform: footerTransform}]}>
|
||||||
|
|||||||
Reference in New Issue
Block a user