Граф коммитов

20710 Коммитов

Автор SHA1 Сообщение Дата
David Vacca 8724a24bf5 Integrate Fabric into RN tester
Summary:
This diff integrates Fabric into RN Tester

changelog: [internal] internal

Reviewed By: JoshuaGross

Differential Revision: D23012446

fbshipit-source-id: 7a8410b0d73c26c347db17f6ec43663bb22524e3
2020-08-10 15:08:20 -07:00
David Vacca 5115ac0bef Create Fabric flavor into RN Tester build system
Summary:
This diff adds a new flavor into the RN Tester gradle system.

The "fabric" flavor is going to be used in the future to:
- determine if Fabric should be enabled or not (at runtime)
- include or exclude fabric C++ code at compile time

I decided to temporarily  reuse the "vm" dimension in order to reduce friction while I'm still iterating on the implementation.
If I created another dimension, then it will force developers to compile RN tester using two flavors:

```
./gradlew  :RNTester:android:app:installHermesFabricDebug
```

I'm planning to refactor this in the near future (T71370706)

changelog: [Internal] Internal

Reviewed By: JoshuaGross

Differential Revision: D23012445

fbshipit-source-id: 1ea6a707ea2bfaca1be567f43b08860407124c17
2020-08-10 15:08:20 -07:00
Samuel Susla 154ce78972 Take viewport offset into account in UIManager.measureInWindow
Summary:
Changelog: [Internal]

Fabric's UIManager.measureInWindow didn't take viewport's offset into account. This diff fixes it by including viewport's offset in `LayoutContext`.

Reviewed By: JoshuaGross

Differential Revision: D23021903

fbshipit-source-id: 9106a8789d66fe19d8cb0a9378ee5bc8f2c83005
2020-08-10 12:52:23 -07:00
Samuel Susla 3be9f3ef2c Make RCTSurface and RCTFabricSurface conform to common protocol
Summary:
Changelog: [internal]

RCTSurface and RCTFabricSurface are two distinct classes that need to have the same interface otherwise the program crashes. This diff ties their interfaces through a protocol, triggering a build time error if they diverge.

Reviewed By: PeteTheHeat, JoshuaGross

Differential Revision: D23021837

fbshipit-source-id: 09ce345298ec2b45ac5a3fd2e0d3f5fa757a174f
2020-08-10 12:52:23 -07:00
Samuel Susla efd005724f Convert LayoutableShadowNodeTests to use Element<>
Summary:
Changelog: [internal]

Use `Element<>` in `LayoutableShadowNodeTests`. It makes the tests cleaner and easier to understand.

Reviewed By: JoshuaGross

Differential Revision: D23028341

fbshipit-source-id: f7a2255581bdde667db0f68c222228a5b405b22f
2020-08-10 12:52:23 -07:00
Samuel Susla 6db19b036e Introduce Element<>.stateData API
Summary:
Changelog: [Internal]

Previous interface `Element<>.state` wasn't usable because creating ConcreteState  requires ownership of component descriptor and family. Family isn't created until later and it isn't accessible to the caller.

To work around this shortcoming, we create `stateData` rather than state.

Reviewed By: JoshuaGross

Differential Revision: D23028296

fbshipit-source-id: fba35ea8e6986b77379b1dddaa37012f4234f86e
2020-08-10 12:52:22 -07:00
Samuel Susla 8d6b41e9bc Add support for onTextLayout in Text
Summary:
Changelog: [Internal]

Add `Text.onTextLayout` implementation

Reviewed By: JoshuaGross

Differential Revision: D22865139

fbshipit-source-id: 563084754ebdc9fb23463a306c526b97c61f85ec
2020-08-10 05:42:20 -07:00
Samuel Susla 43b2c6dd85 Fix conditions to fire onLayout event
Summary:
Changelog: [Internal]

# Problem

## Step 1
JS clones a node that has size {100, 100} and changes props that cause the node to increase size to {200, 200}. JS holds pointer to this node.

Now, the size (stored in LayoutableShadowNode.layoutMetrics_) changes after Yoga layout is triggered.

However, the node gets cloned inside State Reconciliation before Yoga layout phase. The JS pointer points to a node with size {100, 100}, not to a node with size {200, 200}.

## Step 2

Again, JS clones node (with old reference, therefore gets old layoutMetrics_ with size {100, 100}) and it changes props that cause the node to decrease its size back to {100, 100}.
We go all the way to Yoga layout and looking for nodes that have been affected by the node. The node, affected by the layout because it went from {200, 200} to {100, 100}, will be evaluated as not affected. This causes onLayout event to not be fired.

