Added filter option has files

This commit is contained in:
Aleh Khantsevich
2024-05-05 17:01:40 +02:00
parent 80ec12740a
commit 74cdf09ebc
7 changed files with 27 additions and 23 deletions

View File

@@ -5,6 +5,7 @@
All,
Unread,
Flagged,
Mentions
Mentions,
Files
}
}

View File

@@ -121,6 +121,7 @@
"FilteringOption_All": "All",
"FilteringOption_Flagged": "Flagged",
"FilteringOption_Unread": "Unread",
"FilteringOption_Files": "Has files",
"Focused": "Focused",
"FolderOperation_CreateSubFolder": "Create sub folder",
"FolderOperation_Delete": "Delete",

View File

@@ -628,6 +628,11 @@ namespace Wino.Core.Domain
/// </summary>
public static string FilteringOption_Unread => Resources.GetTranslatedString(@"FilteringOption_Unread");
/// <summary>
/// Has files
/// </summary>
public static string FilteringOption_Files => Resources.GetTranslatedString(@"FilteringOption_Files");
/// <summary>
/// Focused
/// </summary>

View File

@@ -156,6 +156,9 @@ namespace Wino.Core.Services
case FilterOptionType.Flagged:
query.Where("MailCopy.IsFlagged", true);
break;
case FilterOptionType.Files:
query.Where("MailCopy.HasAttachments", true);
break;
}
if (options.IsFocusedOnly != null)

View File

@@ -88,7 +88,8 @@ namespace Wino.Mail.ViewModels
[
new (Translator.FilteringOption_All, FilterOptionType.All),
new (Translator.FilteringOption_Unread, FilterOptionType.Unread),
new (Translator.FilteringOption_Flagged, FilterOptionType.Flagged)
new (Translator.FilteringOption_Flagged, FilterOptionType.Flagged),
new (Translator.FilteringOption_Files, FilterOptionType.Files)
];
private FolderPivotViewModel _selectedFolderPivot;
@@ -510,14 +511,12 @@ namespace Wino.Mail.ViewModels
private bool ShouldPreventItemAdd(IMailItem mailItem)
{
bool condition2 = false;
bool condition1 = mailItem.IsRead
bool condition = mailItem.IsRead
&& SelectedFilterOption.Type == FilterOptionType.Unread
|| !mailItem.IsFlagged
&& SelectedFilterOption.Type == FilterOptionType.Flagged;
return condition1 || condition2;
return condition;
}
protected override async void OnMailAdded(MailCopy addedMail)
@@ -546,7 +545,7 @@ namespace Wino.Mail.ViewModels
NotifyItemFoundState();
});
}
catch (Exception) { }
catch { }
finally
{
listManipulationSemepahore.Release();

View File

@@ -108,22 +108,16 @@ namespace Wino.Helpers
#region Wino Font Icon Transformation
public static WinoIconGlyph GetWinoIconGlyph(FilterOptionType type)
public static WinoIconGlyph GetWinoIconGlyph(FilterOptionType type) => type switch
{
switch (type)
{
case FilterOptionType.All:
return WinoIconGlyph.SpecialFolderCategory;
case FilterOptionType.Unread:
return WinoIconGlyph.MarkUnread;
case FilterOptionType.Flagged:
return WinoIconGlyph.Flag;
case FilterOptionType.Mentions:
return WinoIconGlyph.NewMail;
default:
return WinoIconGlyph.None;
}
}
FilterOptionType.All => WinoIconGlyph.SpecialFolderCategory,
FilterOptionType.Unread => WinoIconGlyph.MarkUnread,
FilterOptionType.Flagged => WinoIconGlyph.Flag,
FilterOptionType.Mentions => WinoIconGlyph.NewMail,
// TODO: Attachments icon should be added to WinoIcons.ttf.
FilterOptionType.Files => WinoIconGlyph.None,
_ => WinoIconGlyph.None,
};
public static WinoIconGlyph GetWinoIconGlyph(MailOperation operation)
{

View File

@@ -111,7 +111,8 @@
<!-- Name && Size -->
<Grid Grid.Column="1"
VerticalAlignment="Center"
Padding="0,0,5,0">
Padding="0,0,5,0"
MaxWidth="200">
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="*" />