Add capability-first account and calendar setup flow
This commit is contained in:
@@ -90,12 +90,12 @@
|
||||
<SymbolIcon Symbol="ContactInfo" />
|
||||
</controls:SegmentedItem.Icon>
|
||||
</controls:SegmentedItem>
|
||||
<controls:SegmentedItem Content="{x:Bind domain:Translator.AccountDetailsPage_TabMail, Mode=OneTime}">
|
||||
<controls:SegmentedItem Content="{x:Bind domain:Translator.AccountDetailsPage_TabMail, Mode=OneTime}" Visibility="{x:Bind ViewModel.HasMailAccess, Mode=OneWay}">
|
||||
<controls:SegmentedItem.Icon>
|
||||
<SymbolIcon Symbol="Mail" />
|
||||
</controls:SegmentedItem.Icon>
|
||||
</controls:SegmentedItem>
|
||||
<controls:SegmentedItem Content="{x:Bind domain:Translator.AccountDetailsPage_TabCalendar, Mode=OneTime}">
|
||||
<controls:SegmentedItem Content="{x:Bind domain:Translator.AccountDetailsPage_TabCalendar, Mode=OneTime}" Visibility="{x:Bind ViewModel.HasCalendarAccess, Mode=OneWay}">
|
||||
<controls:SegmentedItem.Icon>
|
||||
<FontIcon Glyph="" />
|
||||
</controls:SegmentedItem.Icon>
|
||||
@@ -117,7 +117,10 @@
|
||||
Text="{x:Bind ViewModel.AccountName, Mode=TwoWay}" />
|
||||
</controls:SettingsCard>
|
||||
|
||||
<controls:SettingsCard Description="{x:Bind domain:Translator.SettingsEditAccountDetails_Description}" Header="{x:Bind domain:Translator.AccountSettingsDialog_AccountName}">
|
||||
<controls:SettingsCard
|
||||
Description="{x:Bind domain:Translator.SettingsEditAccountDetails_Description}"
|
||||
Header="{x:Bind domain:Translator.AccountSettingsDialog_AccountName}"
|
||||
Visibility="{x:Bind ViewModel.HasMailAccess, Mode=OneWay}">
|
||||
<controls:SettingsCard.HeaderIcon>
|
||||
<SymbolIcon Symbol="Mail" />
|
||||
</controls:SettingsCard.HeaderIcon>
|
||||
@@ -127,7 +130,9 @@
|
||||
Text="{x:Bind ViewModel.SenderName, Mode=TwoWay}" />
|
||||
</controls:SettingsCard>
|
||||
|
||||
<controls:SettingsCard Header="{x:Bind domain:Translator.IMAPSetupDialog_MailAddress}">
|
||||
<controls:SettingsCard
|
||||
Header="{x:Bind domain:Translator.IMAPSetupDialog_MailAddress}"
|
||||
Visibility="{x:Bind ViewModel.HasMailAccess, Mode=OneWay}">
|
||||
<controls:SettingsCard.HeaderIcon>
|
||||
<SymbolIcon Symbol="Mail" />
|
||||
</controls:SettingsCard.HeaderIcon>
|
||||
@@ -137,6 +142,25 @@
|
||||
Text="{x:Bind ViewModel.Address, Mode=OneWay}" />
|
||||
</controls:SettingsCard>
|
||||
|
||||
<controls:SettingsCard
|
||||
Description="{x:Bind domain:Translator.AccountDetailsPage_CapabilityDescription, Mode=OneTime}"
|
||||
Header="{x:Bind domain:Translator.AccountDetailsPage_CapabilityTitle, Mode=OneTime}"
|
||||
Visibility="{x:Bind ViewModel.IsOAuthCapabilityEditable, Mode=OneWay}">
|
||||
<controls:SettingsCard.HeaderIcon>
|
||||
<FontIcon Glyph="" />
|
||||
</controls:SettingsCard.HeaderIcon>
|
||||
<ComboBox
|
||||
MinWidth="220"
|
||||
ItemsSource="{x:Bind ViewModel.CapabilityOptions, Mode=OneWay}"
|
||||
SelectedItem="{x:Bind ViewModel.SelectedCapabilityOption, Mode=TwoWay}">
|
||||
<ComboBox.ItemTemplate>
|
||||
<DataTemplate x:DataType="mailViewModels:AccountCapabilityOption">
|
||||
<TextBlock Text="{x:Bind DisplayText}" />
|
||||
</DataTemplate>
|
||||
</ComboBox.ItemTemplate>
|
||||
</ComboBox>
|
||||
</controls:SettingsCard>
|
||||
|
||||
<controls:SettingsCard
|
||||
HorizontalContentAlignment="Stretch"
|
||||
VerticalContentAlignment="Stretch"
|
||||
@@ -212,6 +236,7 @@
|
||||
<Grid
|
||||
x:Name="MailSettingsPanel"
|
||||
Grid.Row="2"
|
||||
x:Load="{x:Bind ViewModel.HasMailAccess, Mode=OneWay}"
|
||||
Visibility="Collapsed">
|
||||
<StackPanel Spacing="4">
|
||||
<StackPanel.ChildrenTransitions>
|
||||
@@ -403,6 +428,7 @@
|
||||
<Grid
|
||||
x:Name="CalendarSettingsPanel"
|
||||
Grid.Row="2"
|
||||
x:Load="{x:Bind ViewModel.HasCalendarAccess, Mode=OneWay}"
|
||||
Visibility="Collapsed">
|
||||
<StackPanel MaxWidth="900" Spacing="12">
|
||||
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
Margin="0,2,0,0"
|
||||
Click="RootAccountTemplate_Click"
|
||||
CommandParameter="{x:Bind}"
|
||||
Description="{x:Bind Account.Address}"
|
||||
Description="{x:Bind DescriptionText}"
|
||||
Header="{x:Bind Account.Name}"
|
||||
IsClickEnabled="True">
|
||||
<winuiControls:SettingsCard.HeaderIcon>
|
||||
@@ -199,6 +199,7 @@
|
||||
x:Name="AccountsListView"
|
||||
Grid.Row="1"
|
||||
x:Load="{x:Bind ViewModel.HasAccountsDefined, Mode=OneWay}"
|
||||
CanReorderItems="True"
|
||||
ItemContainerStyle="{StaticResource StretchedItemContainerStyle}"
|
||||
ItemTemplateSelector="{StaticResource AccountProviderViewModelTemplateSelector}"
|
||||
ItemsSource="{x:Bind ViewModel.Accounts, Mode=OneWay}"
|
||||
@@ -208,7 +209,7 @@
|
||||
<winuiControls:SettingsCard Description="{x:Bind domain:Translator.SettingsStartupItem_Description}" Header="{x:Bind domain:Translator.SettingsStartupItem_Title}">
|
||||
<ComboBox
|
||||
MinWidth="150"
|
||||
ItemsSource="{x:Bind ViewModel.Accounts, Mode=OneTime}"
|
||||
ItemsSource="{x:Bind ViewModel.StartupAccounts, Mode=OneWay}"
|
||||
SelectedItem="{x:Bind ViewModel.StartupAccount, Mode=TwoWay}">
|
||||
<ComboBox.ItemTemplate>
|
||||
<DataTemplate x:DataType="interfaces:IAccountProviderDetailViewModel">
|
||||
@@ -220,16 +221,10 @@
|
||||
<SymbolIcon Symbol="Account" />
|
||||
</winuiControls:SettingsCard.HeaderIcon>
|
||||
</winuiControls:SettingsCard>
|
||||
<winuiControls:SettingsCard
|
||||
Description="{x:Bind domain:Translator.WinoAccount_Management_LocalDataSectionDescription}"
|
||||
Header="{x:Bind domain:Translator.WinoAccount_Management_LocalDataSectionTitle}">
|
||||
<winuiControls:SettingsCard Description="{x:Bind domain:Translator.WinoAccount_Management_LocalDataSectionDescription}" Header="{x:Bind domain:Translator.WinoAccount_Management_LocalDataSectionTitle}">
|
||||
<StackPanel Orientation="Horizontal" Spacing="12">
|
||||
<Button
|
||||
Command="{x:Bind ViewModel.ImportLocalDataCommand}"
|
||||
Content="{x:Bind domain:Translator.WinoAccount_Management_LocalDataImportAction}" />
|
||||
<Button
|
||||
Command="{x:Bind ViewModel.ExportLocalDataCommand}"
|
||||
Content="{x:Bind domain:Translator.WinoAccount_Management_LocalDataExportAction}" />
|
||||
<Button Command="{x:Bind ViewModel.ImportLocalDataCommand}" Content="{x:Bind domain:Translator.WinoAccount_Management_LocalDataImportAction}" />
|
||||
<Button Command="{x:Bind ViewModel.ExportLocalDataCommand}" Content="{x:Bind domain:Translator.WinoAccount_Management_LocalDataExportAction}" />
|
||||
</StackPanel>
|
||||
<winuiControls:SettingsCard.HeaderIcon>
|
||||
<SymbolIcon Symbol="Sync" />
|
||||
|
||||
@@ -76,12 +76,18 @@
|
||||
Grid.Row="1"
|
||||
Grid.ColumnSpan="2"
|
||||
Header="{x:Bind ViewModel.PasswordHeaderText, Mode=OneWay}"
|
||||
Password="{x:Bind ViewModel.Password, Mode=TwoWay}" />
|
||||
Password="{x:Bind ViewModel.Password, Mode=TwoWay}"
|
||||
Visibility="{x:Bind ViewModel.IsMailPasswordInputVisible, Mode=OneWay}" />
|
||||
</Grid>
|
||||
|
||||
<CheckBox
|
||||
Content="{x:Bind ViewModel.EnableCalendarSupportText, Mode=OneWay}"
|
||||
IsChecked="{x:Bind ViewModel.IsCalendarSupportEnabled, Mode=TwoWay}" />
|
||||
<StackPanel Spacing="10">
|
||||
<CheckBox
|
||||
Content="{x:Bind ViewModel.EnableMailSupportText, Mode=OneWay}"
|
||||
IsChecked="{x:Bind ViewModel.IsMailSupportEnabled, Mode=TwoWay}" />
|
||||
<CheckBox
|
||||
Content="{x:Bind ViewModel.EnableCalendarSupportText, Mode=OneWay}"
|
||||
IsChecked="{x:Bind ViewModel.IsCalendarSupportEnabled, Mode=TwoWay}" />
|
||||
</StackPanel>
|
||||
|
||||
<StackPanel Spacing="8">
|
||||
<TextBlock
|
||||
@@ -93,7 +99,8 @@
|
||||
HorizontalAlignment="Left"
|
||||
Command="{x:Bind ViewModel.AutoDiscoverSettingsCommand}"
|
||||
Content="{x:Bind ViewModel.AutoDiscoverButtonText, Mode=OneWay}"
|
||||
Style="{ThemeResource AccentButtonStyle}" />
|
||||
Style="{ThemeResource AccentButtonStyle}"
|
||||
Visibility="{x:Bind ViewModel.IsMailActionsVisible, Mode=OneWay}" />
|
||||
</StackPanel>
|
||||
</StackPanel>
|
||||
</Border>
|
||||
@@ -103,7 +110,8 @@
|
||||
Background="{ThemeResource CardBackgroundFillColorDefaultBrush}"
|
||||
BorderBrush="{ThemeResource CardStrokeColorDefaultBrush}"
|
||||
BorderThickness="1"
|
||||
CornerRadius="8">
|
||||
CornerRadius="8"
|
||||
Visibility="{x:Bind ViewModel.IsMailSettingsVisible, Mode=OneWay}">
|
||||
<StackPanel Spacing="16">
|
||||
<StackPanel Spacing="2">
|
||||
<TextBlock
|
||||
@@ -176,7 +184,8 @@
|
||||
<Button
|
||||
HorizontalAlignment="Right"
|
||||
Command="{x:Bind ViewModel.TestImapConnectionCommand}"
|
||||
Content="{x:Bind ViewModel.TestImapButtonText, Mode=OneWay}" />
|
||||
Content="{x:Bind ViewModel.TestImapButtonText, Mode=OneWay}"
|
||||
Visibility="{x:Bind ViewModel.IsMailActionsVisible, Mode=OneWay}" />
|
||||
</StackPanel>
|
||||
</Border>
|
||||
|
||||
|
||||
Reference in New Issue
Block a user