From fb114da8a47968a9bcf189ef93b0ae19e7c612b4 Mon Sep 17 00:00:00 2001 From: Nicola Corti Date: Thu, 21 Aug 2025 12:25:38 -0700 Subject: [PATCH] Remove unused internal `UIManagerModuleListener` (#53404) Summary: Pull Request resolved: https://github.com/facebook/react-native/pull/53404 This interface is part of Legacy Architecture. No one is using it either internally or externally, so it's safe to remove now. Interface was also `internal` so this is not a breaking change. Changelog: [Internal] [Changed] - Reviewed By: mdvacca Differential Revision: D80714721 fbshipit-source-id: 82cc6152af7d7980119d2eda704ae50d8e81fd2b --- .../ReactAndroid/api/ReactAndroid.api | 2 -- .../react/uimanager/UIManagerModule.java | 15 ------------ .../uimanager/UIManagerModuleListener.kt | 24 ------------------- 3 files changed, 41 deletions(-) delete mode 100644 packages/react-native/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModuleListener.kt diff --git a/packages/react-native/ReactAndroid/api/ReactAndroid.api b/packages/react-native/ReactAndroid/api/ReactAndroid.api index 2e5e7b94b3f..3398730f3ac 100644 --- a/packages/react-native/ReactAndroid/api/ReactAndroid.api +++ b/packages/react-native/ReactAndroid/api/ReactAndroid.api @@ -4362,7 +4362,6 @@ public class com/facebook/react/uimanager/UIManagerModule : com/facebook/react/b public fun addRootView (Landroid/view/View;Lcom/facebook/react/bridge/WritableMap;)I public fun addUIBlock (Lcom/facebook/react/uimanager/UIBlock;)V public fun addUIManagerEventListener (Lcom/facebook/react/bridge/UIManagerListener;)V - public fun addUIManagerListener (Lcom/facebook/react/uimanager/UIManagerModuleListener;)V public fun clearJSResponder ()V public fun configureNextLayoutAnimation (Lcom/facebook/react/bridge/ReadableMap;Lcom/facebook/react/bridge/Callback;Lcom/facebook/react/bridge/Callback;)V public static fun createConstants (Ljava/util/List;Ljava/util/Map;Ljava/util/Map;)Ljava/util/Map; @@ -4399,7 +4398,6 @@ public class com/facebook/react/uimanager/UIManagerModule : com/facebook/react/b public fun receiveEvent (ILjava/lang/String;Lcom/facebook/react/bridge/WritableMap;)V public fun removeRootView (I)V public fun removeUIManagerEventListener (Lcom/facebook/react/bridge/UIManagerListener;)V - public fun removeUIManagerListener (Lcom/facebook/react/uimanager/UIManagerModuleListener;)V public fun resolveCustomDirectEventName (Ljava/lang/String;)Ljava/lang/String; public fun resolveRootTagFromReactTag (I)I public fun resolveView (I)Landroid/view/View; diff --git a/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModule.java b/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModule.java index fab7bf4f808..50034a68456 100644 --- a/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModule.java +++ b/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModule.java @@ -52,7 +52,6 @@ import com.facebook.react.uimanager.events.RCTEventEmitter; import com.facebook.react.uimanager.internal.LegacyArchitectureShadowNodeLogger; import com.facebook.systrace.Systrace; import com.facebook.systrace.SystraceMessage; -import java.util.ArrayList; import java.util.List; import java.util.Map; import java.util.concurrent.CopyOnWriteArrayList; @@ -117,7 +116,6 @@ public class UIManagerModule extends ReactContextBaseJavaModule private final ViewManagerRegistry mViewManagerRegistry; private final UIImplementation mUIImplementation; private final MemoryTrimCallback mMemoryTrimCallback = new MemoryTrimCallback(); - private final List mListeners = new ArrayList<>(); private final CopyOnWriteArrayList mUIManagerListeners = new CopyOnWriteArrayList<>(); @@ -687,9 +685,6 @@ public class UIManagerModule extends ReactContextBaseJavaModule SystraceMessage.beginSection(Systrace.TRACE_TAG_REACT, "onBatchCompleteUI") .arg("BatchId", batchId) .flush(); - for (UIManagerModuleListener listener : mListeners) { - listener.willDispatchViewUpdates(this); - } for (UIManagerListener listener : mUIManagerListeners) { listener.willDispatchViewUpdates(this); } @@ -757,16 +752,6 @@ public class UIManagerModule extends ReactContextBaseJavaModule mUIImplementation.prependUIBlock(block); } - @Deprecated - public void addUIManagerListener(UIManagerModuleListener listener) { - mListeners.add(listener); - } - - @Deprecated - public void removeUIManagerListener(UIManagerModuleListener listener) { - mListeners.remove(listener); - } - public void addUIManagerEventListener(UIManagerListener listener) { mUIManagerListeners.add(listener); } diff --git a/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModuleListener.kt b/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModuleListener.kt deleted file mode 100644 index ddef0ad2499..00000000000 --- a/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModuleListener.kt +++ /dev/null @@ -1,24 +0,0 @@ -/* - * Copyright (c) Meta Platforms, Inc. and affiliates. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - */ - -@file:Suppress("DEPRECATION") - -package com.facebook.react.uimanager - -import com.facebook.react.common.annotations.internal.LegacyArchitecture -import com.facebook.react.common.annotations.internal.LegacyArchitectureLogLevel - -/** Listener used to hook into the UIManager update process. */ -@Deprecated("Use UIManagerListener instead. This will be deleted in some future release.") -@LegacyArchitecture(logLevel = LegacyArchitectureLogLevel.ERROR) -internal interface UIManagerModuleListener { - /** - * Called right before view updates are dispatched at the end of a batch. This is useful if a - * module needs to add UIBlocks to the queue before it is flushed. - */ - fun willDispatchViewUpdates(uiManager: UIManagerModule) -}