# Fix
We can safely remove the frame equality check (please see below). This can be done because we already check for equality before dispatching onLayout. It happens here:

https://www.internalfb.com/intern/diffusion/FBS/browsefile/master/xplat/js/react-native-github/ReactCommon/react/renderer/components/view/ViewEventEmitter.cpp?commit=881853eb0c42625fd0812bd2652bf36fcbd614ee&lines=43

As far as I know, `affectedNodes` isn't used for anything else besides dispatching onLayout.

# Discussion

This problem manifests itself only when a node has two different sizes that it flips between. To better understand this, please watch the video in Test plan labelled "before". Notice how the text has 2 different values that it flips between.

Here is a code that was affected by it https://fburl.com/diffusion/3hwo0iy5
If you inspect it closely, you will notice that it depends on `onLayout` to return correct value to calculate offset from left.

Reviewed By: JoshuaGross

Differential Revision: D22999891

fbshipit-source-id: e2d0f5771c1bf3cd788e5e9da0155c92e33fb84e
2020-08-10 05:11:29 -07:00
Joshua Gross 73242b45a9 NativeAnimatedModule: allow JS to control queueing of Animated operations
Summary:
In the past I tried a few heuristics to guess when a batch of Animated Operations were ready, and none of these were super reliable. But it turns out we can safely allow JS to manage that explicitly.

Non-Fabric still uses the old behavior which seems fine.

Changelog: [Internal]

Reviewed By: mdvacca

Differential Revision: D23010844

fbshipit-source-id: 4c688d3a61460118557a4971e549ec7457f3eb8f
2020-08-09 01:39:29 -07:00
Joshua Gross 0af275e3be Diagnostics for non-Fabric ViewCommand crash
Summary:
Add additional logging.

Changelog: [Internal]

Reviewed By: mdvacca

Differential Revision: D22980132

fbshipit-source-id: ab98d9aebe47dc65780ffbf6648e9341e1750121
2020-08-09 01:39:29 -07:00
David Vacca 0416f77ce4 Extend 'fabric' module to compile in OSS
Summary:
This diff extends fabric module to compile in OSS

NOTE: As a side effect of this diff, Fabric will be included into "reactnativejni" which is used by RN OSS.

I'm planning to remove this dependency in the near future - T71320460

changelog: [internal] internal

Reviewed By: JoshuaGross

Differential Revision: D22991877

fbshipit-source-id: 0ab3ee410dd448bbd87130114bec27c6e6bc65c6
2020-08-07 19:49:19 -07:00
David Vacca bb15437db9 Create CoreComponentsRegistry
Summary:
This diff introduces the class CoreComponentsRegistry that is responsible of registering core components in fabric.
This is required to make RN Tester to work in Fabric, in the future we'll extract this registry into another module (once we figure it out what's the best way to do this)

changelog: [internal] internal

Reviewed By: JoshuaGross

Differential Revision: D22991876

fbshipit-source-id: 15e85e15aac5dd981161d9eae35eb2cee4fa66b6
2020-08-07 19:49:19 -07:00
David Vacca f441fe6d45 Refactor ComponentFactoryDelegate class
Summary:
This diff refactors the ComponentFactoryDelegate class. It also introduces a new class called ComponentRegistry that will be used to register components into fabric

changelog: [internal] internal

Reviewed By: JoshuaGross

Differential Revision: D22985313

fbshipit-source-id: e33a3d4fcb3a1c509b80c6ff1f43889480b1c2c3
2020-08-07 19:49:19 -07:00
David Vacca 7d5383eea8 Extend 'textlayoutmanager' module to compile in OSS
Summary:
This diff extends the 'textlayoutmanager' module to compile in OSS
As part of this diff I also moved Android files in order to make the module compatible with Android.mk system

changelog: [internal] internal

Reviewed By: JoshuaGross

Differential Revision: D22963706

fbshipit-source-id: 14a7309f589fe12c21131c7d5cef02b4323d4a93
2020-08-07 19:49:19 -07:00
David Vacca 61a16fe1b6 Refactor Runnable C++ class to compile in OSS
Summary:
This diff refactors the class Runnable into a struct to make it work in OSS

changelog: [internal] internal

Reviewed By: JoshuaGross

Differential Revision: D22963704

