Imap flow.

This commit is contained in:
Burak Kaan Köse
2026-04-19 20:13:09 +02:00
parent 496c7735f7
commit 3bd0b69429
16 changed files with 277 additions and 24 deletions
@@ -21,6 +21,7 @@ public partial class ProviderSelectionPageViewModel : MailBaseViewModel
private readonly IDialogServiceBase _dialogService;
private readonly IProviderService _providerService;
private readonly INewThemeService _themeService;
private ProviderSelectionHostMode _hostMode = ProviderSelectionHostMode.Wizard;
public WelcomeWizardContext WizardContext { get; }
@@ -74,6 +75,16 @@ public partial class ProviderSelectionPageViewModel : MailBaseViewModel
{
base.OnNavigatedTo(mode, parameters);
var navigationContext = parameters as ProviderSelectionNavigationContext
?? ProviderSelectionNavigationContext.CreateForWizard();
_hostMode = navigationContext.HostMode;
if (mode != NavigationMode.Back)
{
WizardContext.Reset();
}
Providers = _providerService.GetAvailableProviders();
AvailableColors = _themeService.GetAvailableAccountColors()
.Select(hex => new AppColorViewModel(hex))
@@ -135,9 +146,11 @@ public partial class ProviderSelectionPageViewModel : MailBaseViewModel
if (WizardContext.IsGenericImap)
{
// Navigate to ImapCalDavSettingsPage in wizard mode
var context = ImapCalDavSettingsNavigationContext.CreateForWizardMode(
WizardContext.BuildAccountCreationDialogResult());
var context = _hostMode == ProviderSelectionHostMode.SettingsAddAccount
? ImapCalDavSettingsNavigationContext.CreateForAddAccountMode(
WizardContext.BuildAccountCreationDialogResult())
: ImapCalDavSettingsNavigationContext.CreateForWizardMode(
WizardContext.BuildAccountCreationDialogResult());
Messenger.Send(new BreadcrumbNavigationRequested(
Translator.ImapCalDavSettingsPage_TitleCreate,