react-native/Libraries/Utilities
Andy Street 50d8d46733 Add ability to expose sync hooks from Java to JS
Summary:
This only works for the new cxx bridge (hopefully open sourcing soon!).

This diff allows Java native modules to expose synchronous hooks to JS via the ReactSyncHook annotation. The methods will appear in JS on the native module object (e.g. you would do `require('UIManager').mySyncHook('foo');`) which allows us to enforce that required native modules are installed at build time. In order to support remote debugging, both the args and return type must be JSON serializable (so that we can go back across to the device to resolve synchronous hooks).

Follow ups will be integration tests, adding support for return types besides void, and adding support for remote debugging.

Reviewed By: mhorowitz

Differential Revision: D3218794

fb-gh-sync-id: 7e3366a8254276f5a55eb806287419287ca9182b
fbshipit-source-id: 7e3366a8254276f5a55eb806287419287ca9182b
2016-04-27 07:51:28 -07:00
..
__mocks__ Add guard to ErrorUtils mock 2016-01-28 12:08:50 -08:00
__tests__ Platform.select method 2016-04-25 16:32:20 -07:00
differ [ReactNative] Fix warnings w/h => width/height 2015-05-02 10:22:59 -08:00
Alert.js Simplified AlertIOS 2016-01-21 10:57:26 -08:00
AlertIOS.js CI now builds docs website and deploys it to /%version% path 2016-02-11 06:17:42 -08:00
BackAndroid.android.js Backed out changeset 13a4ea1d64ce 2016-03-29 03:42:18 -07:00
BackAndroid.ios.js RN: Remove BackAndroid Warning 2015-11-12 13:24:27 -08:00
CPUProfiler.js Add NativeProfiling module that uses RN nativeProfiler or console.profile 2015-11-27 04:44:25 -08:00
Dimensions.js Update Dimensions when device orientation changes 2016-03-15 05:49:25 -07:00
ErrorUtils.js [Cosmetic] Fixing comment typo 2015-06-02 20:23:34 -08:00
HMRClient.js Fix fetching sourcemap in genymotion. Fixes #5338 2016-03-24 12:06:45 -07:00
HMRLoadingView.android.js Show a Toast for HMR 2016-02-27 15:58:35 -08:00
HMRLoadingView.ios.js Show a Toast for HMR 2016-02-27 15:58:35 -08:00
MatrixMath.js Remove knowledge of fbjs from the packager 2016-03-02 04:28:38 -08:00
MessageQueue.js Add ability to expose sync hooks from Java to JS 2016-04-27 07:51:28 -07:00
PerformanceLogger.js Use monotonic clock instead of currentTimeMillis 2016-03-30 12:47:20 -07:00
PixelRatio.js PixelRatio.pixel() 2016-01-15 05:15:31 -08:00
Platform.android.js Platform.select method 2016-04-25 16:32:20 -07:00
Platform.ios.js Platform.select method 2016-04-25 16:32:20 -07:00
RCTLog.js Remove knowledge of fbjs from the packager 2016-03-02 04:28:38 -08:00
RCTRenderingPerf.js Remove knowledge of fbjs from the packager 2016-03-02 04:28:38 -08:00
Systrace.js Bring back "Use numeric identifiers when building a bundle" 2016-03-14 16:17:20 -07:00
UIManager.js CHORE - Remove Trailing Spaces 2016-04-06 09:21:53 -07:00
buildStyleInterpolator.js Remove knowledge of fbjs from the packager 2016-03-02 04:28:38 -08:00
clamp.js Move React Core Integration to a Dependency 2016-04-21 09:28:23 -07:00
createStrictShapeTypeChecker.js Remove knowledge of fbjs from the packager 2016-03-02 04:28:38 -08:00
deepFreezeAndThrowOnMutationInDev.js Ensure recursion is terminated on objects with cyclical references 2016-02-12 14:56:00 -08:00
deprecatedCallback.js Use promises in 'NetInfo' 2016-02-15 13:34:33 -08:00
deprecatedPropType.js Add a deprecatedPropType module to show deprecation warnings 2016-01-29 02:05:38 -08:00
dismissKeyboard.js [ReactNative] Sync [react_native] Fix keyboard behavior for android 2015-08-14 02:58:37 -08:00
groupByEveryN.js Flowify Library/Utilities/ 2015-03-23 16:47:26 -08:00
logError.js Flowify Library/Utilities/ 2015-03-23 16:47:26 -08:00
mapWithSeparator.js select up and down the inspector hierarchy 2015-06-04 10:18:56 -08:00
mergeFast.js Fix typo 2015-08-06 20:22:24 -08:00
mergeIntoFast.js Bugfix - Typos 2015-12-15 09:09:32 -08:00
stringifySafe.js [ReactNative] improve console logging a little bit 2015-05-04 18:57:03 -08:00
truncate.js Bugfix - Typos 2015-12-15 09:09:32 -08:00
utf8.js Add support for missing XHR response types 2016-04-11 05:54:28 -07:00