diff --git a/desktop/flipper-ui-core/src/sandy-chrome/appinspect/PluginList.tsx b/desktop/flipper-ui-core/src/sandy-chrome/appinspect/PluginList.tsx index 391d8816f..7f2b2bd20 100644 --- a/desktop/flipper-ui-core/src/sandy-chrome/appinspect/PluginList.tsx +++ b/desktop/flipper-ui-core/src/sandy-chrome/appinspect/PluginList.tsx @@ -30,11 +30,7 @@ import { PluginDownloadStatus, startPluginDownload, } from '../../reducers/pluginDownloads'; -import { - loadPlugin, - switchPlugin, - uninstallPlugin, -} from '../../reducers/pluginManager'; +import {switchPlugin, uninstallPlugin} from '../../reducers/pluginManager'; import {reportUsage} from 'flipper-common'; import ConnectivityStatus from './fb-stubs/ConnectivityStatus'; import {useSelector} from 'react-redux'; @@ -142,6 +138,68 @@ export const PluginList = memo(function PluginList({ }, [disabledPlugins, dispatch], ); + const allEnabledPlugins = React.useMemo(() => { + const plugins: React.ReactElement[] = []; + + devicePlugins.forEach((plugin) => + plugins.push( + } + /> + ) + } + />, + ), + ); + + enabledPlugins.forEach((plugin) => + plugins.push( + } + /> + ) : null + } + />, + ), + ); + + return plugins; + }, [ + devicePlugins, + enabledPlugins, + connections.selectedPlugin, + connections.selectedDevice, + activeDevice, + handleAppPluginClick, + isArchived, + handleEnablePlugin, + isConnected, + ]); return ( }>Plugins @@ -149,7 +207,7 @@ export const PluginList = memo(function PluginList({ {}} - defaultOpenKeys={['device', 'enabled', 'metro']} + defaultOpenKeys={['enabled', 'metro']} selectedKeys={ connections.selectedPlugin ? [ @@ -159,31 +217,8 @@ export const PluginList = memo(function PluginList({ : [] } mode="inline"> - - {devicePlugins.map((plugin) => ( - - } - /> - ) - } - /> - ))} + + {allEnabledPlugins} {!isArchived && metroConnected && ( @@ -205,29 +240,6 @@ export const PluginList = memo(function PluginList({ ))} )} - - {enabledPlugins.map((plugin) => ( - - } - /> - ) : null - } - /> - ))} - {isConnected && (