diff --git a/Directory.Packages.props b/Directory.Packages.props
index d824c2f3..01d3266a 100644
--- a/Directory.Packages.props
+++ b/Directory.Packages.props
@@ -32,6 +32,7 @@
+
@@ -39,7 +40,7 @@
-
+
@@ -70,10 +71,10 @@
-
+
-
+
\ No newline at end of file
diff --git a/Wino.Mail.ViewModels/MailListPageViewModel.cs b/Wino.Mail.ViewModels/MailListPageViewModel.cs
index cea2c22e..0d836d95 100644
--- a/Wino.Mail.ViewModels/MailListPageViewModel.cs
+++ b/Wino.Mail.ViewModels/MailListPageViewModel.cs
@@ -468,14 +468,33 @@ public partial class MailListPageViewModel : MailBaseViewModel,
}
///
- /// Creates test notifications for the currently selected items.
+ /// Sends a new message to synchronize current folder.
///
[RelayCommand]
- private async Task SyncFolder()
+ private void SyncFolder()
{
- if (!CanSynchronize || MailCollection.SelectedItemsCount == 0) return;
+ if (!CanSynchronize) return;
- await _notificationBuilder.CreateNotificationsAsync(MailCollection.SelectedItems.Select(a => a.MailCopy));
+ // Only synchronize listed folders.
+
+ // When doing linked inbox sync, we need to save the sync id to report progress back only once.
+ // Otherwise, we will report progress for each folder and that's what we don't want.
+
+ trackingSynchronizationId = Guid.NewGuid();
+ completedTrackingSynchronizationCount = 0;
+
+ foreach (var folder in ActiveFolder.HandlingFolders)
+ {
+ var options = new MailSynchronizationOptions()
+ {
+ AccountId = folder.MailAccountId,
+ Type = MailSynchronizationType.CustomFolders,
+ SynchronizationFolderIds = [folder.Id],
+ GroupedSynchronizationTrackingId = trackingSynchronizationId
+ };
+
+ Messenger.Send(new NewMailSynchronizationRequested(options));
+ }
}
[RelayCommand]
diff --git a/Wino.Mail.WinUI/Wino.Mail.WinUI.csproj b/Wino.Mail.WinUI/Wino.Mail.WinUI.csproj
index e5c8e634..217e9d54 100644
--- a/Wino.Mail.WinUI/Wino.Mail.WinUI.csproj
+++ b/Wino.Mail.WinUI/Wino.Mail.WinUI.csproj
@@ -185,6 +185,10 @@
+
+ all
+ runtime; build; native; contentfiles; analyzers; buildtransitive
+
@@ -366,10 +370,10 @@
False
True
SHA256
- True
+ False
True
Always
- x64
+ x86|x64|arm64
0
2661584A2F31D3419FFF8AA09A2C16B1991B8290