diff --git a/src/components/picker/__tests__/index.spec.tsx b/src/components/picker/__tests__/index.spec.tsx index db54870f37..18e56674fd 100644 --- a/src/components/picker/__tests__/index.spec.tsx +++ b/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/src/incubator/expandableOverlay/index.tsx b/src/incubator/expandableOverlay/index.tsx index 22f06452fc..32f9d09c7f 100644 --- a/src/incubator/expandableOverlay/index.tsx +++ b/src/incubator/expandableOverlay/index.tsx @@ -83,11 +83,15 @@ const ExpandableOverlay = (props: ExpandableOverlayProps, ref: any) => { }, [onPress, customValue]); const closeExpandable = useCallback(() => { - setExpandableVisible(false); - focusAccessibility(); + dismissModal(); useDialog ? dialogProps?.onDismiss?.() : modalProps?.onDismiss?.(); }, [useDialog, dialogProps?.onDismiss, modalProps?.onDismiss, focusAccessibility]); + const dismissModal = useCallback(() => { + setExpandableVisible(false); + focusAccessibility(); + }, [focusAccessibility]); + const toggleExpandable = useCallback(() => (visible ? closeExpandable() : openExpandable()), [visible, openExpandable, closeExpandable]); @@ -104,7 +108,7 @@ const ExpandableOverlay = (props: ExpandableOverlayProps, ref: any) => { overlayBackgroundColor={Colors.$backgroundDefault} {...modalProps} visible={visible} - onDismiss={closeExpandable} + onDismiss={dismissModal} onRequestClose={closeExpandable} onBackgroundPress={closeExpandable} >