* feat: Enhanced sender avatars with gravatar and favicons integration * chore: Remove unused known companies thumbnails * feat(thumbnail): add IThumbnailService and refactor usage - Introduced a new interface `IThumbnailService` for handling thumbnail-related functionalities. - Registered `IThumbnailService` with its implementation `ThumbnailService` in the service container. - Updated `NotificationBuilder` to use an instance of `IThumbnailService` instead of static methods. - Refactored `ThumbnailService` from a static class to a regular class with instance methods and variables. - Modified `ImagePreviewControl` to utilize the new `IThumbnailService` instance. - Completed integration of `IThumbnailService` in the application by registering it in `App.xaml.cs`. * style: Show favicons as squares - Changed `hintCrop` in `NotificationBuilder` to `None` for app logo display. - Added `FaviconSquircle`, `FaviconImage`, and `isFavicon` to `ImagePreviewControl` for favicon handling. - Updated `UpdateInformation` method to manage favicon visibility. - Introduced `GetBitmapImageAsync` for converting Base64 to Bitmap images. - Enhanced XAML to include `FaviconSquircle` for improved UI appearance. * refactor thumbnail service * Removed old code and added clear method * added prefetch function * Change key from host to email * Remove redundant code * Test event * Fixed an issue with the thumbnail updated event. * Fix cutted favicons * exclude some domain from favicons * add yandex.ru * fix buttons in settings * remove prefetch method * Added thumbnails propagation to mailRenderingPage * Revert MailItemViewModel to object * Remove redundant code * spaces * await load parameter added * fix spaces * fix case sensativity for mail list thumbnails * change duckdns to google * Some cleanup. --------- Co-authored-by: Aleh Khantsevich <aleh.khantsevich@gmail.com> Co-authored-by: Burak Kaan Köse <bkaankose@outlook.com>
653 lines
46 KiB
XML
653 lines
46 KiB
XML
<abstract:MailListPageAbstract
|
|
x:Class="Wino.Views.MailListPage"
|
|
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
|
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
|
xmlns:abstract="using:Wino.Views.Abstract"
|
|
xmlns:animatedvisuals="using:Microsoft.UI.Xaml.Controls.AnimatedVisuals"
|
|
xmlns:collections="using:CommunityToolkit.Mvvm.Collections"
|
|
xmlns:controls="using:Wino.Controls"
|
|
xmlns:converters="using:Wino.Converters"
|
|
xmlns:coreControls="using:Wino.Core.UWP.Controls"
|
|
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
|
xmlns:domain="using:Wino.Core.Domain"
|
|
xmlns:enums="using:Wino.Core.Domain.Enums"
|
|
xmlns:helpers="using:Wino.Helpers"
|
|
xmlns:i="using:Microsoft.Xaml.Interactivity"
|
|
xmlns:interactivity="using:Microsoft.Xaml.Interactivity"
|
|
xmlns:listview="using:Wino.Controls.Advanced"
|
|
xmlns:local="using:Wino.Behaviors"
|
|
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
|
xmlns:menuflyouts="using:Wino.MenuFlyouts"
|
|
xmlns:muxc="using:Microsoft.UI.Xaml.Controls"
|
|
xmlns:selectors="using:Wino.Selectors"
|
|
xmlns:toolkit="using:CommunityToolkit.WinUI.Controls"
|
|
xmlns:toolkitExt="using:CommunityToolkit.WinUI"
|
|
xmlns:viewModelData="using:Wino.Mail.ViewModels.Data"
|
|
xmlns:wino="using:Wino.Core.UWP"
|
|
x:Name="root"
|
|
KeyboardAcceleratorPlacementMode="Hidden"
|
|
SizeChanged="PageSizeChanged"
|
|
mc:Ignorable="d">
|
|
|
|
<Page.Resources>
|
|
<CollectionViewSource
|
|
x:Name="MailCollectionViewSource"
|
|
IsSourceGrouped="True"
|
|
Source="{x:Bind ViewModel.MailCollection.MailItems, Mode=OneWay}" />
|
|
|
|
<Thickness x:Key="ExpanderHeaderPadding">0,0,0,0</Thickness>
|
|
<Thickness x:Key="ExpanderChevronMargin">0,0,12,0</Thickness>
|
|
<Thickness x:Key="ExpanderHeaderBorderThickness">0,0,0,0</Thickness>
|
|
|
|
<SolidColorBrush x:Key="CardBackgroundFillColorDefaultBrush">Transparent</SolidColorBrush>
|
|
<SolidColorBrush x:Key="CardBackgroundFillColorSecondaryBrush">Transparent</SolidColorBrush>
|
|
<SolidColorBrush x:Key="ExpanderContentBorderBrush">Transparent</SolidColorBrush>
|
|
|
|
<StaticResource x:Key="ExpanderContentBackground" ResourceKey="CardBackgroundFillColorSecondaryBrush" />
|
|
<StaticResource x:Key="ExpanderHeaderBackground" ResourceKey="CardBackgroundFillColorDefaultBrush" />
|
|
|
|
<SolidColorBrush x:Key="SystemControlRevealFocusVisualBrush" Color="#FF4C4A48" />
|
|
<SolidColorBrush x:Key="SystemControlFocusVisualSecondaryBrush" Color="#FFFFFFFF" />
|
|
|
|
<!-- Header Templates -->
|
|
<DataTemplate x:Key="MailGroupHeaderDefaultTemplate" x:DataType="collections:IReadOnlyObservableGroup">
|
|
<Grid
|
|
Margin="4,2"
|
|
AllowFocusOnInteraction="False"
|
|
Background="{ThemeResource MailListHeaderBackgroundColor}"
|
|
CornerRadius="6">
|
|
<TextBlock
|
|
Padding="12"
|
|
VerticalAlignment="Center"
|
|
AllowFocusOnInteraction="False"
|
|
FontSize="13"
|
|
FontWeight="SemiBold"
|
|
Text="{x:Bind helpers:XamlHelpers.GetMailGroupDateString(Key)}" />
|
|
</Grid>
|
|
</DataTemplate>
|
|
|
|
<!-- Swipe Items -->
|
|
<!--
|
|
TODO: Temporarily disabled. WinUI2 - SwipeControl crash.
|
|
https://github.com/microsoft/microsoft-ui-xaml/issues/2527
|
|
-->
|
|
|
|
<!--<muxc:SwipeItems x:Key="LeftSwipeItems" Mode="Execute">
|
|
<muxc:SwipeItem BehaviorOnInvoked="Close"
|
|
Invoked="LeftSwipeItemInvoked"
|
|
Text="{x:Bind domain:Translator.MailOperation_Delete}">
|
|
<muxc:SwipeItem.IconSource>
|
|
<coreControls:WinoFontIconSource Icon="Delete" />
|
|
</muxc:SwipeItem.IconSource>
|
|
<muxc:SwipeItem.Background>
|
|
<LinearGradientBrush StartPoint="0,0.5" EndPoint="1,0.5">
|
|
<GradientStop Offset="0.0" Color="#FFF5A6A6" />
|
|
<GradientStop Offset="0.5" Color="#FFEF4444" />
|
|
<GradientStop Offset="1.0" Color="#FFF32525" />
|
|
</LinearGradientBrush>
|
|
</muxc:SwipeItem.Background>
|
|
</muxc:SwipeItem>
|
|
</muxc:SwipeItems>
|
|
|
|
-->
|
|
|
|
<!--
|
|
<muxc:SwipeItems x:Key="RightSwipeItems" Mode="Execute">
|
|
<muxc:SwipeItem BehaviorOnInvoked="Close"
|
|
Invoked="RightSwipeItemInvoked"
|
|
Text="{x:Bind domain:Translator.MarkReadUnread}">
|
|
<muxc:SwipeItem.IconSource>
|
|
<coreControls:WinoFontIconSource Icon="MarkRead" />
|
|
</muxc:SwipeItem.IconSource>
|
|
</muxc:SwipeItem>
|
|
</muxc:SwipeItems>-->
|
|
|
|
<!-- Single Mail Item Template -->
|
|
<DataTemplate x:Key="SingleMailItemTemplate" x:DataType="viewModelData:MailItemViewModel">
|
|
<controls:MailItemDisplayInformationControl
|
|
x:DefaultBindMode="OneWay"
|
|
CenterHoverAction="{Binding ElementName=root, Path=ViewModel.PreferencesService.CenterHoverAction, Mode=OneWay}"
|
|
ContextRequested="MailItemContextRequested"
|
|
DisplayMode="{Binding ElementName=root, Path=ViewModel.PreferencesService.MailItemDisplayMode, Mode=OneWay}"
|
|
HoverActionExecutedCommand="{Binding ElementName=root, Path=ViewModel.ExecuteHoverActionCommand}"
|
|
IsAvatarVisible="{Binding ElementName=root, Path=ViewModel.PreferencesService.IsShowSenderPicturesEnabled, Mode=OneWay}"
|
|
IsCustomFocused="{x:Bind IsCustomFocused, Mode=OneWay}"
|
|
IsHoverActionsEnabled="{Binding ElementName=root, Path=ViewModel.PreferencesService.IsHoverActionsEnabled, Mode=OneWay}"
|
|
IsThumbnailUpdated="{x:Bind ThumbnailUpdatedEvent, Mode=OneWay}"
|
|
LeftHoverAction="{Binding ElementName=root, Path=ViewModel.PreferencesService.LeftHoverAction, Mode=OneWay}"
|
|
MailItem="{x:Bind MailCopy, Mode=OneWay}"
|
|
Prefer24HourTimeFormat="{Binding ElementName=root, Path=ViewModel.PreferencesService.Prefer24HourTimeFormat, Mode=OneWay}"
|
|
RightHoverAction="{Binding ElementName=root, Path=ViewModel.PreferencesService.RightHoverAction, Mode=OneWay}"
|
|
ShowPreviewText="{Binding ElementName=root, Path=ViewModel.PreferencesService.IsShowPreviewEnabled, Mode=OneWay}" />
|
|
</DataTemplate>
|
|
|
|
<!-- Single Mail Item Template for Threads -->
|
|
<DataTemplate x:Key="ThreadSingleMailItemTemplate" x:DataType="viewModelData:MailItemViewModel">
|
|
<controls:MailItemDisplayInformationControl
|
|
x:DefaultBindMode="OneWay"
|
|
CenterHoverAction="{Binding ElementName=root, Path=ViewModel.PreferencesService.CenterHoverAction, Mode=OneWay}"
|
|
ContextRequested="MailItemContextRequested"
|
|
DisplayMode="{Binding ElementName=root, Path=ViewModel.PreferencesService.MailItemDisplayMode, Mode=OneWay}"
|
|
FocusVisualMargin="8"
|
|
FocusVisualPrimaryBrush="{StaticResource SystemControlRevealFocusVisualBrush}"
|
|
FocusVisualPrimaryThickness="2"
|
|
FocusVisualSecondaryBrush="{StaticResource SystemControlFocusVisualSecondaryBrush}"
|
|
FocusVisualSecondaryThickness="1"
|
|
HoverActionExecutedCommand="{Binding ElementName=root, Path=ViewModel.ExecuteHoverActionCommand}"
|
|
IsAvatarVisible="{Binding ElementName=root, Path=ViewModel.PreferencesService.IsShowSenderPicturesEnabled, Mode=OneWay}"
|
|
IsCustomFocused="{x:Bind IsCustomFocused, Mode=OneWay}"
|
|
IsHoverActionsEnabled="{Binding ElementName=root, Path=ViewModel.PreferencesService.IsHoverActionsEnabled, Mode=OneWay}"
|
|
IsThumbnailUpdated="{x:Bind ThumbnailUpdatedEvent, Mode=OneWay}"
|
|
LeftHoverAction="{Binding ElementName=root, Path=ViewModel.PreferencesService.LeftHoverAction, Mode=OneWay}"
|
|
MailItem="{x:Bind MailCopy, Mode=OneWay}"
|
|
Prefer24HourTimeFormat="{Binding ElementName=root, Path=ViewModel.PreferencesService.Prefer24HourTimeFormat, Mode=OneWay}"
|
|
RightHoverAction="{Binding ElementName=root, Path=ViewModel.PreferencesService.RightHoverAction, Mode=OneWay}"
|
|
ShowPreviewText="{Binding ElementName=root, Path=ViewModel.PreferencesService.IsShowPreviewEnabled, Mode=OneWay}" />
|
|
</DataTemplate>
|
|
|
|
<!-- Mail Item Content Selector -->
|
|
<selectors:MailItemDisplaySelector x:Key="MailItemDisplaySelector" SingleMailItemTemplate="{StaticResource SingleMailItemTemplate}">
|
|
<selectors:MailItemDisplaySelector.ThreadMailItemTemplate>
|
|
<DataTemplate x:DataType="viewModelData:ThreadMailItemViewModel">
|
|
<controls:WinoExpander
|
|
x:Name="ThreadExpander"
|
|
HorizontalAlignment="Stretch"
|
|
HorizontalContentAlignment="Stretch"
|
|
IsExpanded="{x:Bind IsThreadExpanded, Mode=TwoWay}">
|
|
<controls:WinoExpander.Header>
|
|
<controls:MailItemDisplayInformationControl
|
|
x:DefaultBindMode="OneWay"
|
|
Background="Transparent"
|
|
BorderThickness="0"
|
|
CenterHoverAction="{Binding ElementName=root, Path=ViewModel.PreferencesService.CenterHoverAction, Mode=OneWay}"
|
|
ConnectedExpander="{Binding ElementName=ThreadExpander}"
|
|
ContextRequested="MailItemContextRequested"
|
|
DisplayMode="{Binding ElementName=root, Path=ViewModel.PreferencesService.MailItemDisplayMode, Mode=OneWay}"
|
|
DragStarting="ThreadHeaderDragStart"
|
|
DropCompleted="ThreadHeaderDragFinished"
|
|
HoverActionExecutedCommand="{Binding ElementName=root, Path=ViewModel.ExecuteHoverActionCommand}"
|
|
IsAvatarVisible="{Binding ElementName=root, Path=ViewModel.PreferencesService.IsShowSenderPicturesEnabled, Mode=OneWay}"
|
|
IsHitTestVisible="True"
|
|
IsHoverActionsEnabled="{Binding ElementName=root, Path=ViewModel.PreferencesService.IsHoverActionsEnabled, Mode=OneWay}"
|
|
IsThreadExpanded="{x:Bind IsThreadExpanded, Mode=TwoWay}"
|
|
IsThreadExpanderVisible="True"
|
|
LeftHoverAction="{Binding ElementName=root, Path=ViewModel.PreferencesService.LeftHoverAction, Mode=OneWay}"
|
|
MailItem="{x:Bind MailItem, Mode=OneWay}"
|
|
Prefer24HourTimeFormat="{Binding ElementName=root, Path=ViewModel.PreferencesService.Prefer24HourTimeFormat, Mode=OneWay}"
|
|
RightHoverAction="{Binding ElementName=root, Path=ViewModel.PreferencesService.RightHoverAction, Mode=OneWay}"
|
|
ShowPreviewText="{Binding ElementName=root, Path=ViewModel.PreferencesService.IsShowPreviewEnabled, Mode=OneWay}" />
|
|
</controls:WinoExpander.Header>
|
|
<controls:WinoExpander.Content>
|
|
<listview:WinoListView
|
|
x:Name="ThreadItemsList"
|
|
toolkitExt:ListViewExtensions.ItemContainerStretchDirection="Horizontal"
|
|
IsThreadListView="True"
|
|
ItemTemplate="{StaticResource ThreadSingleMailItemTemplate}"
|
|
ItemsSource="{x:Bind ThreadItems}"
|
|
ScrollViewer.VerticalScrollBarVisibility="Hidden">
|
|
<ListView.ItemContainerTransitions>
|
|
<TransitionCollection>
|
|
<EdgeUIThemeTransition />
|
|
</TransitionCollection>
|
|
</ListView.ItemContainerTransitions>
|
|
</listview:WinoListView>
|
|
</controls:WinoExpander.Content>
|
|
</controls:WinoExpander>
|
|
</DataTemplate>
|
|
</selectors:MailItemDisplaySelector.ThreadMailItemTemplate>
|
|
</selectors:MailItemDisplaySelector>
|
|
|
|
<SolidColorBrush x:Key="ButtonBackgroundDisabled">Transparent</SolidColorBrush>
|
|
</Page.Resources>
|
|
|
|
<Page.KeyboardAccelerators>
|
|
<KeyboardAccelerator
|
|
Key="A"
|
|
Invoked="SelectAllInvoked"
|
|
Modifiers="Control" />
|
|
|
|
<KeyboardAccelerator Key="Delete" Invoked="DeleteAllInvoked" />
|
|
</Page.KeyboardAccelerators>
|
|
<wino:BasePage.ShellContent>
|
|
<Grid>
|
|
<!-- Hidden focus receiver... -->
|
|
<TextBox
|
|
Grid.Column="1"
|
|
HorizontalAlignment="Right"
|
|
VerticalAlignment="Bottom"
|
|
Opacity="0"
|
|
Visibility="Collapsed" />
|
|
|
|
<AutoSuggestBox
|
|
x:Name="SearchBar"
|
|
Margin="2,0,-2,0"
|
|
VerticalAlignment="Center"
|
|
BorderBrush="Transparent"
|
|
GotFocus="SearchBoxFocused"
|
|
LostFocus="SearchBarUnfocused"
|
|
PlaceholderText="{x:Bind domain:Translator.SearchBarPlaceholder}"
|
|
QueryIcon="Find"
|
|
Text="{x:Bind ViewModel.SearchQuery, Mode=TwoWay}"
|
|
TextChanged="SearchBar_TextChanged">
|
|
<i:Interaction.Behaviors>
|
|
<i:EventTriggerBehavior EventName="QuerySubmitted">
|
|
<i:InvokeCommandAction Command="{x:Bind ViewModel.PerformSearchCommand}" />
|
|
</i:EventTriggerBehavior>
|
|
</i:Interaction.Behaviors>
|
|
</AutoSuggestBox>
|
|
</Grid>
|
|
</wino:BasePage.ShellContent>
|
|
|
|
<Grid x:Name="RootGrid" Padding="0,2,0,0">
|
|
<Grid.ColumnDefinitions>
|
|
<ColumnDefinition x:Name="MailListColumn" Width="{x:Bind ViewModel.MailListLength, Mode=OneWay, Converter={StaticResource GridLengthConverter}}" />
|
|
<ColumnDefinition x:Name="RendererColumn" Width="*" />
|
|
</Grid.ColumnDefinitions>
|
|
|
|
<!-- Mail Items -->
|
|
<Border
|
|
x:Name="MailListContainer"
|
|
Grid.Column="0"
|
|
Padding="5,5,5,0"
|
|
HorizontalAlignment="Stretch"
|
|
Background="{ThemeResource WinoContentZoneBackgroud}"
|
|
BorderBrush="{StaticResource CardStrokeColorDefaultBrush}"
|
|
BorderThickness="1"
|
|
CornerRadius="7">
|
|
<Grid x:Name="MailListGrid">
|
|
<Grid.RowDefinitions>
|
|
<RowDefinition Height="Auto" />
|
|
<RowDefinition Height="Auto" />
|
|
<RowDefinition Height="*" />
|
|
</Grid.RowDefinitions>
|
|
|
|
<!-- Action bar -->
|
|
<Grid
|
|
Margin="0,0,0,5"
|
|
Background="{ThemeResource ApplicationPageBackgroundThemeBrush}"
|
|
CornerRadius="8"
|
|
Visibility="{x:Bind ViewModel.PreferencesService.IsMailListActionBarEnabled}">
|
|
<CommandBar
|
|
HorizontalAlignment="Left"
|
|
DefaultLabelPosition="Collapsed"
|
|
IsEnabled="{x:Bind helpers:XamlHelpers.CountToBooleanConverter(ViewModel.SelectedItemCount), Mode=OneWay}"
|
|
OverflowButtonVisibility="Auto">
|
|
<interactivity:Interaction.Behaviors>
|
|
<local:BindableCommandBarBehavior ItemClickedCommand="{x:Bind ViewModel.ExecuteTopBarActionCommand}" PrimaryCommands="{x:Bind ViewModel.ActionItems, Mode=OneWay}" />
|
|
</interactivity:Interaction.Behaviors>
|
|
</CommandBar>
|
|
</Grid>
|
|
|
|
<!-- Pivot + Sync + Multi Select -->
|
|
<Grid Grid.Row="1" Padding="0,0,0,6">
|
|
<Grid.ColumnDefinitions>
|
|
<ColumnDefinition Width="Auto" />
|
|
<ColumnDefinition Width="*" />
|
|
<ColumnDefinition Width="Auto" />
|
|
</Grid.ColumnDefinitions>
|
|
<Grid.RowDefinitions>
|
|
<RowDefinition Height="Auto" />
|
|
<RowDefinition Height="Auto" />
|
|
</Grid.RowDefinitions>
|
|
|
|
<!-- Select All Checkbox -->
|
|
<CheckBox
|
|
x:Name="SelectAllCheckbox"
|
|
Grid.Row="1"
|
|
MinWidth="0"
|
|
Margin="8,0,0,0"
|
|
VerticalAlignment="Center"
|
|
Canvas.ZIndex="100"
|
|
Checked="SelectAllCheckboxChecked"
|
|
Unchecked="SelectAllCheckboxUnchecked"
|
|
Visibility="{x:Bind helpers:XamlHelpers.IsSelectionModeMultiple(MailListView.SelectionMode), Mode=OneWay}" />
|
|
|
|
|
|
<!-- Folders -->
|
|
<Grid Grid.Row="1" Grid.Column="1">
|
|
<Grid.ColumnDefinitions>
|
|
<ColumnDefinition Width="Auto" />
|
|
<ColumnDefinition Width="Auto" />
|
|
</Grid.ColumnDefinitions>
|
|
<toolkit:Segmented
|
|
ItemsSource="{x:Bind ViewModel.PivotFolders, Mode=OneWay}"
|
|
SelectedItem="{x:Bind ViewModel.SelectedFolderPivot, Mode=TwoWay}"
|
|
SelectionChanged="FolderPivotChanged"
|
|
Style="{StaticResource PivotSegmentedStyle}">
|
|
<toolkit:Segmented.ItemTemplate>
|
|
<DataTemplate x:DataType="viewModelData:FolderPivotViewModel">
|
|
<StackPanel Orientation="Horizontal">
|
|
<TextBlock Text="{x:Bind FolderTitle}" />
|
|
<TextBlock
|
|
Margin="4,0,0,0"
|
|
FontWeight="SemiBold"
|
|
Visibility="{x:Bind ShouldDisplaySelectedItemCount, Mode=OneWay}">
|
|
<Run Text="(" /><Run Text="{x:Bind SelectedItemCount, Mode=OneWay}" /><Run Text=")" />
|
|
</TextBlock>
|
|
</StackPanel>
|
|
</DataTemplate>
|
|
</toolkit:Segmented.ItemTemplate>
|
|
</toolkit:Segmented>
|
|
<Viewbox Grid.Column="1" Width="16">
|
|
<PathIcon
|
|
HorizontalAlignment="Left"
|
|
VerticalAlignment="Center"
|
|
Data="F1 M 20 10 C 20 11.106771 19.824219 12.171225 19.472656 13.193359 C 19.121094 14.215495 18.629557 15.14974 17.998047 15.996094 C 17.366535 16.842447 16.608072 17.576498 15.722656 18.198242 C 14.837239 18.819986 13.863932 19.287109 12.802734 19.599609 C 12.809244 19.567057 12.8125 19.532877 12.8125 19.49707 C 12.8125 19.461264 12.8125 19.427084 12.8125 19.394531 C 12.8125 19.173178 12.789713 18.977865 12.744141 18.808594 C 12.698567 18.639322 12.633463 18.484701 12.548828 18.344727 C 12.464191 18.204752 12.364908 18.069662 12.250977 17.939453 C 12.137044 17.809244 12.008463 17.669271 11.865234 17.519531 C 12.262369 16.966146 12.576497 16.365561 12.807617 15.717773 C 13.038736 15.069987 13.22591 14.414062 13.369141 13.75 L 10.273438 13.75 C 10.286458 13.645834 10.296224 13.541667 10.302734 13.4375 C 10.309244 13.333334 10.3125 13.229167 10.3125 13.125 C 10.3125 13.020834 10.309244 12.916667 10.302734 12.8125 C 10.296224 12.708334 10.286458 12.604167 10.273438 12.5 L 13.583984 12.5 C 13.636067 12.083334 13.676758 11.668295 13.706055 11.254883 C 13.735352 10.841472 13.75 10.423178 13.75 10 C 13.75 9.576823 13.735352 9.158529 13.706055 8.745117 C 13.676758 8.331706 13.636067 7.916667 13.583984 7.5 L 6.416016 7.5 L 6.40625 7.548828 C 6.087239 7.425131 5.755208 7.333984 5.410156 7.275391 C 5.065104 7.216797 4.720052 7.1875 4.375 7.1875 C 3.899739 7.1875 3.450521 7.239584 3.027344 7.34375 C 2.994792 7.350261 2.952474 7.361654 2.900391 7.37793 C 2.848307 7.394207 2.792969 7.41211 2.734375 7.431641 C 2.675781 7.451173 2.62207 7.467449 2.573242 7.480469 C 2.524414 7.49349 2.490234 7.5 2.470703 7.5 C 2.41862 7.506511 2.369792 7.509766 2.324219 7.509766 C 2.278646 7.509766 2.233073 7.509766 2.1875 7.509766 C 2.089844 7.509766 1.992188 7.508139 1.894531 7.504883 C 1.796875 7.501628 1.702474 7.5 1.611328 7.5 L 1.494141 7.929688 C 0.947266 8.235678 0.465495 8.613281 0.048828 9.0625 C 0.126953 8.209637 0.307617 7.392579 0.59082 6.611328 C 0.874023 5.830079 1.241862 5.104168 1.694336 4.433594 C 2.14681 3.763021 2.670898 3.154297 3.266602 2.607422 C 3.862304 2.060547 4.516602 1.593426 5.229492 1.206055 C 5.942382 0.818686 6.700846 0.520834 7.504883 0.3125 C 8.308919 0.104168 9.140625 0 10 0 C 10.917969 0 11.803385 0.118816 12.65625 0.356445 C 13.509114 0.594076 14.306641 0.929363 15.048828 1.362305 C 15.791016 1.795248 16.466471 2.316082 17.075195 2.924805 C 17.683918 3.533529 18.204752 4.208984 18.637695 4.951172 C 19.070637 5.693359 19.405924 6.490886 19.643555 7.34375 C 19.881184 8.196615 20 9.082031 20 10 Z M 13.369141 6.25 C 13.317057 5.996094 13.242188 5.696615 13.144531 5.351562 C 13.046875 5.006511 12.926432 4.648438 12.783203 4.277344 C 12.639973 3.90625 12.475585 3.540039 12.290039 3.178711 C 12.104491 2.817383 11.896158 2.49349 11.665039 2.207031 C 11.433919 1.920574 11.178385 1.689453 10.898438 1.513672 C 10.618489 1.337891 10.31901 1.25 10 1.25 C 9.674479 1.25 9.373372 1.337891 9.09668 1.513672 C 8.819986 1.689453 8.56608 1.920574 8.334961 2.207031 C 8.103841 2.49349 7.895508 2.817383 7.709961 3.178711 C 7.524414 3.540039 7.360026 3.90625 7.216797 4.277344 C 7.073567 4.648438 6.953125 5.006511 6.855469 5.351562 C 6.757812 5.696615 6.682942 5.996094 6.630859 6.25 Z M 5.351562 6.25 C 5.423177 5.872396 5.514323 5.481771 5.625 5.078125 C 5.735677 4.67448 5.864258 4.277345 6.010742 3.886719 C 6.157227 3.496094 6.32487 3.116863 6.513672 2.749023 C 6.702474 2.381186 6.914062 2.041016 7.148438 1.728516 C 6.588542 1.917318 6.057942 2.159832 5.556641 2.456055 C 5.055338 2.752279 4.589844 3.092449 4.160156 3.476562 C 3.730469 3.860678 3.341471 4.285482 2.993164 4.750977 C 2.644857 5.216472 2.34375 5.716146 2.089844 6.25 Z M 17.910156 6.25 C 17.66276 5.722656 17.363281 5.226237 17.011719 4.760742 C 16.660156 4.295248 16.267902 3.868816 15.834961 3.481445 C 15.402018 3.094076 14.934896 2.752279 14.433594 2.456055 C 13.932291 2.159832 13.408202 1.917318 12.861328 1.728516 C 13.336588 2.386068 13.71582 3.107098 13.999023 3.891602 C 14.282227 4.676107 14.498697 5.46224 14.648438 6.25 Z M 18.388672 12.5 C 18.629557 11.699219 18.75 10.865886 18.75 10 C 18.75 9.134115 18.629557 8.300781 18.388672 7.5 L 14.84375 7.5 C 14.902344 7.916667 14.943033 8.331706 14.96582 8.745117 C 14.988605 9.158529 14.999999 9.576823 15 10 C 14.999999 10.423178 14.988605 10.841472 14.96582 11.254883 C 14.943033 11.668295 14.902344 12.083334 14.84375 12.5 Z M 11.25 19.375 C 11.25 19.544271 11.18815 19.690756 11.064453 19.814453 C 10.940755 19.93815 10.794271 20 10.625 20 C 10.455729 20 10.309244 19.93815 10.185547 19.814453 L 6.992188 16.621094 C 6.595052 16.927084 6.171875 17.150064 5.722656 17.290039 C 5.273438 17.430014 4.798177 17.5 4.296875 17.5 C 3.704427 17.5 3.147786 17.381186 2.626953 17.143555 C 2.10612 16.905924 1.650391 16.586914 1.259766 16.186523 C 0.869141 15.786133 0.561523 15.320639 0.336914 14.790039 C 0.112305 14.25944 0 13.704428 0 13.125 C 0 12.526042 0.11556 11.961264 0.34668 11.430664 C 0.577799 10.900065 0.891927 10.436198 1.289062 10.039062 C 1.686198 9.641928 2.150065 9.3278 2.680664 9.09668 C 3.211263 8.865561 3.776042 8.75 4.375 8.75 C 4.954427 8.75 5.50944 8.862305 6.040039 9.086914 C 6.570638 9.311523 7.036133 9.619141 7.436523 10.009766 C 7.836914 10.400391 8.155924 10.85612 8.393555 11.376953 C 8.631185 11.897787 8.75 12.454428 8.75 13.046875 C 8.75 13.548178 8.680013 14.023438 8.540039 14.472656 C 8.400064 14.921875 8.177083 15.345053 7.871094 15.742188 L 11.064453 18.935547 C 11.18815 19.059244 11.25 19.205729 11.25 19.375 Z M 4.375 16.25 L 4.443359 16.25 C 4.866536 16.25 5.263672 16.165365 5.634766 15.996094 C 6.005859 15.826823 6.329752 15.598959 6.606445 15.3125 C 6.883138 15.026042 7.101237 14.694011 7.260742 14.316406 C 7.420247 13.938803 7.5 13.541667 7.5 13.125 C 7.5 12.688803 7.418619 12.281901 7.255859 11.904297 C 7.093099 11.526693 6.870117 11.196289 6.586914 10.913086 C 6.303711 10.629883 5.973307 10.406901 5.595703 10.244141 C 5.218099 10.081381 4.811198 10 4.375 10 C 3.938802 10 3.531901 10.081381 3.154297 10.244141 C 2.776693 10.406901 2.446289 10.629883 2.163086 10.913086 C 1.879883 11.196289 1.656901 11.526693 1.494141 11.904297 C 1.33138 12.281901 1.25 12.688803 1.25 13.125 C 1.25 13.561198 1.33138 13.9681 1.494141 14.345703 C 1.656901 14.723308 1.879883 15.053711 2.163086 15.336914 C 2.446289 15.620117 2.776693 15.8431 3.154297 16.005859 C 3.531901 16.168621 3.938802 16.25 4.375 16.25 Z M 17.910156 13.75 L 14.648438 13.75 C 14.570312 14.134115 14.477538 14.526367 14.370117 14.926758 C 14.262694 15.327148 14.135741 15.722656 13.989258 16.113281 C 13.842772 16.503906 13.675129 16.88151 13.486328 17.246094 C 13.297525 17.610678 13.085938 17.952475 12.851562 18.271484 C 13.404947 18.076172 13.932291 17.832031 14.433594 17.539062 C 14.934896 17.246094 15.400391 16.907553 15.830078 16.523438 C 16.259766 16.139322 16.650391 15.714519 17.001953 15.249023 C 17.353516 14.783529 17.65625 14.283854 17.910156 13.75 Z "
|
|
Visibility="{x:Bind ViewModel.AreSearchResultsOnline, Mode=OneWay}" />
|
|
</Viewbox>
|
|
</Grid>
|
|
|
|
<!-- Sync + Multi Select + Filtering -->
|
|
<StackPanel
|
|
Grid.Row="1"
|
|
Grid.Column="2"
|
|
Orientation="Horizontal">
|
|
<Button
|
|
Width="36"
|
|
Height="36"
|
|
Background="Transparent"
|
|
BorderThickness="0"
|
|
Command="{x:Bind ViewModel.SyncFolderCommand}"
|
|
IsEnabled="{x:Bind ViewModel.CanSynchronize, Mode=OneWay}"
|
|
ToolTipService.ToolTip="{x:Bind domain:Translator.Buttons_Sync}">
|
|
<coreControls:WinoFontIcon FontSize="14" Icon="Sync" />
|
|
</Button>
|
|
<ToggleButton
|
|
x:Name="SelectionModeToggle"
|
|
Width="36"
|
|
Height="36"
|
|
Background="Transparent"
|
|
BorderThickness="0"
|
|
Checked="SelectionModeToggleChecked"
|
|
IsChecked="{x:Bind ViewModel.IsMultiSelectionModeEnabled, Mode=TwoWay}"
|
|
ToolTipService.ToolTip="{x:Bind domain:Translator.Buttons_Multiselect}"
|
|
Unchecked="SelectionModeToggleUnchecked">
|
|
<coreControls:WinoFontIcon FontSize="16" Icon="MultiSelect" />
|
|
</ToggleButton>
|
|
<muxc:DropDownButton
|
|
Height="36"
|
|
Background="Transparent"
|
|
BorderThickness="0"
|
|
Content="{x:Bind ViewModel.SelectedFilterOption.Title, Mode=OneWay}"
|
|
ToolTipService.ToolTip="Filter">
|
|
<muxc:DropDownButton.Flyout>
|
|
<menuflyouts:FilterMenuFlyout
|
|
x:Name="FilterMenuFlyout"
|
|
AreOpenCloseAnimationsEnabled="True"
|
|
FilterOptions="{x:Bind ViewModel.FilterOptions, Mode=OneTime}"
|
|
Placement="Bottom"
|
|
SelectedFilterChangedCommand="{x:Bind ViewModel.SelectedFilterChangedCommand}"
|
|
SelectedFilterOption="{x:Bind ViewModel.SelectedFilterOption, Mode=TwoWay}"
|
|
SelectedSortingOption="{x:Bind ViewModel.SelectedSortingOption, Mode=TwoWay}"
|
|
SelectedSortingOptionChangedCommand="{x:Bind ViewModel.SelectedSortingChangedCommand}"
|
|
SortingOptions="{x:Bind ViewModel.SortingOptions, Mode=OneTime}" />
|
|
</muxc:DropDownButton.Flyout>
|
|
</muxc:DropDownButton>
|
|
</StackPanel>
|
|
|
|
<muxc:InfoBar
|
|
Title="{x:Bind domain:Translator.InfoBarTitle_SynchronizationDisabledFolder}"
|
|
Grid.Row="0"
|
|
Grid.ColumnSpan="3"
|
|
IsClosable="True"
|
|
IsOpen="{x:Bind ViewModel.IsFolderSynchronizationEnabled, Converter={StaticResource ReverseBooleanConverter}, Mode=OneWay}"
|
|
Message="{x:Bind domain:Translator.InfoBarMessage_SynchronizationDisabledFolder}"
|
|
Severity="Informational">
|
|
<muxc:InfoBar.ActionButton>
|
|
<Button Command="{x:Bind ViewModel.EnableFolderSynchronizationCommand}" Content="Enable" />
|
|
</muxc:InfoBar.ActionButton>
|
|
</muxc:InfoBar>
|
|
</Grid>
|
|
|
|
<!-- No items createria -->
|
|
<StackPanel
|
|
x:Name="NoItemsPanel"
|
|
Grid.Row="2"
|
|
Grid.RowSpan="3"
|
|
HorizontalAlignment="Stretch"
|
|
VerticalAlignment="Center"
|
|
Spacing="10">
|
|
|
|
<Viewbox
|
|
Width="48"
|
|
Opacity="0.4"
|
|
Visibility="{x:Bind ViewModel.IsEmpty, Mode=OneWay}">
|
|
<Path Data="M252,960C227,960 203.083,954.917 180.25,944.75C157.417,934.583 137.417,920.917 120.25,903.75C103.083,886.583 89.4167,866.583 79.25,843.75C69.0833,820.917 64,797 64,772L64,252C64,227 69.0833,203.083 79.25,180.25C89.4167,157.417 103.083,137.417 120.25,120.25C137.417,103.083 157.417,89.4167 180.25,79.25C203.083,69.0834 227,64.0001 252,64L772,64C797,64.0001 820.917,69.0834 843.75,79.25C866.583,89.4167 886.583,103.083 903.75,120.25C920.917,137.417 934.583,157.417 944.75,180.25C954.917,203.083 960,227 960,252L960,772C960,797 954.917,820.917 944.75,843.75C934.583,866.583 920.917,886.583 903.75,903.75C886.583,920.917 866.583,934.583 843.75,944.75C820.917,954.917 797,960 772,960ZM770.5,896C787.167,896 803.083,892.583 818.25,885.75C833.417,878.917 846.75,869.75 858.25,858.25C869.75,846.75 878.917,833.417 885.75,818.25C892.583,803.083 896,787.167 896,770.5L896,253.5C896,236.833 892.583,220.917 885.75,205.75C878.917,190.583 869.75,177.25 858.25,165.75C846.75,154.25 833.417,145.083 818.25,138.25C803.083,131.417 787.167,128 770.5,128L253.5,128C236.833,128 220.917,131.417 205.75,138.25C190.583,145.083 177.25,154.25 165.75,165.75C154.25,177.25 145.083,190.583 138.25,205.75C131.417,220.917 128,236.833 128,253.5L128,770.5C128,787.167 131.417,803.083 138.25,818.25C145.083,833.417 154.25,846.75 165.75,858.25C177.25,869.75 190.583,878.917 205.75,885.75C220.917,892.583 236.833,896 253.5,896ZM559,604.5C541.667,616.833 523.417,625.833 504.25,631.5C485.083,637.167 465,640 444,640C418,640 393.583,634.833 370.75,624.5C347.917,614.167 328,600.167 311,582.5C294,564.833 280.583,544.417 270.75,521.25C260.917,498.083 256,473.667 256,448C256,421.333 261,396.333 271,373C281,349.667 294.667,329.333 312,312C329.333,294.667 349.667,281 373,271C396.333,261 421.333,256 448,256C473.667,256 498.083,260.917 521.25,270.75C544.417,280.583 564.833,294 582.5,311C600.167,328 614.167,347.917 624.5,370.75C634.833,393.583 640,418 640,444C640,465 637.167,485.083 631.5,504.25C625.833,523.417 616.833,541.667 604.5,559L758.5,713.5C764.833,719.833 768,727.333 768,736C768,744.667 764.833,752.167 758.5,758.5C752.167,764.833 744.667,768 736,768C727.333,768 719.833,764.833 713.5,758.5ZM576,448L576,445.5C576,428.167 572.5,411.917 565.5,396.75C558.5,381.583 549.167,368.333 537.5,357C525.833,345.667 512.25,336.667 496.75,330C481.25,323.333 465,320 448,320C430.333,320 413.75,323.417 398.25,330.25C382.75,337.083 369.25,346.25 357.75,357.75C346.25,369.25 337.083,382.833 330.25,398.5C323.417,414.167 320,430.667 320,448C320,465.667 323.417,482.25 330.25,497.75C337.083,513.25 346.25,526.75 357.75,538.25C369.25,549.75 382.75,558.917 398.25,565.75C413.75,572.583 430.333,576 448,576C465.333,576 481.833,572.583 497.5,565.75C513.167,558.917 526.75,549.75 538.25,538.25C549.75,526.75 558.917,513.25 565.75,497.75C572.583,482.25 576,465.667 576,448Z" Fill="{ThemeResource InformationBrush}" />
|
|
</Viewbox>
|
|
|
|
<!--<TextBlock
|
|
HorizontalAlignment="Center"
|
|
FontSize="20"
|
|
FontWeight="ExtraLight"
|
|
Foreground="{ThemeResource InformationBrush}"
|
|
Opacity="0.4"
|
|
Text="{x:Bind domain:Translator.NoMessageCrieteria}"
|
|
Visibility="{x:Bind ViewModel.IsCriteriaFailed, Mode=OneWay}" />-->
|
|
|
|
<TextBlock
|
|
HorizontalAlignment="Center"
|
|
FontSize="20"
|
|
FontWeight="ExtraLight"
|
|
Foreground="{ThemeResource InformationBrush}"
|
|
Opacity="0.4"
|
|
Text="{x:Bind domain:Translator.NoMessageEmptyFolder}"
|
|
Visibility="{x:Bind ViewModel.IsFolderEmpty, Mode=OneWay}" />
|
|
|
|
<muxc:ProgressRing
|
|
x:Name="LoadingProgressIndicator"
|
|
Grid.Row="2"
|
|
HorizontalAlignment="Center"
|
|
VerticalAlignment="Center"
|
|
x:Load="{x:Bind ViewModel.IsProgressRing, Mode=OneWay}"
|
|
Canvas.ZIndex="2000" />
|
|
</StackPanel>
|
|
|
|
<!-- Mail Items -->
|
|
<Grid Grid.Row="2" Margin="-4,0">
|
|
<Grid.RowDefinitions>
|
|
<RowDefinition Height="*" />
|
|
<RowDefinition Height="Auto" />
|
|
</Grid.RowDefinitions>
|
|
<muxc:RefreshContainer RefreshRequested="PullToRefreshRequested" Visibility="{x:Bind ViewModel.IsEmpty, Converter={StaticResource ReverseBooleanToVisibilityConverter}, Mode=OneWay}">
|
|
<SemanticZoom x:Name="SemanticZoomContainer" CanChangeViews="{x:Bind ViewModel.PreferencesService.IsSemanticZoomEnabled, Mode=OneWay}">
|
|
<SemanticZoom.ZoomedInView>
|
|
<listview:WinoListView
|
|
x:Name="MailListView"
|
|
HorizontalAlignment="Stretch"
|
|
HorizontalContentAlignment="Stretch"
|
|
toolkitExt:ListViewExtensions.ItemContainerStretchDirection="Horizontal"
|
|
toolkitExt:ScrollViewerExtensions.VerticalScrollBarMargin="0"
|
|
ItemDeletedCommand="{x:Bind ViewModel.ExecuteMailOperationCommand}"
|
|
ItemTemplateSelector="{StaticResource MailItemDisplaySelector}"
|
|
ItemsSource="{x:Bind MailCollectionViewSource.View, Mode=OneWay}"
|
|
LoadMoreCommand="{x:Bind ViewModel.LoadMoreItemsCommand}"
|
|
ScrollViewer.VerticalScrollBarVisibility="Auto">
|
|
<ListView.ItemContainerTransitions>
|
|
<TransitionCollection>
|
|
<AddDeleteThemeTransition />
|
|
</TransitionCollection>
|
|
</ListView.ItemContainerTransitions>
|
|
<ListView.ItemsPanel>
|
|
<ItemsPanelTemplate>
|
|
<ItemsStackPanel Margin="8,0,12,0" AreStickyGroupHeadersEnabled="True" />
|
|
</ItemsPanelTemplate>
|
|
</ListView.ItemsPanel>
|
|
<ListView.Resources>
|
|
<ResourceDictionary>
|
|
<Style BasedOn="{StaticResource MailListHeaderStyle}" TargetType="ListViewHeaderItem" />
|
|
</ResourceDictionary>
|
|
</ListView.Resources>
|
|
<ListView.GroupStyle>
|
|
<GroupStyle HeaderTemplate="{StaticResource MailGroupHeaderDefaultTemplate}" HidesIfEmpty="True" />
|
|
</ListView.GroupStyle>
|
|
|
|
</listview:WinoListView>
|
|
</SemanticZoom.ZoomedInView>
|
|
<SemanticZoom.ZoomedOutView>
|
|
<ListView
|
|
x:Name="ZoomOutList"
|
|
x:Load="{x:Bind helpers:XamlHelpers.ReverseBoolConverter(SemanticZoomContainer.IsZoomedInViewActive), Mode=OneWay}"
|
|
ItemsSource="{x:Bind MailCollectionViewSource.View.CollectionGroups}">
|
|
<ListView.Resources>
|
|
<Style TargetType="ListViewItem">
|
|
<Setter Property="HorizontalContentAlignment" Value="Stretch" />
|
|
<Setter Property="VerticalContentAlignment" Value="Stretch" />
|
|
<Setter Property="Margin" Value="12" />
|
|
<Setter Property="Padding" Value="0" />
|
|
</Style>
|
|
</ListView.Resources>
|
|
<ListView.ItemTemplate>
|
|
<DataTemplate x:DataType="ICollectionViewGroup">
|
|
<Grid Background="{ThemeResource MailListHeaderBackgroundColor}" CornerRadius="6">
|
|
<TextBlock
|
|
Margin="12,0"
|
|
HorizontalAlignment="Center"
|
|
VerticalAlignment="Center"
|
|
FontWeight="SemiBold"
|
|
Text="{x:Bind helpers:XamlHelpers.GetMailGroupDateString(Group)}" />
|
|
</Grid>
|
|
</DataTemplate>
|
|
</ListView.ItemTemplate>
|
|
</ListView>
|
|
</SemanticZoom.ZoomedOutView>
|
|
</SemanticZoom>
|
|
</muxc:RefreshContainer>
|
|
|
|
<!-- Try online search panel. -->
|
|
<Grid Grid.Row="1" Visibility="{x:Bind ViewModel.IsOnlineSearchButtonVisible, Mode=OneWay}">
|
|
<Button
|
|
Margin="24"
|
|
HorizontalAlignment="Stretch"
|
|
HorizontalContentAlignment="Stretch"
|
|
VerticalContentAlignment="Stretch"
|
|
Command="{x:Bind ViewModel.PerformOnlineSearchCommand}">
|
|
<Grid>
|
|
<Grid.ColumnDefinitions>
|
|
<ColumnDefinition Width="Auto" />
|
|
<ColumnDefinition Width="*" />
|
|
</Grid.ColumnDefinitions>
|
|
|
|
<muxc:AnimatedIcon x:Name="SearchAnimatedIcon" Width="30">
|
|
<muxc:AnimatedIcon.Source>
|
|
<animatedvisuals:AnimatedFindVisualSource />
|
|
</muxc:AnimatedIcon.Source>
|
|
<muxc:AnimatedIcon.FallbackIconSource>
|
|
<muxc:SymbolIconSource Symbol="Find" />
|
|
</muxc:AnimatedIcon.FallbackIconSource>
|
|
</muxc:AnimatedIcon>
|
|
|
|
<Grid
|
|
Grid.Column="1"
|
|
HorizontalAlignment="Center"
|
|
VerticalAlignment="Center">
|
|
<Grid.RowDefinitions>
|
|
<RowDefinition Height="Auto" />
|
|
<RowDefinition Height="Auto" />
|
|
</Grid.RowDefinitions>
|
|
<TextBlock
|
|
VerticalAlignment="Center"
|
|
Text="{x:Bind domain:Translator.OnlineSearchTry_Line1}"
|
|
TextWrapping="Wrap" />
|
|
<TextBlock
|
|
Grid.Row="1"
|
|
HorizontalAlignment="Center"
|
|
VerticalAlignment="Center"
|
|
FontWeight="SemiBold"
|
|
Text="{x:Bind domain:Translator.OnlineSearchTry_Line2}"
|
|
TextWrapping="Wrap" />
|
|
</Grid>
|
|
|
|
</Grid>
|
|
</Button>
|
|
</Grid>
|
|
</Grid>
|
|
|
|
<!-- Update Info Bar -->
|
|
<coreControls:WinoInfoBar
|
|
Title="{x:Bind ViewModel.BarTitle, Mode=OneWay}"
|
|
Grid.Row="2"
|
|
Margin="0,0,0,5"
|
|
VerticalAlignment="Bottom"
|
|
AnimationType="SlideFromBottomToTop"
|
|
DismissInterval="2"
|
|
IsClosable="False"
|
|
IsOpen="{x:Bind ViewModel.IsBarOpen, Mode=TwoWay}"
|
|
Message="{x:Bind ViewModel.BarMessage, Mode=OneWay}"
|
|
Severity="{x:Bind helpers:XamlHelpers.InfoBarSeverityConverter(ViewModel.BarSeverity), Mode=OneWay}" />
|
|
|
|
</Grid>
|
|
</Border>
|
|
|
|
<toolkit:PropertySizer
|
|
x:Name="MailListSizer"
|
|
Grid.Column="1"
|
|
Width="16"
|
|
HorizontalAlignment="Left"
|
|
Binding="{x:Bind ViewModel.MailListLength, Mode=TwoWay}"
|
|
Canvas.ZIndex="20"
|
|
ManipulationCompleted="MailListSizerManipulationCompleted"
|
|
Maximum="{x:Bind ViewModel.MaxMailListLength, Mode=OneWay}"
|
|
Minimum="270"
|
|
Opacity="0" />
|
|
|
|
<Grid
|
|
x:Name="RenderingGrid"
|
|
Grid.Column="1"
|
|
Margin="7,0,0,0">
|
|
<!-- Mail Rendering Frame -->
|
|
<Frame x:Name="RenderingFrame" IsNavigationStackEnabled="False" />
|
|
|
|
<!-- No Mail Selected Message -->
|
|
<StackPanel
|
|
x:Name="NoMailSelectedPanel"
|
|
HorizontalAlignment="Center"
|
|
VerticalAlignment="Center"
|
|
Opacity="0.5"
|
|
Spacing="6"
|
|
Visibility="{x:Bind helpers:XamlHelpers.ReverseBoolToVisibilityConverter(ViewModel.ThemeService.IsCustomTheme)}">
|
|
|
|
<coreControls:WinoFontIcon FontSize="80" Icon="Mail" />
|
|
|
|
<TextBlock
|
|
HorizontalAlignment="Center"
|
|
FontSize="31"
|
|
Style="{StaticResource SubheaderTextBlockStyle}"
|
|
Text="{x:Bind ViewModel.SelectedMessageText, Mode=OneWay}" />
|
|
</StackPanel>
|
|
</Grid>
|
|
|
|
<VisualStateManager.VisualStateGroups>
|
|
<VisualStateGroup x:Name="LayoutStates">
|
|
<VisualState x:Name="BothPanelsNoMailSelected">
|
|
<VisualState.Setters>
|
|
<Setter Target="RenderingFrame.Visibility" Value="Collapsed" />
|
|
</VisualState.Setters>
|
|
</VisualState>
|
|
<VisualState x:Name="BothPanelsMailSelected">
|
|
<VisualState.Setters>
|
|
<Setter Target="NoMailSelectedPanel.Visibility" Value="Collapsed" />
|
|
</VisualState.Setters>
|
|
</VisualState>
|
|
<VisualState x:Name="NarrowMailList">
|
|
<VisualState.Setters>
|
|
<Setter Target="MailListContainer.(Grid.ColumnSpan)" Value="2" />
|
|
<Setter Target="MailListSizer.Visibility" Value="Collapsed" />
|
|
<Setter Target="RenderingGrid.Visibility" Value="Collapsed" />
|
|
</VisualState.Setters>
|
|
</VisualState>
|
|
<VisualState x:Name="NarrowRenderer">
|
|
<VisualState.Setters>
|
|
<Setter Target="RenderingGrid.(Grid.Column)" Value="0" />
|
|
<Setter Target="RenderingGrid.(Grid.ColumnSpan)" Value="2" />
|
|
<Setter Target="RenderingGrid.Margin" Value="0" />
|
|
<Setter Target="RenderingGrid.Visibility" Value="Visible" />
|
|
<Setter Target="NoMailSelectedPanel.Visibility" Value="Collapsed" />
|
|
<Setter Target="MailListSizer.Visibility" Value="Collapsed" />
|
|
<Setter Target="MailListContainer.Visibility" Value="Collapsed" />
|
|
</VisualState.Setters>
|
|
</VisualState>
|
|
</VisualStateGroup>
|
|
</VisualStateManager.VisualStateGroups>
|
|
</Grid>
|
|
</abstract:MailListPageAbstract>
|