[#57] MailWindow: Use Task.Run()
All checks were successful
Test / Run tests (push) Successful in 2m0s
All checks were successful
Test / Run tests (push) Successful in 2m0s
This commit is contained in:
@ -602,7 +602,7 @@ namespace Elwig.Windows {
|
||||
PreviewButton.IsEnabled = false;
|
||||
PrintButton.IsEnabled = false;
|
||||
EmailButton.IsEnabled = false;
|
||||
Mouse.OverrideCursor = Cursors.AppStarting;
|
||||
Mouse.OverrideCursor = Cursors.Wait;
|
||||
GenerateButton.IsEnabled = false;
|
||||
|
||||
DisposeDocs();
|
||||
@ -828,12 +828,13 @@ namespace Elwig.Windows {
|
||||
EmailButton.IsEnabled = EmailDocuments != null && App.Config.Smtp != null;
|
||||
}
|
||||
|
||||
private void PreviewButton_Click(object sender, RoutedEventArgs evt) {
|
||||
private async void PreviewButton_Click(object sender, RoutedEventArgs evt) {
|
||||
var d = new OpenFolderDialog() {
|
||||
Title = "Ordner auswählen - Elwig",
|
||||
};
|
||||
if (d.ShowDialog() == true) {
|
||||
Mouse.OverrideCursor = Cursors.AppStarting;
|
||||
Mouse.OverrideCursor = Cursors.Wait;
|
||||
await Task.Run(() => {
|
||||
PrintDocument?.SaveTo($"{d.FolderName}/Print.pdf");
|
||||
if (EmailDocuments != null) {
|
||||
foreach (var (m, docs) in EmailDocuments) {
|
||||
@ -847,6 +848,7 @@ namespace Elwig.Windows {
|
||||
|
||||
}
|
||||
}
|
||||
});
|
||||
Mouse.OverrideCursor = null;
|
||||
Process.Start("explorer.exe", d.FolderName);
|
||||
}
|
||||
@ -862,7 +864,8 @@ namespace Elwig.Windows {
|
||||
var res = MessageBox.Show($"Sollen {PrintDocument.Pages} Blätter ({PrintDocument.TotalPages} Seiten) gedruckt werden?",
|
||||
"Rundschreiben drucken", MessageBoxButton.YesNo, MessageBoxImage.Question, MessageBoxResult.No);
|
||||
if (res == MessageBoxResult.Yes) {
|
||||
Mouse.OverrideCursor = Cursors.AppStarting;
|
||||
Mouse.OverrideCursor = Cursors.Wait;
|
||||
await Task.Run(async () => {
|
||||
if (App.Config.Debug) {
|
||||
PrintDocument.Show();
|
||||
} else {
|
||||
@ -876,6 +879,7 @@ namespace Elwig.Windows {
|
||||
))
|
||||
);
|
||||
}
|
||||
});
|
||||
Mouse.OverrideCursor = null;
|
||||
}
|
||||
|
||||
@ -893,8 +897,8 @@ namespace Elwig.Windows {
|
||||
|
||||
SmtpClient? client = null;
|
||||
try {
|
||||
Mouse.OverrideCursor = Cursors.AppStarting;
|
||||
client = await Utils.GetSmtpClient();
|
||||
Mouse.OverrideCursor = Cursors.Wait;
|
||||
client = await Task.Run(Utils.GetSmtpClient);
|
||||
Mouse.OverrideCursor = null;
|
||||
|
||||
var res = MessageBox.Show($"Sollen {EmailDocuments.Count:N0} E-Mails verschickt werden?",
|
||||
@ -903,9 +907,10 @@ namespace Elwig.Windows {
|
||||
return;
|
||||
}
|
||||
|
||||
Mouse.OverrideCursor = Cursors.AppStarting;
|
||||
Mouse.OverrideCursor = Cursors.Wait;
|
||||
var subject = EmailSubjectInput.Text;
|
||||
var text = EmailBodyInput.Text;
|
||||
await Task.Run(async () => {
|
||||
await Utils.AddSentMailBody(subject, text, EmailDocuments.Count);
|
||||
foreach (var (m, docs) in EmailDocuments) {
|
||||
using var msg = new MimeMessage();
|
||||
@ -928,6 +933,7 @@ namespace Elwig.Windows {
|
||||
docs.Select(d => d.Title).ToArray()
|
||||
)]);
|
||||
}
|
||||
});
|
||||
|
||||
MessageBox.Show("Erfolgreich alle E-Mails verschickt!", "Rundschreiben verschicken", MessageBoxButton.OK, MessageBoxImage.Information);
|
||||
} catch (Exception exc) {
|
||||
|
Reference in New Issue
Block a user