From 54acf3a431bb40b7ccbfc0dee2e3ce1486b91094 Mon Sep 17 00:00:00 2001 From: David Vacca Date: Wed, 30 May 2018 21:49:03 -0700 Subject: [PATCH] Deprecate UIManagerModule#getEventDispatcher and refactor usages Reviewed By: shergin Differential Revision: D7832079 fbshipit-source-id: 263a2f8ff96ab6e14b91395644710b4d5f36dc50 --- .../com/facebook/react/ReactRootView.java | 6 ++--- .../facebook/react/flat/FlatViewGroup.java | 16 +++++-------- .../react/uimanager/ThemedReactContext.java | 6 +++++ .../react/uimanager/UIManagerModule.java | 5 ++++ .../views/checkbox/ReactCheckBoxManager.java | 5 ++-- .../drawer/ReactDrawerLayoutManager.java | 12 ++++------ .../react/views/image/ReactImageView.java | 6 +---- .../views/modal/ReactModalHostManager.java | 7 ++---- .../react/views/modal/ReactModalHostView.java | 2 +- .../views/picker/ReactPickerManager.java | 7 ++---- .../views/scroll/ReactScrollViewHelper.java | 5 ++-- .../views/slider/ReactSliderManager.java | 8 +++---- .../SwipeRefreshLayoutManager.java | 13 ++++------- .../views/switchview/ReactSwitchManager.java | 15 ++++++------ .../ReactEditTextInputConnectionWrapper.java | 6 ++--- .../textinput/ReactTextInputManager.java | 13 +++++------ .../views/toolbar/ReactToolbarManager.java | 4 +--- .../react/views/viewpager/ReactViewPager.java | 3 +-- .../views/webview/ReactWebViewManager.java | 23 +++++++++++-------- 19 files changed, 71 insertions(+), 91 deletions(-) diff --git a/ReactAndroid/src/main/java/com/facebook/react/ReactRootView.java b/ReactAndroid/src/main/java/com/facebook/react/ReactRootView.java index 4599484e2..66d9db353 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/ReactRootView.java +++ b/ReactAndroid/src/main/java/com/facebook/react/ReactRootView.java @@ -194,8 +194,7 @@ public class ReactRootView extends SizeMonitoringFrameLayout return; } ReactContext reactContext = mReactInstanceManager.getCurrentReactContext(); - EventDispatcher eventDispatcher = reactContext.getNativeModule(UIManagerModule.class) - .getEventDispatcher(); + EventDispatcher eventDispatcher = reactContext.getEventDispatcher(); mJSTouchDispatcher.onChildStartedNativeGesture(androidEvent, eventDispatcher); } @@ -281,8 +280,7 @@ public class ReactRootView extends SizeMonitoringFrameLayout return; } ReactContext reactContext = mReactInstanceManager.getCurrentReactContext(); - EventDispatcher eventDispatcher = reactContext.getNativeModule(UIManagerModule.class) - .getEventDispatcher(); + EventDispatcher eventDispatcher = reactContext.getEventDispatcher(); mJSTouchDispatcher.handleTouchEvent(event, eventDispatcher); } diff --git a/ReactAndroid/src/main/java/com/facebook/react/flat/FlatViewGroup.java b/ReactAndroid/src/main/java/com/facebook/react/flat/FlatViewGroup.java index ae94b744b..bfbeb130f 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/flat/FlatViewGroup.java +++ b/ReactAndroid/src/main/java/com/facebook/react/flat/FlatViewGroup.java @@ -7,11 +7,6 @@ package com.facebook.react.flat; -import javax.annotation.Nullable; - -import java.lang.ref.WeakReference; -import java.util.ArrayList; - import android.annotation.SuppressLint; import android.content.Context; import android.graphics.Canvas; @@ -26,7 +21,6 @@ import android.view.MotionEvent; import android.view.View; import android.view.ViewGroup; import android.view.ViewParent; - import com.facebook.infer.annotation.Assertions; import com.facebook.react.bridge.ReactContext; import com.facebook.react.bridge.SoftAssertions; @@ -34,11 +28,14 @@ import com.facebook.react.touch.OnInterceptTouchEventListener; import com.facebook.react.touch.ReactHitSlopView; import com.facebook.react.touch.ReactInterceptingViewGroup; import com.facebook.react.uimanager.PointerEvents; +import com.facebook.react.uimanager.ReactClippingViewGroup; import com.facebook.react.uimanager.ReactCompoundViewGroup; import com.facebook.react.uimanager.ReactPointerEventsView; -import com.facebook.react.uimanager.UIManagerModule; +import com.facebook.react.uimanager.events.EventDispatcher; import com.facebook.react.views.image.ImageLoadEvent; -import com.facebook.react.uimanager.ReactClippingViewGroup; +import java.lang.ref.WeakReference; +import java.util.ArrayList; +import javax.annotation.Nullable; /** * A view that the {@link FlatShadowNode} hierarchy maps to. Can mount and draw native views as @@ -129,8 +126,7 @@ import com.facebook.react.uimanager.ReactClippingViewGroup; } ReactContext reactContext = ((ReactContext) view.getContext()); - UIManagerModule uiManagerModule = reactContext.getNativeModule(UIManagerModule.class); - uiManagerModule.getEventDispatcher().dispatchEvent( + reactContext.getEventDispatcher().dispatchEvent( new ImageLoadEvent(reactTag, imageLoadEvent)); } } diff --git a/ReactAndroid/src/main/java/com/facebook/react/uimanager/ThemedReactContext.java b/ReactAndroid/src/main/java/com/facebook/react/uimanager/ThemedReactContext.java index 375df0d05..8a6ab8670 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/uimanager/ThemedReactContext.java +++ b/ReactAndroid/src/main/java/com/facebook/react/uimanager/ThemedReactContext.java @@ -7,6 +7,7 @@ package com.facebook.react.uimanager; +import com.facebook.react.bridge.EventDispatcher; import javax.annotation.Nullable; import android.app.Activity; @@ -55,4 +56,9 @@ public class ThemedReactContext extends ReactContext { public @Nullable Activity getCurrentActivity() { return mReactApplicationContext.getCurrentActivity(); } + + @Override + public T getEventDispatcher() { + return mReactApplicationContext.getEventDispatcher(); + } } diff --git a/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModule.java b/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModule.java index 5a7c7d1ce..e0dd1dc4e 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModule.java +++ b/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModule.java @@ -26,6 +26,7 @@ import com.facebook.react.bridge.LifecycleEventListener; import com.facebook.react.bridge.OnBatchCompleteListener; import com.facebook.react.bridge.PerformanceCounter; import com.facebook.react.bridge.ReactApplicationContext; +import com.facebook.react.bridge.ReactContext; import com.facebook.react.bridge.ReactContextBaseJavaModule; import com.facebook.react.bridge.ReactMarker; import com.facebook.react.bridge.ReactMethod; @@ -703,6 +704,10 @@ public class UIManagerModule extends ReactContextBaseJavaModule implements mUIImplementation.setViewHierarchyUpdateDebugListener(listener); } + /** + * This method is deprecated, use {@link ReactContext#getEventDispatcher()}. + */ + @Deprecated public EventDispatcher getEventDispatcher() { return mEventDispatcher; } diff --git a/ReactAndroid/src/main/java/com/facebook/react/views/checkbox/ReactCheckBoxManager.java b/ReactAndroid/src/main/java/com/facebook/react/views/checkbox/ReactCheckBoxManager.java index e71c601f4..bbc3f4650 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/views/checkbox/ReactCheckBoxManager.java +++ b/ReactAndroid/src/main/java/com/facebook/react/views/checkbox/ReactCheckBoxManager.java @@ -10,9 +10,9 @@ import android.widget.CompoundButton; import com.facebook.react.bridge.ReactContext; import com.facebook.react.uimanager.SimpleViewManager; import com.facebook.react.uimanager.ThemedReactContext; -import com.facebook.react.uimanager.UIManagerModule; import com.facebook.react.uimanager.ViewProps; import com.facebook.react.uimanager.annotations.ReactProp; +import com.facebook.react.uimanager.events.EventDispatcher; /** View manager for {@link ReactCheckBox} components. */ public class ReactCheckBoxManager extends SimpleViewManager { @@ -25,8 +25,7 @@ public class ReactCheckBoxManager extends SimpleViewManager { public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { ReactContext reactContext = (ReactContext) buttonView.getContext(); reactContext - .getNativeModule(UIManagerModule.class) - .getEventDispatcher() + .getEventDispatcher() .dispatchEvent(new ReactCheckBoxEvent(buttonView.getId(), isChecked)); } }; diff --git a/ReactAndroid/src/main/java/com/facebook/react/views/drawer/ReactDrawerLayoutManager.java b/ReactAndroid/src/main/java/com/facebook/react/views/drawer/ReactDrawerLayoutManager.java index 1620d637a..b7d90bb49 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/views/drawer/ReactDrawerLayoutManager.java +++ b/ReactAndroid/src/main/java/com/facebook/react/views/drawer/ReactDrawerLayoutManager.java @@ -7,16 +7,10 @@ package com.facebook.react.views.drawer; -import javax.annotation.Nullable; - -import java.lang.reflect.Method; -import java.util.Map; - import android.os.Build; import android.support.v4.widget.DrawerLayout; import android.view.Gravity; import android.view.View; - import com.facebook.common.logging.FLog; import com.facebook.react.bridge.JSApplicationIllegalArgumentException; import com.facebook.react.bridge.ReadableArray; @@ -25,7 +19,6 @@ import com.facebook.react.common.ReactConstants; import com.facebook.react.module.annotations.ReactModule; import com.facebook.react.uimanager.PixelUtil; import com.facebook.react.uimanager.ThemedReactContext; -import com.facebook.react.uimanager.UIManagerModule; import com.facebook.react.uimanager.ViewGroupManager; import com.facebook.react.uimanager.annotations.ReactProp; import com.facebook.react.uimanager.events.EventDispatcher; @@ -33,6 +26,9 @@ import com.facebook.react.views.drawer.events.DrawerClosedEvent; import com.facebook.react.views.drawer.events.DrawerOpenedEvent; import com.facebook.react.views.drawer.events.DrawerSlideEvent; import com.facebook.react.views.drawer.events.DrawerStateChangedEvent; +import java.lang.reflect.Method; +import java.util.Map; +import javax.annotation.Nullable; /** * View Manager for {@link ReactDrawerLayout} components. @@ -55,7 +51,7 @@ public class ReactDrawerLayoutManager extends ViewGroupManagergetEventDispatcher())); } @Override diff --git a/ReactAndroid/src/main/java/com/facebook/react/views/image/ReactImageView.java b/ReactAndroid/src/main/java/com/facebook/react/views/image/ReactImageView.java index cb294cbb9..90d053c5f 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/views/image/ReactImageView.java +++ b/ReactAndroid/src/main/java/com/facebook/react/views/image/ReactImageView.java @@ -30,7 +30,6 @@ import com.facebook.drawee.controller.ControllerListener; import com.facebook.drawee.controller.ForwardingControllerListener; import com.facebook.drawee.drawable.AutoRotateDrawable; import com.facebook.drawee.drawable.RoundedColorDrawable; - import com.facebook.drawee.drawable.ScalingUtils; import com.facebook.drawee.generic.GenericDraweeHierarchy; import com.facebook.drawee.generic.GenericDraweeHierarchyBuilder; @@ -51,9 +50,7 @@ import com.facebook.react.common.build.ReactBuildConfig; import com.facebook.react.modules.fresco.ReactNetworkImageRequest; import com.facebook.react.uimanager.FloatUtil; import com.facebook.react.uimanager.PixelUtil; -import com.facebook.react.uimanager.UIManagerModule; import com.facebook.react.uimanager.events.EventDispatcher; -import com.facebook.react.views.image.ImageResizeMode; import com.facebook.react.views.imagehelper.ImageSource; import com.facebook.react.views.imagehelper.MultiSourceHelper; import com.facebook.react.views.imagehelper.MultiSourceHelper.MultiSourceResult; @@ -234,8 +231,7 @@ public class ReactImageView extends GenericDraweeView { if (!shouldNotify) { mControllerListener = null; } else { - final EventDispatcher mEventDispatcher = ((ReactContext) getContext()). - getNativeModule(UIManagerModule.class).getEventDispatcher(); + final EventDispatcher mEventDispatcher = ((ReactContext) getContext()).getEventDispatcher(); mControllerListener = new BaseControllerListener() { @Override diff --git a/ReactAndroid/src/main/java/com/facebook/react/views/modal/ReactModalHostManager.java b/ReactAndroid/src/main/java/com/facebook/react/views/modal/ReactModalHostManager.java index 0f67e9c9e..fa193e0fa 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/views/modal/ReactModalHostManager.java +++ b/ReactAndroid/src/main/java/com/facebook/react/views/modal/ReactModalHostManager.java @@ -7,18 +7,15 @@ package com.facebook.react.views.modal; -import java.util.Map; - import android.content.DialogInterface; - import com.facebook.react.common.MapBuilder; import com.facebook.react.module.annotations.ReactModule; import com.facebook.react.uimanager.LayoutShadowNode; import com.facebook.react.uimanager.ThemedReactContext; -import com.facebook.react.uimanager.UIManagerModule; import com.facebook.react.uimanager.ViewGroupManager; import com.facebook.react.uimanager.annotations.ReactProp; import com.facebook.react.uimanager.events.EventDispatcher; +import java.util.Map; /** * View manager for {@link ReactModalHostView} components. @@ -74,7 +71,7 @@ public class ReactModalHostManager extends ViewGroupManager ThemedReactContext reactContext, final ReactModalHostView view) { final EventDispatcher dispatcher = - reactContext.getNativeModule(UIManagerModule.class).getEventDispatcher(); + reactContext.getEventDispatcher(); view.setOnRequestCloseListener( new ReactModalHostView.OnRequestCloseListener() { @Override diff --git a/ReactAndroid/src/main/java/com/facebook/react/views/modal/ReactModalHostView.java b/ReactAndroid/src/main/java/com/facebook/react/views/modal/ReactModalHostView.java index ab0491fe4..5651e7da8 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/views/modal/ReactModalHostView.java +++ b/ReactAndroid/src/main/java/com/facebook/react/views/modal/ReactModalHostView.java @@ -370,7 +370,7 @@ public class ReactModalHostView extends ViewGroup implements LifecycleEventListe private EventDispatcher getEventDispatcher() { ReactContext reactContext = getReactContext(); - return reactContext.getNativeModule(UIManagerModule.class).getEventDispatcher(); + return reactContext.getEventDispatcher(); } } } diff --git a/ReactAndroid/src/main/java/com/facebook/react/views/picker/ReactPickerManager.java b/ReactAndroid/src/main/java/com/facebook/react/views/picker/ReactPickerManager.java index 59f5461ab..9bc18c887 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/views/picker/ReactPickerManager.java +++ b/ReactAndroid/src/main/java/com/facebook/react/views/picker/ReactPickerManager.java @@ -7,8 +7,6 @@ package com.facebook.react.views.picker; -import javax.annotation.Nullable; - import android.content.Context; import android.view.LayoutInflater; import android.view.View; @@ -16,17 +14,16 @@ import android.view.ViewGroup; import android.widget.ArrayAdapter; import android.widget.Spinner; import android.widget.TextView; - import com.facebook.infer.annotation.Assertions; import com.facebook.react.bridge.ReadableArray; import com.facebook.react.bridge.ReadableMap; import com.facebook.react.uimanager.SimpleViewManager; import com.facebook.react.uimanager.ThemedReactContext; -import com.facebook.react.uimanager.UIManagerModule; import com.facebook.react.uimanager.ViewProps; import com.facebook.react.uimanager.annotations.ReactProp; import com.facebook.react.uimanager.events.EventDispatcher; import com.facebook.react.views.picker.events.PickerItemSelectEvent; +import javax.annotation.Nullable; /** * {@link ViewManager} for the {@link ReactPicker} view. This is abstract because the @@ -89,7 +86,7 @@ public abstract class ReactPickerManager extends SimpleViewManager picker.setOnSelectListener( new PickerEventEmitter( picker, - reactContext.getNativeModule(UIManagerModule.class).getEventDispatcher())); + reactContext.getEventDispatcher())); } private static class ReactPickerAdapter extends ArrayAdapter { diff --git a/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewHelper.java b/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewHelper.java index a034694b4..05ce0d596 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewHelper.java +++ b/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewHelper.java @@ -9,10 +9,9 @@ package com.facebook.react.views.scroll; import android.view.View; import android.view.ViewGroup; - import com.facebook.react.bridge.JSApplicationIllegalArgumentException; import com.facebook.react.bridge.ReactContext; -import com.facebook.react.uimanager.UIManagerModule; +import com.facebook.react.uimanager.events.EventDispatcher; /** * Helper class that deals with emitting Scroll Events. @@ -69,7 +68,7 @@ public class ReactScrollViewHelper { } ReactContext reactContext = (ReactContext) scrollView.getContext(); - reactContext.getNativeModule(UIManagerModule.class).getEventDispatcher().dispatchEvent( + reactContext.getEventDispatcher().dispatchEvent( ScrollEvent.obtain( scrollView.getId(), scrollEventType, diff --git a/ReactAndroid/src/main/java/com/facebook/react/views/slider/ReactSliderManager.java b/ReactAndroid/src/main/java/com/facebook/react/views/slider/ReactSliderManager.java index 1cd9c2611..dd8008d5b 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/views/slider/ReactSliderManager.java +++ b/ReactAndroid/src/main/java/com/facebook/react/views/slider/ReactSliderManager.java @@ -13,21 +13,19 @@ import android.graphics.drawable.LayerDrawable; import android.view.View; import android.view.ViewGroup; import android.widget.SeekBar; - import com.facebook.react.bridge.ReactContext; import com.facebook.react.common.MapBuilder; import com.facebook.react.uimanager.LayoutShadowNode; import com.facebook.react.uimanager.ReactShadowNodeImpl; import com.facebook.react.uimanager.SimpleViewManager; import com.facebook.react.uimanager.ThemedReactContext; -import com.facebook.react.uimanager.UIManagerModule; import com.facebook.react.uimanager.ViewProps; import com.facebook.react.uimanager.annotations.ReactProp; +import com.facebook.react.uimanager.events.EventDispatcher; import com.facebook.yoga.YogaMeasureFunction; import com.facebook.yoga.YogaMeasureMode; import com.facebook.yoga.YogaMeasureOutput; import com.facebook.yoga.YogaNode; - import java.util.Map; /** @@ -109,7 +107,7 @@ public class ReactSliderManager extends SimpleViewManager { @Override public void onProgressChanged(SeekBar seekbar, int progress, boolean fromUser) { ReactContext reactContext = (ReactContext) seekbar.getContext(); - reactContext.getNativeModule(UIManagerModule.class).getEventDispatcher().dispatchEvent( + reactContext.getEventDispatcher().dispatchEvent( new ReactSliderEvent( seekbar.getId(), ((ReactSlider) seekbar).toRealProgress(progress), @@ -123,7 +121,7 @@ public class ReactSliderManager extends SimpleViewManager { @Override public void onStopTrackingTouch(SeekBar seekbar) { ReactContext reactContext = (ReactContext) seekbar.getContext(); - reactContext.getNativeModule(UIManagerModule.class).getEventDispatcher().dispatchEvent( + reactContext.getEventDispatcher().dispatchEvent( new ReactSlidingCompleteEvent( seekbar.getId(), ((ReactSlider) seekbar).toRealProgress(seekbar.getProgress()))); diff --git a/ReactAndroid/src/main/java/com/facebook/react/views/swiperefresh/SwipeRefreshLayoutManager.java b/ReactAndroid/src/main/java/com/facebook/react/views/swiperefresh/SwipeRefreshLayoutManager.java index 498812923..387f931c1 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/views/swiperefresh/SwipeRefreshLayoutManager.java +++ b/ReactAndroid/src/main/java/com/facebook/react/views/swiperefresh/SwipeRefreshLayoutManager.java @@ -7,24 +7,21 @@ package com.facebook.react.views.swiperefresh; -import javax.annotation.Nullable; - -import java.util.Map; +import static com.facebook.react.views.swiperefresh.SwipeRefreshLayoutManager.REACT_CLASS; import android.graphics.Color; import android.support.v4.widget.SwipeRefreshLayout; import android.support.v4.widget.SwipeRefreshLayout.OnRefreshListener; - import com.facebook.react.bridge.ReadableArray; import com.facebook.react.common.MapBuilder; import com.facebook.react.module.annotations.ReactModule; import com.facebook.react.uimanager.ThemedReactContext; -import com.facebook.react.uimanager.UIManagerModule; import com.facebook.react.uimanager.ViewGroupManager; import com.facebook.react.uimanager.ViewProps; import com.facebook.react.uimanager.annotations.ReactProp; - -import static com.facebook.react.views.swiperefresh.SwipeRefreshLayoutManager.REACT_CLASS; +import com.facebook.react.uimanager.events.EventDispatcher; +import java.util.Map; +import javax.annotation.Nullable; /** * ViewManager for {@link ReactSwipeRefreshLayout} which allows the user to "pull to refresh" a @@ -91,7 +88,7 @@ public class SwipeRefreshLayoutManager extends ViewGroupManagergetEventDispatcher() .dispatchEvent(new RefreshEvent(view.getId())); } }); diff --git a/ReactAndroid/src/main/java/com/facebook/react/views/switchview/ReactSwitchManager.java b/ReactAndroid/src/main/java/com/facebook/react/views/switchview/ReactSwitchManager.java index 70c5a5123..a1a576b37 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/views/switchview/ReactSwitchManager.java +++ b/ReactAndroid/src/main/java/com/facebook/react/views/switchview/ReactSwitchManager.java @@ -12,19 +12,18 @@ import android.graphics.PorterDuff; import android.view.View; import android.view.ViewGroup; import android.widget.CompoundButton; - -import com.facebook.react.uimanager.ReactShadowNodeImpl; -import com.facebook.yoga.YogaMeasureMode; -import com.facebook.yoga.YogaMeasureFunction; -import com.facebook.yoga.YogaNode; -import com.facebook.yoga.YogaMeasureOutput; import com.facebook.react.bridge.ReactContext; import com.facebook.react.uimanager.LayoutShadowNode; +import com.facebook.react.uimanager.ReactShadowNodeImpl; import com.facebook.react.uimanager.SimpleViewManager; import com.facebook.react.uimanager.ThemedReactContext; -import com.facebook.react.uimanager.UIManagerModule; import com.facebook.react.uimanager.ViewProps; import com.facebook.react.uimanager.annotations.ReactProp; +import com.facebook.react.uimanager.events.EventDispatcher; +import com.facebook.yoga.YogaMeasureFunction; +import com.facebook.yoga.YogaMeasureMode; +import com.facebook.yoga.YogaMeasureOutput; +import com.facebook.yoga.YogaNode; /** * View manager for {@link ReactSwitch} components. @@ -105,7 +104,7 @@ public class ReactSwitchManager extends SimpleViewManager { @Override public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { ReactContext reactContext = (ReactContext) buttonView.getContext(); - reactContext.getNativeModule(UIManagerModule.class).getEventDispatcher().dispatchEvent( + reactContext.getEventDispatcher().dispatchEvent( new ReactSwitchEvent( buttonView.getId(), isChecked)); diff --git a/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactEditTextInputConnectionWrapper.java b/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactEditTextInputConnectionWrapper.java index cc2976efd..8f7f631ca 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactEditTextInputConnectionWrapper.java +++ b/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactEditTextInputConnectionWrapper.java @@ -7,15 +7,13 @@ package com.facebook.react.views.textinput; -import javax.annotation.Nullable; - import android.view.KeyEvent; import android.view.inputmethod.EditorInfo; import android.view.inputmethod.InputConnection; import android.view.inputmethod.InputConnectionWrapper; import com.facebook.react.bridge.ReactContext; -import com.facebook.react.uimanager.UIManagerModule; import com.facebook.react.uimanager.events.EventDispatcher; +import javax.annotation.Nullable; /** * A class to implement the TextInput 'onKeyPress' API on android for soft keyboards. @@ -66,7 +64,7 @@ class ReactEditTextInputConnectionWrapper extends InputConnectionWrapper { final ReactEditText editText ) { super(target, false); - mEventDispatcher = reactContext.getNativeModule(UIManagerModule.class).getEventDispatcher(); + mEventDispatcher = reactContext.getEventDispatcher(); mEditText = editText; } diff --git a/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputManager.java b/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputManager.java index fa3c275c6..74671b06a 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputManager.java +++ b/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputManager.java @@ -34,7 +34,6 @@ import com.facebook.react.uimanager.LayoutShadowNode; import com.facebook.react.uimanager.PixelUtil; import com.facebook.react.uimanager.Spacing; import com.facebook.react.uimanager.ThemedReactContext; -import com.facebook.react.uimanager.UIManagerModule; import com.facebook.react.uimanager.ViewDefaults; import com.facebook.react.uimanager.ViewProps; import com.facebook.react.uimanager.annotations.ReactProp; @@ -694,7 +693,7 @@ public class ReactTextInputManager extends BaseViewManagergetEventDispatcher(); mEditText = editText; mPreviousText = null; } @@ -752,7 +751,7 @@ public class ReactTextInputManager extends BaseViewManagergetEventDispatcher(); if (hasFocus) { eventDispatcher.dispatchEvent( new ReactTextInputFocusEvent( @@ -789,7 +788,7 @@ public class ReactTextInputManager extends BaseViewManagergetEventDispatcher(); eventDispatcher.dispatchEvent( new ReactTextInputSubmitEditingEvent( @@ -818,7 +817,7 @@ public class ReactTextInputManager extends BaseViewManagergetEventDispatcher(); } @Override @@ -857,7 +856,7 @@ public class ReactTextInputManager extends BaseViewManagergetEventDispatcher(); } @Override @@ -889,7 +888,7 @@ public class ReactTextInputManager extends BaseViewManagergetEventDispatcher(); } @Override diff --git a/ReactAndroid/src/main/java/com/facebook/react/views/toolbar/ReactToolbarManager.java b/ReactAndroid/src/main/java/com/facebook/react/views/toolbar/ReactToolbarManager.java index 0de356f1b..805d6ec56 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/views/toolbar/ReactToolbarManager.java +++ b/ReactAndroid/src/main/java/com/facebook/react/views/toolbar/ReactToolbarManager.java @@ -19,7 +19,6 @@ import com.facebook.react.bridge.ReadableMap; import com.facebook.react.common.MapBuilder; import com.facebook.react.uimanager.PixelUtil; import com.facebook.react.uimanager.ThemedReactContext; -import com.facebook.react.uimanager.UIManagerModule; import com.facebook.react.uimanager.ViewGroupManager; import com.facebook.react.uimanager.annotations.ReactProp; import com.facebook.react.uimanager.events.EventDispatcher; @@ -118,8 +117,7 @@ public class ReactToolbarManager extends ViewGroupManager { @Override protected void addEventEmitters(final ThemedReactContext reactContext, final ReactToolbar view) { - final EventDispatcher mEventDispatcher = reactContext.getNativeModule(UIManagerModule.class) - .getEventDispatcher(); + final EventDispatcher mEventDispatcher = reactContext.getEventDispatcher(); view.setNavigationOnClickListener( new View.OnClickListener() { @Override diff --git a/ReactAndroid/src/main/java/com/facebook/react/views/viewpager/ReactViewPager.java b/ReactAndroid/src/main/java/com/facebook/react/views/viewpager/ReactViewPager.java index 48b5f1a61..1bc2e36f6 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/views/viewpager/ReactViewPager.java +++ b/ReactAndroid/src/main/java/com/facebook/react/views/viewpager/ReactViewPager.java @@ -15,7 +15,6 @@ import android.view.View; import android.view.ViewGroup; import com.facebook.react.bridge.ReactContext; import com.facebook.react.common.ReactConstants; -import com.facebook.react.uimanager.UIManagerModule; import com.facebook.react.uimanager.events.EventDispatcher; import com.facebook.react.uimanager.events.NativeGestureUtil; import java.util.ArrayList; @@ -159,7 +158,7 @@ public class ReactViewPager extends ViewPager { public ReactViewPager(ReactContext reactContext) { super(reactContext); - mEventDispatcher = reactContext.getNativeModule(UIManagerModule.class).getEventDispatcher(); + mEventDispatcher = reactContext.getEventDispatcher(); mIsCurrentItemFromJs = false; setOnPageChangeListener(new PageChangeListener()); setAdapter(new Adapter()); diff --git a/ReactAndroid/src/main/java/com/facebook/react/views/webview/ReactWebViewManager.java b/ReactAndroid/src/main/java/com/facebook/react/views/webview/ReactWebViewManager.java index 7f07b2742..df6c87762 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/views/webview/ReactWebViewManager.java +++ b/ReactAndroid/src/main/java/com/facebook/react/views/webview/ReactWebViewManager.java @@ -29,17 +29,15 @@ import android.os.Build; import android.text.TextUtils; import android.view.ViewGroup.LayoutParams; import android.webkit.ConsoleMessage; +import android.webkit.CookieManager; import android.webkit.GeolocationPermissions; -import android.webkit.WebChromeClient; -import android.webkit.WebView; -import android.webkit.WebViewClient; import android.webkit.JavascriptInterface; import android.webkit.ValueCallback; +import android.webkit.WebChromeClient; import android.webkit.WebSettings; -import android.webkit.CookieManager; - +import android.webkit.WebView; +import android.webkit.WebViewClient; import com.facebook.common.logging.FLog; -import com.facebook.react.common.ReactConstants; import com.facebook.react.bridge.Arguments; import com.facebook.react.bridge.LifecycleEventListener; import com.facebook.react.bridge.ReactContext; @@ -48,11 +46,11 @@ import com.facebook.react.bridge.ReadableMap; import com.facebook.react.bridge.ReadableMapKeySetIterator; import com.facebook.react.bridge.WritableMap; import com.facebook.react.common.MapBuilder; +import com.facebook.react.common.ReactConstants; import com.facebook.react.common.build.ReactBuildConfig; import com.facebook.react.module.annotations.ReactModule; import com.facebook.react.uimanager.SimpleViewManager; import com.facebook.react.uimanager.ThemedReactContext; -import com.facebook.react.uimanager.UIManagerModule; import com.facebook.react.uimanager.annotations.ReactProp; import com.facebook.react.uimanager.events.ContentSizeChangeEvent; import com.facebook.react.uimanager.events.Event; @@ -61,9 +59,14 @@ import com.facebook.react.views.webview.events.TopLoadingErrorEvent; import com.facebook.react.views.webview.events.TopLoadingFinishEvent; import com.facebook.react.views.webview.events.TopLoadingStartEvent; import com.facebook.react.views.webview.events.TopMessageEvent; - -import org.json.JSONObject; +import java.io.UnsupportedEncodingException; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.Locale; +import java.util.Map; +import javax.annotation.Nullable; import org.json.JSONException; +import org.json.JSONObject; /** * Manages instances of {@link WebView} @@ -683,7 +686,7 @@ public class ReactWebViewManager extends SimpleViewManager { protected static void dispatchEvent(WebView webView, Event event) { ReactContext reactContext = (ReactContext) webView.getContext(); EventDispatcher eventDispatcher = - reactContext.getNativeModule(UIManagerModule.class).getEventDispatcher(); + reactContext.getEventDispatcher(); eventDispatcher.dispatchEvent(event); } }