Fixing an issue with thread creation and selected items notifications.
This commit is contained in:
@@ -1,4 +1,5 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using CommunityToolkit.Mvvm.ComponentModel;
|
||||
using Wino.Core.Domain.Entities;
|
||||
using Wino.Core.Domain.Models.MailItem;
|
||||
@@ -94,5 +95,7 @@ namespace Wino.Mail.ViewModels.Data
|
||||
OnPropertyChanged(nameof(Subject));
|
||||
OnPropertyChanged(nameof(PreviewText));
|
||||
}
|
||||
|
||||
public IEnumerable<Guid> GetContainingIds() => new[] { UniqueId };
|
||||
}
|
||||
}
|
||||
|
||||
@@ -12,18 +12,14 @@ namespace Wino.Mail.ViewModels.Data
|
||||
/// <summary>
|
||||
/// Thread mail item (multiple IMailItem) view model representation.
|
||||
/// </summary>
|
||||
public class ThreadMailItemViewModel : ObservableObject, IMailItemThread, IComparable<string>, IComparable<DateTime>
|
||||
public partial class ThreadMailItemViewModel : ObservableObject, IMailItemThread, IComparable<string>, IComparable<DateTime>
|
||||
{
|
||||
public ObservableCollection<IMailItem> ThreadItems => ((IMailItemThread)_threadMailItem).ThreadItems;
|
||||
|
||||
private readonly ThreadMailItem _threadMailItem;
|
||||
|
||||
[ObservableProperty]
|
||||
private bool isThreadExpanded;
|
||||
public bool IsThreadExpanded
|
||||
{
|
||||
get => isThreadExpanded;
|
||||
set => SetProperty(ref isThreadExpanded, value);
|
||||
}
|
||||
|
||||
public ThreadMailItemViewModel(ThreadMailItem threadMailItem)
|
||||
{
|
||||
@@ -36,6 +32,8 @@ namespace Wino.Mail.ViewModels.Data
|
||||
}
|
||||
}
|
||||
|
||||
public ThreadMailItem GetThreadMailItem() => _threadMailItem;
|
||||
|
||||
public IEnumerable<MailCopy> GetMailCopies()
|
||||
=> ThreadItems.OfType<MailItemViewModel>().Select(a => a.MailCopy);
|
||||
|
||||
@@ -123,5 +121,7 @@ namespace Wino.Mail.ViewModels.Data
|
||||
|
||||
// Get single mail item view model out of the only item in thread items.
|
||||
public MailItemViewModel GetSingleItemViewModel() => ThreadItems.First() as MailItemViewModel;
|
||||
|
||||
public IEnumerable<Guid> GetContainingIds() => ((IMailItemThread)_threadMailItem).GetContainingIds();
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user