put dequeue coinjoin call to the correct place
MODIFY
WalletWasabi.Fluent/ViewModels/Dialogs/Authorization/HardwareWalletAuthDialogViewModel.cs
WalletWasabi.Fluent/ViewModels/Dialogs/Authorization/HardwareWalletAuthDialogViewModel.cs
@@ -34,9 +34,6 @@ namespace WalletWasabi.Fluent.ViewModels.Dialogs.Authorization
protected override async Task Authorize()
{
- // Dequeue any coin-joining coins.
- await _wallet.ChaumianClient.DequeueAllCoinsFromMixAsync(DequeueReason.TransactionBuilding);
-
// If it's a hardware wallet and still has a private key then it's password.
if (!_transactionAuthorizationInfo.BuildTransactionResult.Signed)
{

MODIFY
WalletWasabi.Fluent/ViewModels/Wallets/Send/TransactionPreviewViewModel.cs
WalletWasabi.Fluent/ViewModels/Wallets/Send/TransactionPreviewViewModel.cs
@@ -3,6 +3,7 @@ using NBitcoin;
using ReactiveUI;
using WalletWasabi.Blockchain.TransactionBroadcasting;
using WalletWasabi.Blockchain.TransactionBuilding;
+using WalletWasabi.CoinJoin.Client.Clients.Queuing;
using WalletWasabi.Fluent.Helpers;
using WalletWasabi.Fluent.Model;
using WalletWasabi.Fluent.ViewModels.Navigation;
@@ -58,6 +59,9 @@ namespace WalletWasabi.Fluent.ViewModels.Wallets.Send
if (authDialogResult.Result)
{
+ // Dequeue any coin-joining coins.
+ await wallet.ChaumianClient.DequeueAllCoinsFromMixAsync(DequeueReason.TransactionBuilding);
+
await broadcaster.SendTransactionAsync(transactionAuthorizationInfo.Transaction);
Navigate().Clear();
}

put dequeue coinjoin call to the correct place