Adding iCloud and Yahoo as special IMAP handling scenario.

This commit is contained in:
Burak Kaan Köse
2025-01-19 23:52:27 +01:00
parent e0f87f1374
commit 05280dfd42
32 changed files with 244 additions and 106 deletions

View File

@@ -41,7 +41,7 @@
</TransitionCollection>
</coreControls:WinoNavigationViewItem.ContentTransitions>
<muxc:NavigationViewItem.Icon>
<coreControls:WinoFontIcon FontSize="12" Icon="{x:Bind helpers:XamlHelpers.GetProviderIcon(Parameter.ProviderType)}" />
<coreControls:WinoFontIcon FontSize="12" Icon="{x:Bind helpers:XamlHelpers.GetProviderIcon(Parameter)}" />
</muxc:NavigationViewItem.Icon>
<muxc:NavigationViewItem.InfoBadge>
<muxc:InfoBadge

View File

@@ -34,7 +34,7 @@
Grid.RowSpan="2"
VerticalAlignment="Center"
FontSize="24"
Icon="{x:Bind helpers:XamlHelpers.GetProviderIcon(ProviderDetail.Type)}" />
Icon="{x:Bind helpers:XamlHelpers.GetProviderIcon(ProviderDetail.Type, ProviderDetail.SpecialImapProvider)}" />
<TextBlock
Grid.Column="1"
FontWeight="SemiBold"

View File

@@ -3,7 +3,6 @@ using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using Windows.UI.Xaml.Controls;
using Wino.Controls;
using Wino.Core.Domain.Entities.Shared;
using Wino.Core.UWP.Controls;
using Wino.Helpers;
@@ -22,7 +21,7 @@ namespace Wino.MenuFlyouts
foreach (var account in _accounts)
{
var pathData = new WinoFontIcon() { Icon = XamlHelpers.GetProviderIcon(account.ProviderType) };
var pathData = new WinoFontIcon() { Icon = XamlHelpers.GetProviderIcon(account) };
var menuItem = new MenuFlyoutItem() { Tag = account.Address, Icon = pathData, Text = $"{account.Name} ({account.Address})", MinHeight = 55 };
menuItem.Click += AccountClicked;

View File

@@ -20,20 +20,15 @@ namespace Wino.Mail.Services
public List<IProviderDetail> GetAvailableProviders()
{
var providerList = new List<IProviderDetail>();
var providers = new MailProviderType[]
var providerList = new List<IProviderDetail>
{
MailProviderType.Outlook,
MailProviderType.Gmail,
MailProviderType.IMAP4
new ProviderDetail(MailProviderType.Outlook, SpecialImapProvider.None),
new ProviderDetail(MailProviderType.Gmail, SpecialImapProvider.None),
new ProviderDetail(MailProviderType.IMAP4, SpecialImapProvider.iCloud),
new ProviderDetail(MailProviderType.IMAP4, SpecialImapProvider.Yahoo),
new ProviderDetail(MailProviderType.IMAP4, SpecialImapProvider.None)
};
foreach (var type in providers)
{
providerList.Add(new ProviderDetail(type));
}
return providerList;
}
}

View File

@@ -24,7 +24,7 @@
Header="{x:Bind Account.Name}"
IsClickEnabled="True">
<controls:SettingsCard.HeaderIcon>
<coreControls:WinoFontIcon FontSize="64" Icon="{x:Bind helpers:XamlHelpers.GetProviderIcon(ProviderDetail.Type)}" />
<coreControls:WinoFontIcon FontSize="64" Icon="{x:Bind helpers:XamlHelpers.GetProviderIcon(Account)}" />
</controls:SettingsCard.HeaderIcon>
<controls:SettingsCard.ActionIcon>
<PathIcon
@@ -45,7 +45,7 @@
Header="{x:Bind Account.Name}"
IsClickEnabled="True">
<controls:SettingsCard.HeaderIcon>
<coreControls:WinoFontIcon FontSize="64" Icon="{x:Bind helpers:XamlHelpers.GetProviderIcon(ProviderDetail.Type)}" />
<coreControls:WinoFontIcon FontSize="64" Icon="{x:Bind helpers:XamlHelpers.GetProviderIcon(Account)}" />
</controls:SettingsCard.HeaderIcon>
<controls:SettingsCard.ActionIcon>