replace inherited class by IsStopped bool
MODIFY
WalletWasabi.Fluent/ViewModels/Wallets/CoinJoinStateViewModel.cs
WalletWasabi.Fluent/ViewModels/Wallets/CoinJoinStateViewModel.cs
@@ -320,18 +320,20 @@ public partial class CoinJoinStateViewModel : ViewModelBase
{
switch (coinJoinProgress)
{
- case RoundEndedUserPressedPause:
- StopCountDown();
- _stateMachine.Fire(Trigger.WalletStoppedCoinJoin);
- break;
-
case RoundEnded roundEnded:
+ if (roundEnded.IsStopped)
+ {
+ _stateMachine.Fire(Trigger.WalletStoppedCoinJoin);
+ }
+ else
+ {
CurrentStatus = roundEnded.LastRoundState.EndRoundState switch
{
EndRoundState.TransactionBroadcasted => _roundSucceedMessage,
EndRoundState.AbortedNotEnoughAlices => _abortedNotEnoughAlicesMessage,
_ => _roundFinishedMessage
};
+ }
StopCountDown();
break;

MODIFY
WalletWasabi/WabiSabi/Client/CoinJoinProgressEvents/RoundEnded.cs
WalletWasabi/WabiSabi/Client/CoinJoinProgressEvents/RoundEnded.cs
@@ -10,4 +10,5 @@ public class RoundEnded : CoinJoinProgressEventArgs
}
public RoundState LastRoundState { get; }
+ public bool IsStopped { get; set; }
}

DELETE
WalletWasabi/WabiSabi/Client/CoinJoinProgressEvents/RoundEndedUserPressedPause.cs
-using WalletWasabi.WabiSabi.Models;
-namespace WalletWasabi.WabiSabi.Client.CoinJoinProgressEvents;
-
-public class RoundEndedUserPressedPause : RoundEnded
-{
- public RoundEndedUserPressedPause(RoundState lastRoundState) : base(lastRoundState)
- {
- }
-}

MODIFY
WalletWasabi/WabiSabi/Client/CoinJoinTracker.cs
WalletWasabi/WabiSabi/Client/CoinJoinTracker.cs
@@ -66,10 +66,7 @@ public class CoinJoinTracker : IDisposable
InCriticalCoinJoinState = false;
break;
case RoundEnded roundEnded:
- if (IsStopped)
- {
- coinJoinProgressEventArgs = new RoundEndedUserPressedPause(roundEnded.LastRoundState);
- }
+ roundEnded.IsStopped = IsStopped;
break;
}

replace inherited class by IsStopped bool