Remove support from popping specific screens in a stack
While arguable being convenient, this is behaviour goes against the Stack api.
Some commands, such as push and pop, can be applied on stacks by passing the
stack's componentId.
This commit also fixes those stack commands which were always applied on parent stacks.
[V2] Added sideMenu style options similar to V1 options (#3877)
* [V2] Added sideMenu style options similar to V1 options
* Added appropriate header import
* Documented iOS specific styling for new options
* Removed trailing commas for styling consistency
* Revert "Handle NPE when showing Overlay before setRoot is called"
This reverts commit e4db9e6419.
* Revert "Fix test: Check if the button the sidemenu is no longer visible (#3779)"
This reverts commit 26c12f7757.
* Revert "Closes #3545"
This reverts commit 054ae64cdf.
* Revert "Address possible NPE in detachView and attachView"
This reverts commit f2f5eaf2d4.
* Revert "Fix crash when user tapped on screen before initial meaningful render"
This reverts commit 48b7d60bf7.
* Revert "Check if tab exists before applying tab options"
This reverts commit 3073f295fb.
* Revert "Null check tabTestId"
This reverts commit 770a001ba9.
* Revert "Don't crash if Modal related commands are called before root is set"
This reverts commit aa8135dcbf.
* Revert "Closes #3545 (#3874)"
This reverts commit feab91de5c.
* Revert "Update Installing.md (#3870)"
This reverts commit 5cecd814f6.
* Revert "Update docs"
This reverts commit 98053e60ec.
* Revert "Delegate onNewIntent to reactInstanceManager"
This reverts commit 3074407577.
* Revert "Removed the headers form copy build phase - they are copied as headers. This was causing build error on Xcode 10 (#3774)"
This reverts commit ed657c99a1.
Child options are applied when a child appears, meaning it's attached to hierarchy.
Going over the Wix app crash logs, a few users experienced a crash where apparently
BottomTabs options were applied for a child component, and a corresponding tab wasn't found.
I'm not sure how this happens and wasn't able to reproduce the crash.
Hopefully I'll have more information in the future but for now I've added a simple check to ensure
options are applied only if a tab is found.
Add addtional common problem for cache reset (#3809)
When fresh installing `v2` branch some time getting issues with bundling. Due to `rn-packager` cache. Normal `npm start -- --reset-cache` was not working properly. So had to reset the cache manually. Maybe its because of the start script is different from regular react native app setup
Add YellowBoxed back to ReactRootViews before unmount
Apparently, UiImplementation doesn't like it when views disappear from hierarchy unexpectedly.
As yellow boxes are added to all ReactRootViews, we remove them from TopBar components.
When these components got unmounted, UiImplementation tried to remove the yellow box and since it
couldn't find it - it crashed.
This commit simply adds the yellow box before views are unmounted.
Unmount buttons when corresponding screen is unmounted
Currently buttons were unmounted each time a screen was pushed to the stack.
As we're clearing props when screens are unmounted from the prop store - when a screen
was popped to - its buttons's props were undefined.
This commit changes things so that buttons are unmounted when buttons are set
using mergeOptions and when the corresponding screen is unmounted.