Better UI with descriptions
MODIFY
WalletWasabi.Fluent/ViewModels/CoinJoinProfiles/CoinJoinProfileViewModelBase.cs
WalletWasabi.Fluent/ViewModels/CoinJoinProfiles/CoinJoinProfileViewModelBase.cs
@@ -6,7 +6,7 @@ public abstract class CoinJoinProfileViewModelBase : ViewModelBase
{
public abstract string Title { get; }
- public abstract string Description { get; }
+ public abstract string[] Description { get; }
public abstract IImage Icon { get; }

MODIFY
WalletWasabi.Fluent/ViewModels/CoinJoinProfiles/EconomyCoinJoinProfile.cs
WalletWasabi.Fluent/ViewModels/CoinJoinProfiles/EconomyCoinJoinProfile.cs
@@ -7,9 +7,9 @@ internal class EconomyCoinJoinProfile : CoinJoinProfileViewModelBase
{
public override string Title => "Economy";
- public override string Description => "very Economy";
+ public override string[] Description => new[] { "Sufficient privacy", "Slow but cheaper", "Automatic CoinJoin" };
- public override IImage Icon => AssetHelpers.GetBitmapAsset($"avares://WalletWasabi.Fluent/Assets/WalletIcons/{ThemeHelper.CurrentTheme}/ledger.png");
+ public override IImage Icon => AssetHelpers.GetBitmapAsset($"avares://WalletWasabi.Fluent/Assets/WalletIcons/{ThemeHelper.CurrentTheme}/normal.png");
public override int FeeRateAverageTimeFrameHours => 168; // One week average.
}

MODIFY
WalletWasabi.Fluent/ViewModels/CoinJoinProfiles/ManualCoinJoinProfile.cs
WalletWasabi.Fluent/ViewModels/CoinJoinProfiles/ManualCoinJoinProfile.cs
@@ -14,7 +14,7 @@ public class ManualCoinJoinProfile : CoinJoinProfileViewModelBase
public override string Title => "Manual";
- public override string Description => "very Manual";
+ public override string[] Description => Array.Empty<string>();
public override IImage Icon => AssetHelpers.GetBitmapAsset($"avares://WalletWasabi.Fluent/Assets/WalletIcons/{ThemeHelper.CurrentTheme}/normal.png");

MODIFY
WalletWasabi.Fluent/ViewModels/CoinJoinProfiles/PrivateCoinJoinProfile.cs
WalletWasabi.Fluent/ViewModels/CoinJoinProfiles/PrivateCoinJoinProfile.cs
@@ -7,9 +7,9 @@ internal class PrivateCoinJoinProfile : CoinJoinProfileViewModelBase
{
public override string Title => "Private";
- public override string Description => "very Private";
+ public override string[] Description => new[] { "Optimal privacy", "Fast", "Automatic CoinJoin" };
- public override IImage Icon => AssetHelpers.GetBitmapAsset($"avares://WalletWasabi.Fluent/Assets/WalletIcons/{ThemeHelper.CurrentTheme}/coldcard.png");
+ public override IImage Icon => AssetHelpers.GetBitmapAsset($"avares://WalletWasabi.Fluent/Assets/WalletIcons/{ThemeHelper.CurrentTheme}/normal.png");
public override int MinAnonScoreTarget => 50;
public override int MaxAnonScoreTarget => 100;

MODIFY
WalletWasabi.Fluent/ViewModels/CoinJoinProfiles/SpeedyCoinJoinProfile.cs
WalletWasabi.Fluent/ViewModels/CoinJoinProfiles/SpeedyCoinJoinProfile.cs
@@ -7,9 +7,9 @@ internal class SpeedyCoinJoinProfile : CoinJoinProfileViewModelBase
{
public override string Title => "Speedy";
- public override string Description => "very speedy";
+ public override string[] Description => new[] { "Sufficient privacy", "Very Fast", "Automatic CoinJoin" };
- public override IImage Icon => AssetHelpers.GetBitmapAsset($"avares://WalletWasabi.Fluent/Assets/WalletIcons/{ThemeHelper.CurrentTheme}/trezor.png");
+ public override IImage Icon => AssetHelpers.GetBitmapAsset($"avares://WalletWasabi.Fluent/Assets/WalletIcons/{ThemeHelper.CurrentTheme}/normal.png");
public override int FeeRateAverageTimeFrameHours => 0;
}

MODIFY
WalletWasabi.Fluent/Views/CoinJoinProfiles/CoinJoinProfileControl.axaml
WalletWasabi.Fluent/Views/CoinJoinProfiles/CoinJoinProfileControl.axaml
ClipToBounds="False"
x:CompileBindings="True"
x:Class="WalletWasabi.Fluent.Views.CoinJoinProfiles.CoinJoinProfileControl">
- <StackPanel Spacing="20" Width="110" Height="180">
+ <StackPanel Spacing="20" Width="150" Height="210">
<TextBlock Text="{Binding Title}" HorizontalAlignment="Center" />
<Viewbox HorizontalAlignment="Center" Height="70">
<Image Source="{Binding Icon}" />
</Viewbox>
- <TextBlock Text="{Binding Description}" HorizontalAlignment="Center" />
+ <ItemsControl Items="{Binding Description}" HorizontalAlignment="Center">
+ <ItemsControl.ItemTemplate>
+ <DataTemplate>
+ <TextBlock x:CompileBindings="False" Text="{Binding . , Mode=OneWay, StringFormat={}- {0}}" />
+ </DataTemplate>
+ </ItemsControl.ItemTemplate>
+ </ItemsControl>
</StackPanel>
</UserControl>

Better UI with descriptions