Fix title component not being replaced via mergeOptions (#6066)
This commit fixes a bug related to setting a new react component as title via mergeOptions. When a title component was set, and the user tried to replace the existing title with a new title via mergeOptions, the new title was not created and instead the current title was reapplied.
Fixes #5377
Configure scrollEdgeAppearance with opaque background (#6038)
* Configure scrollEdgeAppearance with opaque background
I noticed there is now an animation that occurs when pushing the first
view on a stack. This will happen with both:
`largeTitle: { visible: true }`
and
`largeTitle: { visible: false }`
It seems caused by the setting of the `scrollEdgeAppearance` background
without first configuring it using `configureWithOpaqueBackground`.
I also added checks for iOS 13 since these APIs require iOS 13.
* Update lib/ios/TopBarAppearancePresenter.m
Co-Authored-By: Yogev Ben David <yogevbd@wix.com>
* Update lib/ios/TopBarAppearancePresenter.m
Co-authored-by: Yogev Ben David <yogev132@gmail.com>
Co-authored-by: Yogev Ben David <yogevbd@wix.com>
Add Windows compatibility in 4 node scripts. (#6015)
Added windows compatibility to build scripts. To run the packager on windows, use: `npm run start-windows`
Co-authored-by: Guy Carmeli <guyca@users.noreply.github.com>
* Fix translucent bottomTabs
* Remove unnecessary safeAreaView from Root component
* Add bottomTabsPresenter base class
* Revert Root.js
* DrawBehind when largeTitle is visible
Co-authored-by: Guy Carmeli <guyca@users.noreply.github.com>
Create new UITabBarItem instance on each bottomTab update (#6018)
Fix an issue where bottomTab.testID doesn't get updated on mergeOptions unless a new UITabBarItem is created. Look like an issue in iOS where tabBarItem.accessibilityIdentifier doesn't get updated unless a new tabBarItem is created.
Detach bottomTabPresenter from basePresenter (#5970)
Refactor bottomTabs options applying mechanism. Both bottomTab and bottomTabs presenters were part of the base UIViewController class which was wrong. This commits moves them to the BottomTabsController.
This refactor mostly contains the following
* Detach bottomTabPresenter from basePresenter
* Create tabBarItem appearance on presenter init
* Refactor bottomTabPresenter
* Refactor bottomTabPresenter
* Move appearance creation to bottomTabsController
* Merge child options with direct child controller
* Hide modal and overlay containers
This commit improves support for react-native-youtube library. This library uses the native Youtube player which requires that no visible views will be laid out on top of the player. This commit set visibility of Modal and Overlay containers to GONE when they are empty.
* fix tests
Apply topBar appearance options on current child navigationItem (#5994)
This commit changes how stack child options are applied on iOS 13. Until now, options were applied directly to the navigationItem of the stack which is shared between all children.
This commit applies options on the navigationItem of each child instead. This fixes issues with color transitions when popping and pushing children to the stack.
* Fix largeTitle animation and crash
* Create button if not exist
* Prevents largeTitle transition crash
* Fix unit tests
* Set navigationBar.prefersLargeTitles true on stack initialization
* Bump minimum deployment target to iOS 11.0
* Add unit test
This PR fixes the autolink script including:
* Specifying the minSdkVersion for Android. Closes #5983.
* Removing the RNN Pod added by the react-native link script.
This commit introduces parity with iOS which allows the user to show tabs without icons. While there's no real production use case for this feature, it's helpful when getting started with a new project.