4073 Commits

Author SHA1 Message Date
Eli White
8454a36b0b Flow type TouchableBounce
Reviewed By: yungsters

Differential Revision: D7984827

fbshipit-source-id: b0dd67b5c4d57cd9bb0339a5266a16e4565b2d54
2018-05-13 02:01:05 -07:00
Tim Yung
752863629d RN: Fix Type for ReactNative.NativeComponent (2/2)
Reviewed By: TheSavior

Differential Revision: D7984936

fbshipit-source-id: d0477c54420b49220e9529fa70c2b2babce0b409
2018-05-13 01:05:57 -07:00
Tim Yung
de11ba2a5e RN: Fix Type for ReactNative.NativeComponent (1/2)
Reviewed By: TheSavior

Differential Revision: D7984814

fbshipit-source-id: 0097819128b7f82267bceeb9d5e1b5057c5129ec
2018-05-13 01:05:56 -07:00
Tim Yung
41a940392c RN: Add Missing Events to ViewPropTypes
Reviewed By: TheSavior

Differential Revision: D7984937

fbshipit-source-id: fc2703e3382a7515b71f8a634aca5b6d7a5b25b4
2018-05-13 01:05:56 -07:00
Eli White
870775ee73 Stop expose Image.resizeMode
Summary:
Exposing this enum is essentially useless and at worst is a runtime cost that isn't necessary by just using the string.

The value of this enum, as far as I understand it, is to enforce that only valid options are used. We can enforce this at build time with Flow.

I was able to migrate our codebase with a few Find and Replace for things like

```
resizeMode={Image.resizeMode.contain}
```

Reviewed By: yungsters

Differential Revision: D7983982

fbshipit-source-id: ddd7024023f8d2f01aad1fff6c8103983a1bec1a
2018-05-12 23:25:09 -07:00
Eli White
a9a612bfb6 Making ImageURISource exact
Reviewed By: yungsters

Differential Revision: D7984204

fbshipit-source-id: ccd2627b72da5c97f046c895652fdf7cc0b3db40
2018-05-12 23:25:09 -07:00
Eli White
0fe72579be Image cleanup
Reviewed By: yungsters

Differential Revision: D7983744

fbshipit-source-id: c6c1c78fd93b40553688f1444b57074802520f7e
2018-05-12 23:25:09 -07:00
Eli White
44743c07ad Flow Type TouchableOpacity
Reviewed By: yungsters

Differential Revision: D7983709

fbshipit-source-id: 0f664c831b754277e344aa53b2dbed6b4f720cd5
2018-05-12 23:25:09 -07:00
Eli White
6cfa4a360d TouchableOpacity @noflow -> @flow
Reviewed By: yungsters

Differential Revision: D7983644

fbshipit-source-id: bf4a0ba600ac51ef07ac12927eed29eeb92ffb2a
2018-05-12 23:25:09 -07:00
Eli White
f0c18dc820 Flow type TouchableHighlight
Reviewed By: yungsters

Differential Revision: D7983631

fbshipit-source-id: 98b3708b26e2bf96426d5acaa5c7e2311a3a34f6
2018-05-12 23:25:09 -07:00
Eli White
6b3aad31f6 Remove unused suppressions
Reviewed By: yungsters

Differential Revision: D7983271

fbshipit-source-id: ee64e2dacbc8a1b75915b825f7bf0621a121422d
2018-05-12 23:25:08 -07:00
Eli White
0b79d1faa2 Type TouchableWithoutFeedback
Reviewed By: yungsters

Differential Revision: D7982348

fbshipit-source-id: 409ce4a5ea8c09e58c42caf9db60117253503c4c
2018-05-12 23:25:08 -07:00
Eli White
91c4b0357a Remove unused suppressions
Reviewed By: yungsters

Differential Revision: D7982027

fbshipit-source-id: 00e538dc678275495e097d9cd14a0a2643ebaefd
2018-05-12 10:35:27 -07:00
Eli White
b127662279 Flow Type ScrollView
Reviewed By: yungsters

Differential Revision: D7981073

fbshipit-source-id: 38c100f37e46683da1e34b335d476e706baae238
2018-05-12 10:35:27 -07:00
Eli White
188b118b60 Flow Type KeyboardAvoidingView
Reviewed By: yungsters

