diff --git a/packages/react-native-ui-lib/src/components/picker/__tests__/index.spec.tsx b/packages/react-native-ui-lib/src/components/picker/__tests__/index.spec.tsx index fa44fd684e..44512945c4 100644 --- a/packages/react-native-ui-lib/src/components/picker/__tests__/index.spec.tsx +++ b/packages/react-native-ui-lib/src/components/picker/__tests__/index.spec.tsx @@ -166,7 +166,7 @@ describe('Picker', () => { expect(driver.isOpen()).toBeTruthy(); driver.cancel(); expect(driver.isOpen()).toBeFalsy(); - expect(onDismiss).toHaveBeenCalledTimes(2); // TODO: this should be 1 + expect(onDismiss).toHaveBeenCalledTimes(1); }); // TODO: this test is not passing yet diff --git a/packages/react-native-ui-lib/src/incubator/expandableOverlay/index.tsx b/packages/react-native-ui-lib/src/incubator/expandableOverlay/index.tsx index a084fd567e..82c7240b8a 100644 --- a/packages/react-native-ui-lib/src/incubator/expandableOverlay/index.tsx +++ b/packages/react-native-ui-lib/src/incubator/expandableOverlay/index.tsx @@ -83,11 +83,16 @@ const ExpandableOverlay = (props: ExpandableOverlayProps, ref: any) => { onPress?.(props); }, [onPress, customValue]); - const closeExpandable = useCallback(() => { + const dismissOverlay = useCallback(() => { setExpandableVisible(false); focusAccessibility(); + }, [focusAccessibility]); + + const closeExpandable = useCallback(() => { + dismissOverlay(); useDialog ? dialogProps?.onDismiss?.() : modalProps?.onDismiss?.(); - }, [useDialog, dialogProps?.onDismiss, modalProps?.onDismiss, focusAccessibility]); + // eslint-disable-next-line react-hooks/exhaustive-deps + }, [dismissOverlay, dialogProps?.onDismiss, modalProps?.onDismiss]); const toggleExpandable = useCallback(() => (visible ? closeExpandable() : openExpandable()), [visible, openExpandable, closeExpandable]); @@ -105,7 +110,7 @@ const ExpandableOverlay = (props: ExpandableOverlayProps, ref: any) => { overlayBackgroundColor={Colors.$backgroundDefault} {...modalProps} visible={visible} - onDismiss={closeExpandable} + onDismiss={dismissOverlay} onRequestClose={closeExpandable} onBackgroundPress={closeExpandable} >