Ability to set composer default font (#287)

* Added ability to set Composer font

* Added missing translations and refactoring

* Remove unused methods

* Small fixes
This commit is contained in:
Tiktack
2024-07-18 20:04:11 +02:00
committed by GitHub
parent 76375c9471
commit cf2f0ec936
30 changed files with 424 additions and 316 deletions

View File

@@ -1,15 +0,0 @@
namespace Wino.Core.Domain.Enums
{
public enum ReaderFont
{
Arial,
TimesNewRoman,
Verdana,
Tahoma,
CourierNew,
Georgia,
TrebuchetMS,
Calibri,
Helvetica
}
}

View File

@@ -19,7 +19,7 @@
PersonalizationPage,
MessageListPage,
MailListPage,
ReadingPanePage,
ReadComposePanePage,
LanguageTimePage,
SettingOptionsPage,
}

View File

@@ -1,16 +1,16 @@
using System.Collections.Generic;
using Wino.Core.Domain.Enums;
using Wino.Core.Domain.Models.Reader;
namespace Wino.Core.Domain.Interfaces
{
/// <summary>
/// Service to access available fonts.
/// </summary>
public interface IFontService
{
List<ReaderFontModel> GetReaderFonts();
ReaderFontModel GetCurrentReaderFont();
int GetCurrentReaderFontSize();
void ChangeReaderFont(ReaderFont font);
void ChangeReaderFontSize(int size);
/// <summary>
/// Get available fonts. Default + installed system fonts.
/// Fonts initialized only once. To refresh fonts, restart the application.
/// </summary>
List<string> GetFonts();
}
}

View File

@@ -122,15 +122,25 @@ namespace Wino.Core.Domain.Interfaces
AppLanguage CurrentLanguage { get; set; }
/// <summary>
/// Setting: Display font for the mail reader. Not composer.
/// Setting: Display font for the mail reader.
/// </summary>
ReaderFont ReaderFont { get; set; }
string ReaderFont { get; set; }
/// <summary>
/// Setting: Font size for the mail reader. Not composer.
/// Setting: Font size for the mail reader.
/// </summary>
int ReaderFontSize { get; set; }
/// <summary>
/// Setting: Display font for the mail composer.
/// </summary>
string ComposerFont { get; set; }
/// <summary>
/// Setting: Font size for the mail composer.
/// </summary>
int ComposerFontSize { get; set; }
/// <summary>
/// Setting: Whether the navigation pane is opened on the last session or not.
/// </summary>

View File

@@ -1,6 +0,0 @@
using Wino.Core.Domain.Enums;
namespace Wino.Core.Domain.Models.Reader
{
public record ReaderFontModel(ReaderFont Font, string FontFamilyName);
}

View File

@@ -100,7 +100,7 @@
"EditorToolbarOption_Insert": "Insert",
"EditorToolbarOption_None": "None",
"EditorToolbarOption_Options": "Options",
"EditorTooltip_WebViewEditor": "Use web view editor",
"EditorTooltip_WebViewEditor": "Use web view editor",
"ElementTheme_Dark": "Dark mode",
"ElementTheme_Default": "Use system setting",
"ElementTheme_Light": "Light mode",
@@ -444,8 +444,10 @@
"SettingsPersonalization_Title": "Personalization",
"SettingsPrivacyPolicy_Description": "Review privacy policy.",
"SettingsPrivacyPolicy_Title": "Privacy Policy",
"SettingsReadingPane_Description": "Mail rendering options.",
"SettingsReadingPane_Title": "Reading Pane",
"SettingsReader_Title": "Reader",
"SettingsComposer_Title": "Composer",
"SettingsReadComposePane_Description": "Fonts, external content.",
"SettingsReadComposePane_Title": "Reader & Composer",
"SettingsReaderFont_Title": "Default Reader Font",
"SettingsReaderFontFamily_Description": "Change the default font family and font size for reading mails.",
"SettingsFontFamily_Title": "Font Family",

View File

@@ -2244,14 +2244,24 @@ namespace Wino.Core.Domain
public static string SettingsPrivacyPolicy_Title => Resources.GetTranslatedString(@"SettingsPrivacyPolicy_Title");
/// <summary>
/// Mail rendering options.
/// Reader
/// </summary>
public static string SettingsReadingPane_Description => Resources.GetTranslatedString(@"SettingsReadingPane_Description");
public static string SettingsReader_Title => Resources.GetTranslatedString(@"SettingsReader_Title");
/// <summary>
/// Reading Pane
/// Composer
/// </summary>
public static string SettingsReadingPane_Title => Resources.GetTranslatedString(@"SettingsReadingPane_Title");
public static string SettingsComposer_Title => Resources.GetTranslatedString(@"SettingsComposer_Title");
/// <summary>
/// Fonts, external content.
/// </summary>
public static string SettingsReadComposePane_Description => Resources.GetTranslatedString(@"SettingsReadComposePane_Description");
/// <summary>
/// Reader & Composer
/// </summary>
public static string SettingsReadComposePane_Title => Resources.GetTranslatedString(@"SettingsReadComposePane_Title");
/// <summary>
/// Default Reader Font