Differential Revision: D7978494

fbshipit-source-id: e21b4910470d3dc3fd35027f2f975b6842baa6ab
2018-05-12 10:35:27 -07:00
Eli White
97e572ea6d Flow Type DatePickerIOS.ios.js
Reviewed By: yungsters

Differential Revision: D7978090

fbshipit-source-id: 65da360f34f4b6d9240a8343c89be66404767474
2018-05-12 10:35:27 -07:00
Eli White
0b71d1ddb0 Flow Typing ActivityIndicator
Reviewed By: yungsters

Differential Revision: D7977834

fbshipit-source-id: 62e54f98ee8f9e7d5189fc19c803a95f5c4c43aa
2018-05-12 10:35:27 -07:00
Eli White
f19ee28e7d Adding $FlowFixMe to invalid prop accesses
Reviewed By: yungsters

Differential Revision: D7977387

fbshipit-source-id: 442e7445be62f78bdf166a2b97ef031e39877355
2018-05-12 10:35:27 -07:00
Eli White
7ba7acdee7 Surfacing Flow issues around invalid props
Reviewed By: yungsters

Differential Revision: D7977386

fbshipit-source-id: a6df2d75e0caa55a84f9c9c6860f622942955dfc
2018-05-12 10:35:27 -07:00
Eli White
65c336f38f Make ViewProps Exact
Reviewed By: yungsters

Differential Revision: D7976755

fbshipit-source-id: f6a0da1023a9235763c7ecb3ca7a9238887d0471
2018-05-12 10:35:27 -07:00
Eli White
bc658d3c44 Spread TVViewProps into ViewProps instead of intersection
Reviewed By: yungsters

Differential Revision: D7976556

fbshipit-source-id: ca2f6bcac249a937523c4b50add8960085a8be49
2018-05-12 10:35:26 -07:00
Panagiotis Vekris
4767f9be45 v0.72.0 in xplat/js
Reviewed By: gabelevi

Differential Revision: D7956747

fbshipit-source-id: b1993de405c273b3cc1ed74f994e8e75bda0a985
2018-05-11 17:50:35 -07:00
David Vacca
75ff136f03 Load 'ReactFabric' only when it is required to render a Fabric component
Reviewed By: yungsters

Differential Revision: D7970603

fbshipit-source-id: 34676b9e174bc1e1141f4f435aa2c8e2b62cd5b9
2018-05-11 17:18:03 -07:00
Mehdi Mulani
8125be942b Reland prevent console logging on iOS 11.3+ within WebSocket
Reviewed By: shergin

Differential Revision: D7953765

fbshipit-source-id: 6b259d10c719e9ad6b2cfdbf1ebb883dacf08353
2018-05-11 14:30:54 -07:00
Eli White
680fb50040 Add missing copyright headers
Reviewed By: hramos, yungsters

Differential Revision: D7962391

fbshipit-source-id: 958a24e1cb190fc7c4ee0ba058ba88f03cc1a13b
2018-05-11 13:00:50 -07:00
Irene Feng
166264d63b Back out "React sync for revisions 0887c7d...25dda90"
Reviewed By: acdlite

Differential Revision: D7973856

fbshipit-source-id: c9c687651ca752541b80693e2af2f07b31bbabad
2018-05-11 12:17:43 -07:00
Dmitry Zakharov
a93e281428 Detach RN Bridge and CS
Reviewed By: danzimm

Differential Revision: D7833851

fbshipit-source-id: 14533c519f08bd39d69f5203040ad54415228f9f
2018-05-11 10:57:53 -07:00
Eli White
d01ab66b47 Prettier React Native Libraries
Reviewed By: sahrens

Differential Revision: D7961488

fbshipit-source-id: 05f9b8b0b91ae77f9040a5321ccc18f7c3c1ce9a
2018-05-10 19:10:38 -07:00
Eli White
cd7c91f35d Convert react-native-github/Libraries to let/const
Reviewed By: sahrens

Differential Revision: D7961763

fbshipit-source-id: ff7dd1d2c7101c8019e0b4f844d8c377b4d13a13
2018-05-10 19:10:38 -07:00
Eli White
8f5ebe5952 Convert react-native-github/Libraries to let/const
Reviewed By: sahrens

Differential Revision: D7956042

