Skip to content

Commit 785c907

Browse files
committed
fix Gallery onLongPress handler bug
1 parent f7510e8 commit 785c907

File tree

1 file changed

+16
-17
lines changed

1 file changed

+16
-17
lines changed

src/components/Attachment/Gallery.tsx

Lines changed: 16 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -99,7 +99,7 @@ export type GalleryPropsWithContext<
9999
Ev extends UnknownType = DefaultEventType,
100100
Me extends UnknownType = DefaultMessageType,
101101
Re extends UnknownType = DefaultReactionType,
102-
Us extends UnknownType = DefaultUserType
102+
Us extends UnknownType = DefaultUserType,
103103
> = Pick<ImageGalleryContextValue, 'setImage'> &
104104
Pick<
105105
MessageContextValue<At, Ch, Co, Ev, Me, Re, Us>,
@@ -129,7 +129,7 @@ const GalleryWithContext = <
129129
Ev extends UnknownType = DefaultEventType,
130130
Me extends UnknownType = DefaultMessageType,
131131
Re extends UnknownType = DefaultReactionType,
132-
Us extends UnknownType = DefaultUserType
132+
Us extends UnknownType = DefaultUserType,
133133
>(
134134
props: GalleryPropsWithContext<At, Ch, Co, Ev, Me, Re, Us>,
135135
) => {
@@ -240,13 +240,15 @@ const GalleryWithContext = <
240240
activeOpacity={0.8}
241241
key={`gallery-item-${url}/${rowIndex}/${images.length}`}
242242
onLongPress={(event) => {
243-
onLongPress({
244-
emitter: 'gallery',
245-
event,
246-
});
243+
if (onLongPress && !preventPress) {
244+
onLongPress({
245+
emitter: 'gallery',
246+
event,
247+
});
248+
}
247249
}}
248250
onPress={(event) => {
249-
if (!onPressIn && !preventPress) {
251+
if (!onPressIn && onPress && !preventPress) {
250252
onPress({
251253
defaultHandler: defaultOnPress,
252254
emitter: 'gallery',
@@ -350,7 +352,7 @@ const areEqual = <
350352
Ev extends UnknownType = DefaultEventType,
351353
Me extends UnknownType = DefaultMessageType,
352354
Re extends UnknownType = DefaultReactionType,
353-
Us extends UnknownType = DefaultUserType
355+
Us extends UnknownType = DefaultUserType,
354356
>(
355357
prevProps: GalleryPropsWithContext<At, Ch, Co, Ev, Me, Re, Us>,
356358
nextProps: GalleryPropsWithContext<At, Ch, Co, Ev, Me, Re, Us>,
@@ -403,7 +405,7 @@ export type GalleryProps<
403405
Ev extends UnknownType = DefaultEventType,
404406
Me extends UnknownType = DefaultMessageType,
405407
Re extends UnknownType = DefaultReactionType,
406-
Us extends UnknownType = DefaultUserType
408+
Us extends UnknownType = DefaultUserType,
407409
> = Partial<GalleryPropsWithContext<At, Ch, Co, Ev, Me, Re, Us>>;
408410

409411
/**
@@ -416,7 +418,7 @@ export const Gallery = <
416418
Ev extends UnknownType = DefaultEventType,
417419
Me extends UnknownType = DefaultMessageType,
418420
Re extends UnknownType = DefaultReactionType,
419-
Us extends UnknownType = DefaultUserType
421+
Us extends UnknownType = DefaultUserType,
420422
>(
421423
props: GalleryProps<At, Ch, Co, Ev, Me, Re, Us>,
422424
) => {
@@ -449,13 +451,10 @@ export const Gallery = <
449451
onPressIn: contextOnPressIn,
450452
threadList: contextThreadList,
451453
} = useMessageContext<At, Ch, Co, Ev, Me, Re, Us>();
452-
const {
453-
additionalTouchableProps: contextAdditionalTouchableProps,
454-
} = useMessagesContext<At, Ch, Co, Ev, Me, Re, Us>();
455-
const {
456-
setBlurType: contextSetBlurType,
457-
setOverlay: contextSetOverlay,
458-
} = useOverlayContext();
454+
const { additionalTouchableProps: contextAdditionalTouchableProps } =
455+
useMessagesContext<At, Ch, Co, Ev, Me, Re, Us>();
456+
const { setBlurType: contextSetBlurType, setOverlay: contextSetOverlay } =
457+
useOverlayContext();
459458

460459
const images = propImages || contextImages;
461460

0 commit comments

Comments
 (0)