Skip to content

Commit 0537763

Browse files
Dmitry Zakharovfacebook-github-bot
Dmitry Zakharov
authored andcommitted
Cleanup ReactInstanceManager
Reviewed By: kathryngray Differential Revision: D6296922 fbshipit-source-id: 2fbf11f09a3c25ff3e7c222edc2e01b81e687943
1 parent 4894ac4 commit 0537763

File tree

1 file changed

+39
-46
lines changed

1 file changed

+39
-46
lines changed

ReactAndroid/src/main/java/com/facebook/react/ReactInstanceManager.java

+39-46
Original file line numberDiff line numberDiff line change
@@ -152,42 +152,12 @@ public interface ReactInstanceEventListener {
152152
// Identifies whether the instance manager destroy function is in process,
153153
// while true any spawned create thread should wait for proper clean up before initializing
154154
private volatile Boolean mHasStartedDestroying = false;
155-
private final UIImplementationProvider mUIImplementationProvider;
156155
private final MemoryPressureRouter mMemoryPressureRouter;
157156
private final @Nullable NativeModuleCallExceptionHandler mNativeModuleCallExceptionHandler;
158157
private final boolean mLazyNativeModulesEnabled;
159-
private final boolean mLazyViewManagersEnabled;
160158
private final boolean mDelayViewManagerClassLoadsEnabled;
161159
private final boolean mUseSeparateUIBackgroundThread;
162160
private final int mMinNumShakes;
163-
private final int mMinTimeLeftInFrameForNonBatchedOperationMs;
164-
165-
private final ReactInstanceDevCommandsHandler mDevInterface =
166-
new ReactInstanceDevCommandsHandler() {
167-
168-
@Override
169-
public void onReloadWithJSDebugger(JavaJSExecutor.Factory jsExecutorFactory) {
170-
ReactInstanceManager.this.onReloadWithJSDebugger(jsExecutorFactory);
171-
}
172-
173-
@Override
174-
public void onJSBundleLoadedFromServer() {
175-
ReactInstanceManager.this.onJSBundleLoadedFromServer();
176-
}
177-
178-
@Override
179-
public void toggleElementInspector() {
180-
ReactInstanceManager.this.toggleElementInspector();
181-
}
182-
};
183-
184-
private final DefaultHardwareBackBtnHandler mBackBtnHandler =
185-
new DefaultHardwareBackBtnHandler() {
186-
@Override
187-
public void invokeDefaultOnBackPressed() {
188-
ReactInstanceManager.this.invokeDefaultOnBackPressed();
189-
}
190-
};
191161

192162
private class ReactContextInitParams {
193163
private final JavaScriptExecutorFactory mJsExecutorFactory;
@@ -251,34 +221,38 @@ public static ReactInstanceManagerBuilder builder() {
251221
mPackages = new ArrayList<>();
252222
mInitFunctions = new ArrayList<>();
253223
mUseDeveloperSupport = useDeveloperSupport;
254-
mDevSupportManager = DevSupportManagerFactory.create(
255-
applicationContext,
256-
mDevInterface,
257-
mJSMainModulePath,
258-
useDeveloperSupport,
259-
redBoxHandler,
260-
devBundleDownloadListener,
261-
minNumShakes);
224+
mDevSupportManager =
225+
DevSupportManagerFactory.create(
226+
applicationContext,
227+
createDevInterface(),
228+
mJSMainModulePath,
229+
useDeveloperSupport,
230+
redBoxHandler,
231+
devBundleDownloadListener,
232+
minNumShakes);
262233
mBridgeIdleDebugListener = bridgeIdleDebugListener;
263234
mLifecycleState = initialLifecycleState;
264-
mUIImplementationProvider = uiImplementationProvider;
265235
mMemoryPressureRouter = new MemoryPressureRouter(applicationContext);
266236
mNativeModuleCallExceptionHandler = nativeModuleCallExceptionHandler;
267237
mLazyNativeModulesEnabled = lazyNativeModulesEnabled;
268-
mLazyViewManagersEnabled = lazyViewManagersEnabled;
269238
mDelayViewManagerClassLoadsEnabled = delayViewManagerClassLoadsEnabled;
270-
mMinTimeLeftInFrameForNonBatchedOperationMs = minTimeLeftInFrameForNonBatchedOperationMs;
271239
mUseSeparateUIBackgroundThread = useSeparateUIBackgroundThread;
272240
mMinNumShakes = minNumShakes;
273241
synchronized (mPackages) {
274-
PrinterHolder.getPrinter().logMessage(ReactDebugOverlayTags.RN_CORE, "RNCore: Use Split Packages");
242+
PrinterHolder.getPrinter()
243+
.logMessage(ReactDebugOverlayTags.RN_CORE, "RNCore: Use Split Packages");
275244
mPackages.add(
276245
new CoreModulesPackage(
277246
this,
278-
mBackBtnHandler,
279-
mUIImplementationProvider,
280-
mLazyViewManagersEnabled,
281-
mMinTimeLeftInFrameForNonBatchedOperationMs));
247+
new DefaultHardwareBackBtnHandler() {
248+
@Override
249+
public void invokeDefaultOnBackPressed() {
250+
ReactInstanceManager.this.invokeDefaultOnBackPressed();
251+
}
252+
},
253+
uiImplementationProvider,
254+
lazyViewManagersEnabled,
255+
minTimeLeftInFrameForNonBatchedOperationMs));
282256
if (mUseDeveloperSupport) {
283257
mPackages.add(new DebugCorePackage());
284258
}
@@ -292,6 +266,25 @@ public static ReactInstanceManagerBuilder builder() {
292266
}
293267
}
294268

269+
private ReactInstanceDevCommandsHandler createDevInterface() {
270+
return new ReactInstanceDevCommandsHandler() {
271+
@Override
272+
public void onReloadWithJSDebugger(JavaJSExecutor.Factory jsExecutorFactory) {
273+
ReactInstanceManager.this.onReloadWithJSDebugger(jsExecutorFactory);
274+
}
275+
276+
@Override
277+
public void onJSBundleLoadedFromServer() {
278+
ReactInstanceManager.this.onJSBundleLoadedFromServer();
279+
}
280+
281+
@Override
282+
public void toggleElementInspector() {
283+
ReactInstanceManager.this.toggleElementInspector();
284+
}
285+
};
286+
}
287+
295288
public DevSupportManager getDevSupportManager() {
296289
return mDevSupportManager;
297290
}

0 commit comments

Comments
 (0)