mirror of
https://github.com/status-im/react-native.git
synced 2025-02-10 16:36:25 +00:00
Summary: UIImplementation has a few methods that in the end touch native Views, such as dispatchViewManagerCommand, addAnimation, sendAccessibilityEvent etc. There are 2 cases where it is possible to have those methods called on shadow nodes that don't have backing Views created: - backing view is scheduled to be created but not commited yet (StateBuilder accumulates createView commands into a queue and flushes it in the very end) - shadow node doesn't mount to a View so there is no backing View Touching View in UI thread in these 2 cases will either lead to silent error (e.g. failure callback will execute), or a native crash. This diff is overriding all UIImplementation methods that touch Views in UI thread and makes sure that backing View is created before we do so. Reviewed By: ahmedre Differential Revision: D3046392
Building React Native for Android
See the docs on the website.
Running tests
When you submit a pull request CircleCI will automatically run all tests. To run tests locally, see Testing.