Fix merge options leaks to next screen in stack (#5859)
* Fix merge options leaks to next screen in stack
* Rename mergeChild:options to mergeChildOptions:options:
* Rename mergeChildOptions:options: to mergeChildOptions:child:
Reject promise when trying to push two children with same id (#5855)
Reject promise when trying to push two children with the same if into the same stack.
Related to #5821
Closes #5689
Co-authored-by: Yogev Ben David <yogevbd@wix.com>
Added modalAttemptedToDismiss event with tests and docs (#5832)
* Added modalAttemptedToDismiss event with tests and docs
* Typo on pageSheet modal button label
* Update ModalScreen.js
* Fixed button testID
* Revert label to fix test cases
Co-authored-by: Guy Carmeli <guyca@users.noreply.github.com>
Co-authored-by: Yogev Ben David <yogevbd@wix.com>
Emit modalDismissed event before ViewController is destroyed (#5838)
This is required so that a component displayed in a modal can react to the dismiss of the modal it's presented in. This change aligns behaviour with iOS.
closes #5830
Send componentType field in componentDidAppear and componentDidDisappear events.
The new field is either:
- TopBarButton
- TopBarTitle
- TopBarBackground
- Component
This works around a rare edge case where applying the translucent flag
resulted in white screens when pushing or showing modals.
So far, I've managed to reproduce this only when when showing external component as modal in the Wix app.
closes #5742
Called each time a screen is popped, either due to `Navigation.pop` or pop gesture.
closes #3941
Navigation.events().registerScreenPoppedListener(({ componentId }) => {
});