fbshipit-source-id: 2212c8f1e4a62b2bcad5c061709e29b247454fc1
2020-08-07 19:49:19 -07:00
David Vacca d1d42475e9 Extend 'imagemanager' module to compile in OSS
Summary:
This diff extends the 'imagemanager' module to compile in OSS

changelog: [internal] internal

Reviewed By: JoshuaGross

Differential Revision: D22963701

fbshipit-source-id: 5034cf9801efa01cc39003b2060a84864c46d18e
2020-08-07 19:49:19 -07:00
Peter Argany ffdfbbec08 Support bridgeless in RCTEventDispatcher
Summary:
This ties the stack together, utilizes new TM functionality to avoid using the bridge in `RCTEventDispatcher`.

Changelog: [Internal]

Differential Revision: D22962320

fbshipit-source-id: de4e001a4a6ce232c37d7feed1e0c0d1d70a80f8
2020-08-07 11:55:51 -07:00
Peter Argany c494d590fb Workarounds for two bridge methods: dispatchToJSThread and enqueueJSCall:
Summary:
To get `RCTNativeAnimatedModule` working bridgeless, I need to get `RCTEventDispatcher` working bridgeless.

To get `RCTEventDispatcher` working bridgeless, I need to support 2 new bridge methods:
- `- (void)enqueueJSCall:(NSString *)moduleDotMethod args:(NSArray *)args`
- `- (void)dispatchBlock:(dispatch_block_t)block queue:(dispatch_queue_t)queue;`

For (1) I copied the bridge impl exactly. For (2), the bridge only dispatches to JS thread, else uses `dispatch_async`. I only added support for dispatching to JS thread, callers can `dispatch_async` themselves if they want to.

Changelog: [Internal]

Differential Revision: D22962292

fbshipit-source-id: e34d15aee72f80dffcaa945bfda05ea415f66df7
2020-08-07 11:55:51 -07:00
David Vacca 48e9f0a1c0 Extend 'animations' module to compile in OSS
Summary:
This diff extends the 'animations' module to compile in OSS

changelog: [internal] internal

Reviewed By: JoshuaGross

Differential Revision: D22963702

fbshipit-source-id: e432e2f98b47a4b0456fd5e3d0f5263631782b29
2020-08-07 11:12:02 -07:00
David Vacca 6486b8cffd Extend 'scheduler' module to compile in OSS
Summary:
This diff extends the 'scheduler' module to compile in OSS

changelog: [internal] internal

Reviewed By: JoshuaGross

Differential Revision: D22963705

fbshipit-source-id: ea2b6a4fce49c4d9552deb30e89fcba165cfe772
2020-08-07 11:12:02 -07:00
David Vacca e20df93082 Extend 'templateprocessor' module to compile in OSS
Summary:
This diff extends the 'templateprocessor' module to compile in OSS

changelog: [internal] internal

Reviewed By: JoshuaGross

Differential Revision: D22963703

fbshipit-source-id: c898d846a59a065c0bbfd443303e125e6b9bcba7
2020-08-07 11:12:02 -07:00
David Vacca 2fa8829305 Extend 'uimanager' module to compile in OSS
Summary:
This diff extends the 'uimanager' module to compile in OSS

changelog: [internal] internal

Reviewed By: JoshuaGross

Differential Revision: D22918206

fbshipit-source-id: 2783ec6d9e53cdafab5c77a3f217b32c1c7f0b41
2020-08-07 11:12:02 -07:00
Samuel Susla d1b507a5c3 Fix animation of PDP dismissal
Summary:
Changelog: [Internal]

If animated component is managed by Fabric, prevent view flattening by setting nativeID.

Reviewed By: shergin

Differential Revision: D22998746

fbshipit-source-id: b9645537454f11fce3bb0e268db91219f5c6dc42
2020-08-07 08:36:55 -07:00
Rick Hanlon 499b021b78 Backout React Sync again
Summary:
Revert the react sync.

Changelog: [Internal]

Reviewed By: kacieb

Differential Revision: D22994588

fbshipit-source-id: 9662723839389465615bff2fdcf2759fb85bcb75
2020-08-06 23:44:08 -07:00
Marshall Roch 471c2ebe5b Upgrade to Flow v0.131.0
Summary: Changelog: [Internal]

Reviewed By: panagosg7

Differential Revision: D22992122

fbshipit-source-id: 685dfc92531a7efaa111ef038902b30d45e87fd0
2020-08-06 20:02:32 -07:00
Peter Argany fcb667059d Fix refresh control redbox
Summary: Changelog:[Internal]

Reviewed By: Vince0613

Differential Revision: D22989945

