mirror of
https://github.com/status-im/react-native.git
synced 2025-02-26 08:05:34 +00:00
Provide I18n Module in OSS 3/3
Summary: expose context for I18nManagerModule and I18nUtil Reviewed By: dmmiller Differential Revision: D3575706 fbshipit-source-id: d432d3762df13f9a1b33a32eff306f88e49fe852
This commit is contained in:
parent
0df569dc7f
commit
700e82f663
@ -18,6 +18,7 @@ android_library(
|
|||||||
react_native_target('java/com/facebook/react/animation:animation'),
|
react_native_target('java/com/facebook/react/animation:animation'),
|
||||||
react_native_target('java/com/facebook/react/bridge:bridge'),
|
react_native_target('java/com/facebook/react/bridge:bridge'),
|
||||||
react_native_target('java/com/facebook/react/common:common'),
|
react_native_target('java/com/facebook/react/common:common'),
|
||||||
|
react_native_target('java/com/facebook/react/modules/i18nmanager:i18nmanager'),
|
||||||
react_native_target('java/com/facebook/react/touch:touch'),
|
react_native_target('java/com/facebook/react/touch:touch'),
|
||||||
react_native_target('java/com/facebook/react/uimanager/annotations:annotations'),
|
react_native_target('java/com/facebook/react/uimanager/annotations:annotations'),
|
||||||
],
|
],
|
||||||
|
@ -14,6 +14,7 @@ import java.util.Arrays;
|
|||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
import com.facebook.csslayout.CSSLayoutContext;
|
import com.facebook.csslayout.CSSLayoutContext;
|
||||||
|
import com.facebook.csslayout.CSSDirection;
|
||||||
import com.facebook.infer.annotation.Assertions;
|
import com.facebook.infer.annotation.Assertions;
|
||||||
import com.facebook.react.animation.Animation;
|
import com.facebook.react.animation.Animation;
|
||||||
import com.facebook.react.bridge.Arguments;
|
import com.facebook.react.bridge.Arguments;
|
||||||
@ -23,6 +24,7 @@ import com.facebook.react.bridge.ReadableArray;
|
|||||||
import com.facebook.react.bridge.ReadableMap;
|
import com.facebook.react.bridge.ReadableMap;
|
||||||
import com.facebook.react.bridge.UiThreadUtil;
|
import com.facebook.react.bridge.UiThreadUtil;
|
||||||
import com.facebook.react.bridge.WritableArray;
|
import com.facebook.react.bridge.WritableArray;
|
||||||
|
import com.facebook.react.modules.i18nmanager.I18nUtil;
|
||||||
import com.facebook.react.uimanager.debug.NotThreadSafeViewHierarchyUpdateDebugListener;
|
import com.facebook.react.uimanager.debug.NotThreadSafeViewHierarchyUpdateDebugListener;
|
||||||
import com.facebook.react.uimanager.events.EventDispatcher;
|
import com.facebook.react.uimanager.events.EventDispatcher;
|
||||||
import com.facebook.systrace.Systrace;
|
import com.facebook.systrace.Systrace;
|
||||||
@ -40,6 +42,7 @@ public class UIImplementation {
|
|||||||
private final UIViewOperationQueue mOperationsQueue;
|
private final UIViewOperationQueue mOperationsQueue;
|
||||||
private final NativeViewHierarchyOptimizer mNativeViewHierarchyOptimizer;
|
private final NativeViewHierarchyOptimizer mNativeViewHierarchyOptimizer;
|
||||||
private final int[] mMeasureBuffer = new int[4];
|
private final int[] mMeasureBuffer = new int[4];
|
||||||
|
private final ReactApplicationContext mReactContext;
|
||||||
|
|
||||||
public UIImplementation(ReactApplicationContext reactContext, List<ViewManager> viewManagers) {
|
public UIImplementation(ReactApplicationContext reactContext, List<ViewManager> viewManagers) {
|
||||||
this(reactContext, new ViewManagerRegistry(viewManagers));
|
this(reactContext, new ViewManagerRegistry(viewManagers));
|
||||||
@ -47,13 +50,16 @@ public class UIImplementation {
|
|||||||
|
|
||||||
private UIImplementation(ReactApplicationContext reactContext, ViewManagerRegistry viewManagers) {
|
private UIImplementation(ReactApplicationContext reactContext, ViewManagerRegistry viewManagers) {
|
||||||
this(
|
this(
|
||||||
|
reactContext,
|
||||||
viewManagers,
|
viewManagers,
|
||||||
new UIViewOperationQueue(reactContext, new NativeViewHierarchyManager(viewManagers)));
|
new UIViewOperationQueue(reactContext, new NativeViewHierarchyManager(viewManagers)));
|
||||||
}
|
}
|
||||||
|
|
||||||
protected UIImplementation(
|
protected UIImplementation(
|
||||||
|
ReactApplicationContext reactContext,
|
||||||
ViewManagerRegistry viewManagers,
|
ViewManagerRegistry viewManagers,
|
||||||
UIViewOperationQueue operationsQueue) {
|
UIViewOperationQueue operationsQueue) {
|
||||||
|
mReactContext = reactContext;
|
||||||
mViewManagers = viewManagers;
|
mViewManagers = viewManagers;
|
||||||
mOperationsQueue = operationsQueue;
|
mOperationsQueue = operationsQueue;
|
||||||
mNativeViewHierarchyOptimizer = new NativeViewHierarchyOptimizer(
|
mNativeViewHierarchyOptimizer = new NativeViewHierarchyOptimizer(
|
||||||
@ -63,6 +69,10 @@ public class UIImplementation {
|
|||||||
|
|
||||||
protected ReactShadowNode createRootShadowNode() {
|
protected ReactShadowNode createRootShadowNode() {
|
||||||
ReactShadowNode rootCSSNode = new ReactShadowNode();
|
ReactShadowNode rootCSSNode = new ReactShadowNode();
|
||||||
|
I18nUtil sharedI18nUtilInstance = I18nUtil.getInstance();
|
||||||
|
if (sharedI18nUtilInstance.isRTL(mReactContext)) {
|
||||||
|
rootCSSNode.setDirection(CSSDirection.RTL);
|
||||||
|
}
|
||||||
rootCSSNode.setViewClassName("Root");
|
rootCSSNode.setViewClassName("Root");
|
||||||
return rootCSSNode;
|
return rootCSSNode;
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user