Merge pull request #1 from autorepobot/patch-1

Simplify font retrieval in GetFonts method
This commit is contained in:
JieXu 2026-05-28 05:00:21 +08:00 committed by GitHub
commit 77fcc39b51
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -161,29 +161,18 @@ public partial class OptionSettingWindow : WindowBase<OptionSettingViewModel>
private async Task<List<string>> GetFonts() private async Task<List<string>> GetFonts()
{ {
await Task.CompletedTask;
var lstFonts = new List<string>(); var lstFonts = new List<string>();
try try
{ {
if (Utils.IsWindows()) var lst = Avalonia.Media.FontManager.Current.SystemFonts
{ .Select(t => t.Name)
return lstFonts; .Where(t => t.IsNotEmpty())
} .Distinct(StringComparer.OrdinalIgnoreCase)
else if (Utils.IsNonWindows()) .OrderBy(t => t)
{ .ToList();
var result = await Utils.GetLinuxFontFamily("zh"); return lst;
if (result.IsNullOrEmpty())
{
return lstFonts;
}
var lst = result.Split(Environment.NewLine)
.Where(t => t.IsNotEmpty())
.ToList()
.Select(t => t.Split(",").FirstOrDefault() ?? "")
.OrderBy(t => t)
.ToList();
return lst;
}
} }
catch (Exception ex) catch (Exception ex)
{ {