fbshipit-source-id: 735da1cf103b2465663ecb6abfd49e512aff9a1e
2020-08-06 17:31:47 -07:00
Oleg Lokhvitsky 7e5cf51117 Back out "Remove complex NativeAnimated queueing mechanisms"
Summary:
changelog: [internal]
Original commit changeset: 9241fff84376

Reviewed By: JoshuaGross

Differential Revision: D22987878

fbshipit-source-id: e7fb8f51ab911ff881ed543f39b65afbe076a7aa
2020-08-06 17:13:56 -07:00
Jiayan Zhuang dd040a87a7 Implement localization for accessibility guide words (#29576)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/29576

Changelog:
[Internal] - Implement localization for accessibility guide words

Reviewed By: PeteTheHeat

Differential Revision: D22419882

fbshipit-source-id: 85fc4e741df3c59b64173c027a3c4e61b01bad4c
2020-08-06 16:38:56 -07:00
Devon Deonarine f319ff321c iOS: Update RCTAlertManager to use new RCTAlertController (#29295)
Summary:
This should fix https://github.com/facebook/react-native/issues/29082 and https://github.com/facebook/react-native/issues/10471

Currently when an alert is being shown while a modal is being dismissed, it causes the alert not to show and In some cases it causes the UI to become unresponsive. I think this was caused by using RCTPresentedViewController to try and display the Alert the currently presented view. The View the Alert was going to be shown on is dismissed and the modal doesn't show. I implemented a new RCTAlertController to show the alert on top of the view, the modal being dismissed should now not interfere with the alert being shown.

## Changelog

[iOS] [Fixed] - Fixed showing Alert while closing a Modal

Pull Request resolved: https://github.com/facebook/react-native/pull/29295

Test Plan:
To recreate the bug:

1. npx react-native init Test --version 0.63.0-rc.1
2. Paste the following code into App.js

```javascript
/**
 * Sample React Native App
 * https://github.com/facebook/react-native
 *
 * format
 * flow strict-local
 */

import React from 'react';
import {
  SafeAreaView,
  StyleSheet,
  View,
  Text,
  StatusBar,
  Modal,
  Alert
} from 'react-native';

const App: () => React$Node = () => {
  const [visible, setVisible] = React.useState(false)

  const onShowModal = () => {
    setVisible(true)
  }

  onCloseBroken = () => {
    setVisible(false)
    Alert.alert('Alert', 'Alert won\'t show')
  }

  onCloseWorking = () => {
    setVisible(false)
    setTimeout(() => Alert.alert('Alert', 'Works fine'), 10)
  }

  return (
    <>
      <StatusBar barStyle="dark-content" />
      <SafeAreaView style={styles.container}>
        <Text onPress={onShowModal}>Show modal</Text>
      </SafeAreaView>
      <Modal animationType="fade" visible={visible} onRequestClose={onCloseWorking} >
        <View style={styles.container}>
          <Text onPress={onCloseBroken}>Close modal immediately</Text>
          <Text onPress={onCloseWorking}>Close modal with delay</Text>
        </View>
      </Modal>
    </>
  )
}

const styles = StyleSheet.create({
  container: {
    flex: 1,
    alignItems: 'center',
    justifyContent: 'space-around',
  },
})

export default App

```

3. cd Test && npx react-native run-ios
4. Show the modal and click the `Close modal immediately` button

The first button doesn't show the alert, the second does because it gets rendered after the modal view is dismissed. After this commit, the alert always shows on top of every view properly. You can test by pointing the react native package to my branch by modifying the package json file like this

```
    "react-native": "https://github.com/devon94/react-native.git#fix-ios-modal"
```

I was unable to reproduce the case where it causes the UI to be responsive in the test app but was able to reproduce it in our react native app at work. I can provide a video later if needed but the code is too complex to simplify into a test case.

Reviewed By: sammy-SC

Differential Revision: D22783371

Pulled By: PeteTheHeat

fbshipit-source-id: 3e359645c610074ea855ee5686c59bdb9d6b696b
2020-08-06 16:20:47 -07:00
Jiayan Zhuang 07640dce69 Build the basic RCTLocalizationProvider
Summary:
Changelog:
[Internal][Add] - Build the basic RCTLocalizationProvider

RCTLocalizationProvider is to enable the localization in fabric. But I'd start with internal apps now.

Reviewed By: PeteTheHeat

Differential Revision: D22704051

fbshipit-source-id: 845693a131c325f3c3d92b2ff491d5421966ad3e
2020-08-06 14:35:35 -07:00
Jiayan Zhuang 3f405dcbd2 Add support for accessibilityRole = "switch"
Summary:
Changelog:
[Internal] - Add support for accessibilityRole = "switch"

Reviewed By: sammy-SC

Differential Revision: D22906500

fbshipit-source-id: 81dfbfd56a24c89ffedc0fde5a63f7bdeed0c5db
2020-08-06 13:16:48 -07:00
Xuan Huang 776a415d98 Upgrade Hermes dependency to 0.6.0
Summary:
Use the latest published release of hermes-engine.
Changelog: [Android] [Changed] - Upgraded to Hermes 0.6.0
allow-large-files

Reviewed By: cpojer

Differential Revision: D22915617

fbshipit-source-id: a10d1db23e41084ce04ba94911ec28423ff5e230
2020-08-06 12:53:28 -07:00
Jiayan Zhuang 6fa9dbabfc Update accessibilityState prop
Summary:
Changelog:
[Internal] - Add default value for accessibilityState "checked" and handle unhandled states.

It is also work for the case that accessibilityRole = "switch" and accessibilityState is set.

Reviewed By: sammy-SC

Differential Revision: D22914427

fbshipit-source-id: 4767a21f3bd109019b57bc09918758a38fbdea93
2020-08-06 12:14:38 -07:00
David Vacca 5c9c52275f Extend 'attributedstring' module to compile in OSS
Summary:
This diff extends the 'attributedstring' module to compile in OSS

changelog: [internal] internal

Reviewed By: JoshuaGross

Differential Revision: D22918207

fbshipit-source-id: 35710789d2aa71826e10c29c27e9ac34b73e5344
2020-08-06 11:53:04 -07:00
David Vacca 8cfd329e9f Extend 'mounting' module to compile in OSS
Summary:
This diff extends the 'mounting' module to compile in OSS

changelog: [internal] internal

Reviewed By: JoshuaGross

Differential Revision: D22918205

fbshipit-source-id: 424e33c827cb03befaaed32897a19cd6eff2dd71
2020-08-06 11:53:04 -07:00
David Vacca 459eabbef2 Extend 'better' module to compile in OSS
Summary:
This diff extends the 'better' module to compile in OSS

changelog: [internal] internal

Reviewed By: JoshuaGross

Differential Revision: D22918208

fbshipit-source-id: 11cf7c093bd1d50bbb53c6b6a740a3db41971fc0
2020-08-06 11:53:04 -07:00
David Vacca 8fdb3decda Extend components/scrollview module to compile in OSS
Summary:
This diff extends components/scrollview module to compile in OSS

changelog: [internal] internal

Reviewed By: JoshuaGross

Differential Revision: D22918203

fbshipit-source-id: 6a67213bdcb4b4b2d47a2ee2a9796a134d744956
2020-08-06 11:53:03 -07:00
David Vacca 99ee0309be Extend components/root module to compile in OSS
Summary:
This diff extends components/root module to compile in OSS

changelog: [internal] internal

Reviewed By: JoshuaGross

Differential Revision: D22918209

fbshipit-source-id: 9ce9558f689d0a9b3b8cb7edeb891e8f4bafba6c
2020-08-06 11:53:03 -07:00
David Vacca ba195e878e Extend component/unimplementedview to compils in OSS
Summary:
This diff extends component/unimplementedview to compils in OSS

changelog: [internal] internal

Reviewed By: JoshuaGross

Differential Revision: D22918204

fbshipit-source-id: 85b2338b6135aadcdd00bb798f6aaa2fdf03d81e
2020-08-06 11:53:03 -07:00
David Vacca 5d5524b266 Extend react/renderer/component/view module to compile in OSS
Summary:
This diff extends react/renderer/component/view module to compile in OSS

changelog: [internal] internal

Reviewed By: JoshuaGross

Differential Revision: D22918210

fbshipit-source-id: b92e8701ac6ec93ba8f2cdbfdcc5e34cade0f218
2020-08-06 11:53:03 -07:00
David Vacca d2bb73d568 Extend react/renderer/componentregistry module to compile in OSS
Summary:
This diff extends react/renderer/componentregistry module to compile in OSS

changelog: [internal] internal

Reviewed By: fkgozali

Differential Revision: D22908223

fbshipit-source-id: 6cc053262fbe2bb0f631ac40cd57959267ae95fa
2020-08-06 11:53:03 -07:00
Joshua Gross cd372b1b06 Mechanisms to workaround certain Fabric crashes in prod
Summary:
New mechanism to soft-crash, or crash, and collect diagnostics in the mounting layer.

Changelog: [Internal]

Reviewed By: sammy-SC

Differential Revision: D22971260

fbshipit-source-id: 860cde3effa4a187f10f5dd1488dd41ace65e363
2020-08-06 11:18:05 -07:00
David Vacca 5f03e7ef41 Make react/renderer/mapbuffer module to compile in OSS
Summary:
This diff extends the react/renderer/mapbuffer module to compile in OSS
changelog: [internal] internal

Reviewed By: fkgozali

Differential Revision: D22908221

fbshipit-source-id: d2a6da04ea73efc35e862839563262d4e89a2c56
2020-08-06 00:09:12 -07:00
David Vacca 886d1bad74 Make react/core module to compile in OSS
Summary:
Make react/core module to compile in OSS

This is necessary to make fabric compile in OSS

changelog: [internal] internal

Reviewed By: fkgozali

Differential Revision: D22908222

fbshipit-source-id: a37b87d02ecf77bb25693ce32cd0f3432be5daa7
2020-08-06 00:09:12 -07:00
David Vacca b97619e0aa Make graphics module to compile in OSS
Summary:
This diff creates the Android.mk file for the fabric graphics module
This is necessary to enable fabric in RN OSS
changelog: [internal] internal

Reviewed By: fkgozali

Differential Revision: D22908219

fbshipit-source-id: 70ef1d06053b0ca07a71c0a2d36e4edd617b2a25
2020-08-06 00:09:12 -07:00
David Vacca 8e996487e1 Create Android MK file for debug module
Summary:
This diff creates the Android.mk file for the fabric debug module

This is necessary to enable fabric in RN OSS

changelog: [internal] internal

Reviewed By: fkgozali

Differential Revision: D22908220

fbshipit-source-id: f970fa1d8534a6043f60f362740bfc3e5199b511
2020-08-06 00:09:11 -07:00
David Vacca d34f3638cc Create Android OSS build system for react/renderer/components/view module
Summary:
This diff creates the Android OSS build system for the module react/renderer/components/view
As part of this diff I had to remove inner folders of react/renderer/components/view

changelog: [internal] internal

Reviewed By: fkgozali

Differential Revision: D22881703

fbshipit-source-id: afb56b4f7660d000d2abb8ade0ccb60d1adfb371
2020-08-06 00:09:11 -07:00
David Vacca 7c5be8015d Create Android OSS build system for react/renderer/graphics module
Summary:
This diff creates the Android OSS build system for the module react/renderer/graphics
As part of this diff I also moved android specific files to the folder react/renderer/graphics/platform/cxx/react/renderer/graphics folder
changelog: [internal] internal

Reviewed By: fkgozali

Differential Revision: D22880975

fbshipit-source-id: 6899c3bb5ebce3a93d8487f49f1c253925a518e7
2020-08-06 00:09:11 -07:00
Joshua Gross 0713246e7b Switch to using safer UpdateState mechanism
Summary:
Update FabricViewStateManager so that the caller can bail out of updates by returning null.

Changelog: [Internal]

Reviewed By: mdvacca

Differential Revision: D22966024

fbshipit-source-id: 31cd9ec8a9a9918fbb94844e30ed1a2fcc61997d
2020-08-05 22:01:19 -07:00
Rick Hanlon d0e710bfb3 Re-land React Native sync for revisions b5c6dd2...e67a6b160
Summary:
Re-land of , with the following additional changes:
- **[e67a6b160](https://github.com/facebook/react/commit/e67a6b160 )**: Fix runtime error that happens if a passive destroy function throws within an unmounted tree (#19543) //<Brian Vaughn>//
- **[5cff77550](https://github.com/facebook/react/commit/5cff77550 )**: [Scheduler] Get current time from performance.now in non-DOM environments (#19532) //<Emilis Baliukonis>//
- **[e9721e14e](https://github.com/facebook/react/commit/e9721e14e )**: Remove onScroll bubbling flag (#19535) //<Dan Abramov>//
- **[b61174fb7](https://github.com/facebook/react/commit/b61174fb7 )**: Remove the deprecated React Flare event system (#19520) //<Dominic Gannaway>//

Changelog: [internal]

Reviewed By: lunaruan

Differential Revision: D22961478

fbshipit-source-id: 2df73038dc2424cf8e1d44cc76dba70203253f40
2020-08-05 20:13:12 -07:00