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 00e0066b97a..03a60ed27e1 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 @@ -17,7 +17,7 @@ import com.facebook.react.uimanager.LayoutShadowNode; import com.facebook.react.uimanager.ReactStylesDiffMap; import com.facebook.react.uimanager.StateWrapper; import com.facebook.react.uimanager.ThemedReactContext; -import com.facebook.react.uimanager.UIManagerModule; +import com.facebook.react.uimanager.UIManagerHelper; import com.facebook.react.uimanager.ViewGroupManager; import com.facebook.react.uimanager.ViewManagerDelegate; import com.facebook.react.uimanager.annotations.ReactProp; @@ -105,26 +105,24 @@ public class ReactModalHostManager extends ViewGroupManager @Override protected void addEventEmitters(ThemedReactContext reactContext, final ReactModalHostView view) { - UIManagerModule uiManager = reactContext.getNativeModule(UIManagerModule.class); - if (uiManager == null) { - return; + final EventDispatcher dispatcher = + UIManagerHelper.getEventDispatcherForReactTag(reactContext, view.getId()); + if (dispatcher != null) { + view.setOnRequestCloseListener( + new ReactModalHostView.OnRequestCloseListener() { + @Override + public void onRequestClose(DialogInterface dialog) { + dispatcher.dispatchEvent(new RequestCloseEvent(view.getId())); + } + }); + view.setOnShowListener( + new DialogInterface.OnShowListener() { + @Override + public void onShow(DialogInterface dialog) { + dispatcher.dispatchEvent(new ShowEvent(view.getId())); + } + }); } - - final EventDispatcher dispatcher = uiManager.getEventDispatcher(); - view.setOnRequestCloseListener( - new ReactModalHostView.OnRequestCloseListener() { - @Override - public void onRequestClose(DialogInterface dialog) { - dispatcher.dispatchEvent(new RequestCloseEvent(view.getId())); - } - }); - view.setOnShowListener( - new DialogInterface.OnShowListener() { - @Override - public void onShow(DialogInterface dialog) { - dispatcher.dispatchEvent(new ShowEvent(view.getId())); - } - }); } @Override 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 05084627a6d..f5c0584047e 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 @@ -61,7 +61,6 @@ import com.facebook.react.uimanager.Spacing; import com.facebook.react.uimanager.StateWrapper; import com.facebook.react.uimanager.ThemedReactContext; import com.facebook.react.uimanager.UIManagerHelper; -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; @@ -1100,8 +1099,7 @@ public class ReactTextInputManager extends BaseViewManager