fbshipit-source-id: 221851aa311f3cdd6326497352b366048db0a1bb
2018-05-10 16:16:35 -07:00
Riley Dulin
d4d515cdc3 MessageQueue not initializing inCall
Reviewed By: yungsters

Differential Revision: D7898700

fbshipit-source-id: c2b4d6e75e7f5871cd40b00bd173e6f1a929b26a
2018-05-10 11:02:45 -07:00
Andrey Mishanin
c2c352024f Back out "[react-native][PR] Prevent console logging on iOS 11.3+ within WebSocket"
Differential Revision:
D7947829
Ninja: master broken

fbshipit-source-id: 282c574897684ce48e9e7461067805a3ec5c1de1
2018-05-10 02:08:35 -07:00
Michael Schneider
d11fdcfb93 Prevent console logging on iOS 11.3+ within WebSocket
Summary:
Fixes Xcode console output for web socket connections. Apple uses OSLog for logging within libnetworking starting 11.3+. The old way we hook into logging to prevent it will not work anymore.

Let's hook into `__nwlog_pack` that is exclusively used by libnetworking and prevent the logging in there.
Closes https://github.com/facebook/react-native/pull/18948

Reviewed By: fkgozali

Differential Revision: D7940969

Pulled By: mmmulani

fbshipit-source-id: a61beea34377044bfad7e3c446b2ec1138d6d1f5
2018-05-09 20:22:17 -07:00
Tim Yung
11cc7be821 RN: Switch ProgressBarAndroid to React.forwardRef
Reviewed By: sahrens

Differential Revision: D7904339

fbshipit-source-id: a4fe54acee7af12f1bc9b7c0d5e02a690f57ca0d
2018-05-09 15:42:54 -07:00
Spencer Ahrens
8799047dd0 Fix Modal + FlatList scrolling
Summary:
`FlatList` (actually `VirtualizedList`) allows recursive nesting of itself for easy and complex composition of lists such that it can support seemless virtualization and VPV events. It does this by only rendering a `ScrollView` for the outermost `VirtualizedList` and simply stacking `View`s for all the internal ones.

However, if a `Modal` is in a `FlatList` and also hosts a `FlatList`, e.g.:
```
<FlatList ListFooterComponent={<Modal><Foo /></Modal>} />
```
Then React context will propogate through to the inner `FlatList` and cause it to render as a plain `View`. Because the `Modal` actually portals the views into a different native hierarchy, one without a `ScrollView`, the `FlatList` won't scroll as expected.

The fix is to wipe out the context - not sure if there is a better way, but this doesn't seem terrible.

Differential Revision: D7863625

fbshipit-source-id: 38f41d72ed32b9f0eb1c9c82893f21d83a83f9ad
2018-05-09 13:29:41 -07:00
Payton Yao
c18cf5bd4a Prevent unintended VirtualizedList high priority rendering
Summary:
VirtualizedList sets high priority rendering when scrolled to the top of a list even if the bottom of the rendered list is still far away and there's nothing further to render above. This causes severe non-responsiveness while dozens of items are waiting to be rendered and user inputs can't get through.

The fix is simply to not consider it high priority to render more items when we reach the top and the first item has already been rendered, or when we reach the bottom and the last item has been rendered.

The code change just splits the two cases (hitting the top and bottom) instead of combining them into one.

I wrote a small application that switches between two FlatLists.

Demo of the original VirtualizedList
<img src="https://user-images.githubusercontent.com/3090032/39456709-2c87069e-4d1b-11e8-8535-5bda6d59400c.gif" width="270" height="480">

I'm clicking pretty often on the button, but you can see that it only switches lists a split second after the rendering is all done because the javascript thread was being blocked.

Demo of the fixed VirtualizedList
<img src="https://user-images.githubusercontent.com/3090032/39456844-00312448-4d1c-11e8-805f-cbe17aa3f95e.gif" width="270" height="480">
You can see this one is significantly more responsive than the previous one.

