diff --git a/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/devsupport/perfmonitor/PerfMonitorOverlayManager.kt b/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/devsupport/perfmonitor/PerfMonitorOverlayManager.kt index 9442152e3c9..795fd1e2f13 100644 --- a/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/devsupport/perfmonitor/PerfMonitorOverlayManager.kt +++ b/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/devsupport/perfmonitor/PerfMonitorOverlayManager.kt @@ -20,18 +20,25 @@ internal class PerfMonitorOverlayManager( /** Enable the Perf Monitor overlay. */ fun enable() { + if (enabled) { + return + } + enabled = true UiThreadUtil.runOnUiThread { val context = devHelper.currentActivity ?: return@runOnUiThread - view = PerfMonitorOverlayView(context, ::handleRecordingButtonPress) + if (view == null) { + view = PerfMonitorOverlayView(context, ::handleRecordingButtonPress) + } + view?.show() } } /** Disable the Perf Monitor overlay. Will remain hidden when updates are received. */ fun disable() { - UiThreadUtil.runOnUiThread { view?.hide() } - view = null enabled = false + + UiThreadUtil.runOnUiThread { view?.hide() } } /** Start background trace recording. */