Handling of OutlookSynchronizer alias.

This commit is contained in:
Burak Kaan Köse
2024-08-18 22:45:23 +02:00
parent e13e0efcc6
commit 3bb156f4da
11 changed files with 578 additions and 366 deletions

View File

@@ -208,7 +208,6 @@ namespace Wino.Views
WeakReferenceMessenger.Default.Send(new ClearMailSelectionsRequested());
WeakReferenceMessenger.Default.Send(new DisposeRenderingFrameRequested());
WeakReferenceMessenger.Default.Send(new ShellStateUpdated());
}
private async void MenuItemContextRequested(UIElement sender, ContextRequestedEventArgs args)

View File

@@ -11,6 +11,7 @@ using Wino.Core.Domain.Models.Navigation;
using Wino.Helpers;
using Wino.Mail.ViewModels.Data;
using Wino.Mail.ViewModels.Messages;
using Wino.Messaging.Client.Mails;
using Wino.Views;
using Wino.Views.Account;
using Wino.Views.Settings;
@@ -116,6 +117,7 @@ namespace Wino.Services
{
// No need for new navigation, just refresh the folder.
WeakReferenceMessenger.Default.Send(new ActiveMailFolderChangedEvent(folderNavigationArgs.BaseFolderMenuItem, folderNavigationArgs.FolderInitLoadAwaitTask));
WeakReferenceMessenger.Default.Send(new DisposeRenderingFrameRequested());
return true;
}
@@ -138,6 +140,13 @@ namespace Wino.Services
{
WeakReferenceMessenger.Default.Send(new NewMailItemRenderingRequestedEvent(mailItemViewModel));
}
else if (listingFrame.Content != null
&& listingFrame.Content.GetType() == GetPageType(WinoPage.IdlePage)
&& pageType == typeof(IdlePage))
{
// Idle -> Idle navigation. Ignore.
return true;
}
else
{
listingFrame.Navigate(pageType, parameter, transitionInfo);

File diff suppressed because one or more lines are too long

View File

@@ -39,7 +39,8 @@ namespace Wino.Views
public sealed partial class ComposePage : ComposePageAbstract,
IRecipient<NavigationPaneModeChanged>,
IRecipient<CreateNewComposeMailRequested>,
IRecipient<ApplicationThemeChanged>
IRecipient<ApplicationThemeChanged>,
IRecipient<KillChromiumRequested>
{
public bool IsComposerDarkMode
{
@@ -237,12 +238,9 @@ namespace Wino.Views
// Convert files to MailAttachmentViewModel.
foreach (var file in files)
{
if (!ViewModel.IncludedAttachments.Any(a => a.FileName == file.Path))
{
var attachmentViewModel = await file.ToAttachmentViewModelAsync();
var attachmentViewModel = await file.ToAttachmentViewModelAsync();
ViewModel.IncludedAttachments.Add(attachmentViewModel);
}
await ViewModel.IncludeAttachmentAsync(attachmentViewModel);
}
}
@@ -417,13 +415,6 @@ namespace Wino.Views
return await ExecuteScriptFunctionAsync("initializeJodit", fonts, composerFont, composerFontSize, readerFont, readerFontSize);
}
protected override void OnNavigatingFrom(NavigatingCancelEventArgs e)
{
base.OnNavigatingFrom(e);
DisposeDisposables();
DisposeWebView2();
}
private void DisposeWebView2()
{
@@ -700,5 +691,11 @@ namespace Wino.Views
ToBox.Focus(FocusState.Programmatic);
}
}
public void Receive(KillChromiumRequested message)
{
DisposeDisposables();
DisposeWebView2();
}
}
}