diff --git a/packages/komodo_defi_types/lib/src/assets/asset_id.dart b/packages/komodo_defi_types/lib/src/assets/asset_id.dart index de28a6c1..d1967172 100644 --- a/packages/komodo_defi_types/lib/src/assets/asset_id.dart +++ b/packages/komodo_defi_types/lib/src/assets/asset_id.dart @@ -127,7 +127,7 @@ class AssetId extends Equatable { }; @override - List get props => [id, subClass.formatted]; + List get props => [id, subClass.formatted, chainId.formattedChainId]; @override String toString() => diff --git a/packages/komodo_ui/lib/src/defi/asset/asset_logo.dart b/packages/komodo_ui/lib/src/defi/asset/asset_logo.dart index 653bd6ee..ddaa4a48 100644 --- a/packages/komodo_ui/lib/src/defi/asset/asset_logo.dart +++ b/packages/komodo_ui/lib/src/defi/asset/asset_logo.dart @@ -62,9 +62,12 @@ class AssetLogo extends StatelessWidget { final resolvedTicker = _legacyTicker; final resolvedSubClass = asset?.protocol.subClass ?? assetId?.subClass; - final protocolTicker = resolvedSubClass?.iconTicker; - final shouldShowProtocolIcon = - resolvedSubClass != null && resolvedSubClass != CoinSubClass.utxo; + final isChildAsset = resolvedId?.isChildAsset ?? false; + + // Use the parent coin ticker for child assets so that token logos display + // the network they belong to (e.g. ETH for ERC20 tokens). + final protocolTicker = isChildAsset ? resolvedId?.parentId?.id : null; + final shouldShowProtocolIcon = isChildAsset && protocolTicker != null; final mainIcon = resolvedId != null