diff --git a/Wino.Core.UWP/Helpers/XamlHelpers.cs b/Wino.Core.UWP/Helpers/XamlHelpers.cs index c6a1e4a4..87c43cd7 100644 --- a/Wino.Core.UWP/Helpers/XamlHelpers.cs +++ b/Wino.Core.UWP/Helpers/XamlHelpers.cs @@ -71,7 +71,6 @@ namespace Wino.Helpers return prefer24HourTime ? localTime.ToString(TwentyFourHourTimeFormat) : localTime.ToString(TwelveHourTimeFormat); } } - public static string GetMailItemSubject(string subject) => string.IsNullOrWhiteSpace(subject) ? $"({Translator.MailItemNoSubject})" : subject; public static string GetCreationDateString(DateTime date, bool prefer24HourTime) { var localTime = date.ToLocalTime(); diff --git a/Wino.Mail.ViewModels/MailRenderingPageViewModel.cs b/Wino.Mail.ViewModels/MailRenderingPageViewModel.cs index 6922b56b..35080599 100644 --- a/Wino.Mail.ViewModels/MailRenderingPageViewModel.cs +++ b/Wino.Mail.ViewModels/MailRenderingPageViewModel.cs @@ -22,7 +22,6 @@ using Wino.Core.Domain.Models.MailItem; using Wino.Core.Domain.Models.Menus; using Wino.Core.Domain.Models.Navigation; using Wino.Core.Domain.Models.Reader; -using Wino.Core.Services; using Wino.Mail.ViewModels.Data; using Wino.Mail.ViewModels.Messages; using Wino.Messaging.Client.Mails; @@ -429,7 +428,7 @@ namespace Wino.Mail.ViewModels foreach (var item in bccAccountContacts) BccItems.Add(item); - Subject = message.Subject; + Subject = string.IsNullOrWhiteSpace(message.Subject) ? Translator.MailItemNoSubject : message.Subject; // TODO: FromName and FromAddress is probably not correct here for mail lists. FromAddress = message.From.Mailboxes.FirstOrDefault()?.Address ?? Translator.UnknownAddress; diff --git a/Wino.Mail/Controls/MailItemDisplayInformationControl.xaml b/Wino.Mail/Controls/MailItemDisplayInformationControl.xaml index f989f972..22d79a9e 100644 --- a/Wino.Mail/Controls/MailItemDisplayInformationControl.xaml +++ b/Wino.Mail/Controls/MailItemDisplayInformationControl.xaml @@ -190,11 +190,11 @@ + leftBackgroundVisual.Size = e.NewSize.ToVector2(); } + private static void OnMailItemChanged(DependencyObject obj, DependencyPropertyChangedEventArgs args) + { + if (obj is MailItemDisplayInformationControl control) + { + control.UpdateInformation(); + } + } + + private void UpdateInformation() + { + if (MailItem == null) return; + + TitleText.Text = string.IsNullOrWhiteSpace(MailItem.Subject) ? Translator.MailItemNoSubject : MailItem.Subject; + } + private void ControlPointerEntered(object sender, Windows.UI.Xaml.Input.PointerRoutedEventArgs e) { if (IsHoverActionsEnabled) diff --git a/Wino.Mail/Views/MailRenderingPage.xaml b/Wino.Mail/Views/MailRenderingPage.xaml index 295b9bde..29674759 100644 --- a/Wino.Mail/Views/MailRenderingPage.xaml +++ b/Wino.Mail/Views/MailRenderingPage.xaml @@ -181,7 +181,7 @@ FontSize="18" FontWeight="SemiBold" IsTextSelectionEnabled="True" - Text="{x:Bind helpers:XamlHelpers.GetMailItemSubject( ViewModel.Subject), Mode=OneWay}" + Text="{x:Bind ViewModel.Subject, Mode=OneWay}" TextWrapping="Wrap" />