The source code for the demo application is available [here](https://gist.github.com/jabbawookiees/ba93a4e7b4f9b8f3acbc157e4fd04877)

[ GENERAL ] [ ENHANCEMENT ] [ Libraries/Lists/VirtualizedList.js  ] - Prevent high priority rendering at the top or bottom of a list.
Closes https://github.com/facebook/react-native/pull/19081

Differential Revision: D7933994

Pulled By: sahrens

fbshipit-source-id: 13c9f73baeb3487620b720854a753287ac0aa1fa
2018-05-09 11:03:22 -07:00
Tim Yung
e708010d18 RN: Switch Text to React.forwardRef
Reviewed By: sahrens

Differential Revision: D7902262

fbshipit-source-id: 218f95cde6d77f21d9362a2f2bd47c5f83d5ee15
2018-05-09 01:16:12 -07:00
Tim Yung
06c05e744d RN: Cleanup Text Implementation
Reviewed By: sahrens, TheSavior

Differential Revision: D7901531

fbshipit-source-id: dfaba402c1c26e34e9d2df01f2bbb8c26dfcd17e
2018-05-09 01:16:12 -07:00
Tim Yung
a1f2076aae RN: Delete mergeFast from Text
Reviewed By: sahrens, TheSavior

Differential Revision: D7899406

fbshipit-source-id: 35fb14c5af3d01404896342a47af9fa280226c7f
2018-05-09 01:16:11 -07:00
Tim Yung
6a1b41643a RN: Consistently Throw for <Text><View /></Text>
Reviewed By: sahrens

Differential Revision: D7898238

fbshipit-source-id: a2b74e691a116b1beae3c6bb266252a722aacbb1
2018-05-09 01:16:11 -07:00
Tim Yung
3e534b9aab RN: Switch View to React.forwardRef
Reviewed By: bvaughn, sophiebits

Differential Revision: D7896711

fbshipit-source-id: c10c8a14a00ac2d67605e6e4fe1a341b4688fdd8
2018-05-09 01:16:11 -07:00
Tim Yung
e1339bc183 RN: Replace context.isInAParentText w/ React.createContext
Reviewed By: sahrens

Differential Revision: D7895382

fbshipit-source-id: 4affcecd147b8e8c506e0d94f223bac3e6dfdf66
2018-05-09 01:16:11 -07:00
Riley Dulin
7e97ed00bc Fix prepack warning in RN bridge code
Reviewed By: yungsters

Differential Revision: D7903364

fbshipit-source-id: 4ef888f4e7f773f9fbc5183db2470b0f7b368d8a
2018-05-08 18:17:30 -07:00
Tim Yung
820673e707 RN: Simplify verifyPropTypes
Reviewed By: sahrens

Differential Revision: D7893675

fbshipit-source-id: 74d1eff57201a2af4a12c39c4335e28ff9f14090
2018-05-07 16:48:24 -07:00
Tim Yung
b549e364e0 RN: Simpify requireNativeComponent
Reviewed By: sahrens

Differential Revision: D7893592

fbshipit-source-id: bfe7772ff2fa785fc7c5ad1f7dc0dbe97b6ffb11
2018-05-07 16:48:24 -07:00
Tim Yung
28d37781c6 RN: Optimize View Attribute Initialization
Reviewed By: sahrens

Differential Revision: D7893593

fbshipit-source-id: a425e841c9c86b063803878c7b07704c8a90a83a
2018-05-07 16:48:24 -07:00
Tim Yung
1c90a2b47b RN: Fix requireNativeComponent Check
Reviewed By: sahrens, TheSavior

Differential Revision: D7893594

fbshipit-source-id: 83f6995842e9480382c0b2abf6b6e72c6c107a49
2018-05-07 16:48:24 -07:00
Andrew Clark
0125813f21 React sync for revisions 0887c7d...25dda90
Reviewed By: sebmarkbage

Differential Revision: D7886956

fbshipit-source-id: 5a94df618ce26dee0876b627fbbaaf0a14a403fe
2018-05-07 11:15:12 -07:00
Tim Yung
1ab7d49c2d RN: Cleanup __propTypesSecretDontUseThesePlease
Reviewed By: bvaughn

Differential Revision: D7892903

fbshipit-source-id: aab0537fe508ac740d0a2798a04f54411c8c038d
2018-05-07 09:56:15 -07:00
David Vacca
23f8f7aecb Breaking Change: Restrict WebView to only manage navigation of whitelisted URLs: http(s) by default
Reviewed By: achen1

Differential Revision: D7834050

fbshipit-source-id: 80f7fd3cd20979590b75804819e154afc14a3c64
2018-05-04 23:18:14 -07:00