diff --git a/apps/web/src/components/settings/ConnectionsSettings.tsx b/apps/web/src/components/settings/ConnectionsSettings.tsx index 5012986ff45..e38f6271f87 100644 --- a/apps/web/src/components/settings/ConnectionsSettings.tsx +++ b/apps/web/src/components/settings/ConnectionsSettings.tsx @@ -1561,7 +1561,22 @@ const DesktopSshHostRow = memo(function DesktopSshHostRow({ ); -}); +}, areDesktopSshHostRowPropsEqual); + +function areDesktopSshHostRowPropsEqual( + previous: Readonly, + next: Readonly, +): boolean { + return ( + previous.connectingHostAlias === next.connectingHostAlias && + previous.onConnect === next.onConnect && + previous.target.alias === next.target.alias && + previous.target.hostname === next.target.hostname && + previous.target.username === next.target.username && + previous.target.port === next.target.port && + previous.target.source === next.target.source + ); +} function CloudLinkSwitch({ checked, @@ -2749,7 +2764,7 @@ export function ConnectionsSettings() { key={`${target.alias}:${target.hostname}:${target.port ?? ""}`} target={target} connectingHostAlias={connectingSshHostAlias} - onConnect={(nextTarget) => void handleConnectSshHost(nextTarget)} + onConnect={handleConnectSshHost} /> ))} {hasLoadedDiscoveredSshHosts &&