feat: Update navigation and settings descriptions, enhance UI theme, and implement spell icon package download service

- Updated navigation item description in StatusForm for clarity.
- Added new item to the UI theme for customizable item foreground colors.
- Removed obsolete spell icon package building logic from the Python script.
- Updated documentation to reflect changes in spell icon handling and packaging.
- Introduced SpellIconPackageDownloadService for downloading and validating spell icon packages from GitHub.
This commit is contained in:
waynebian01
2026-08-29 01:39:47 +08:00
parent 698e19dd19
commit f7a7309085
23 changed files with 887 additions and 725 deletions

View File

@@ -164,6 +164,10 @@ internal sealed class ModuleDependencyService
if (!counters.HasConfigChanges && counters.MacrosAdded == 0)
{
result.Conflicts.AddRange(counters.Conflicts.Select(message => $"{module.Name}: {message}"));
if (counters.Conflicts.Count > 0)
{
result.ConflictedModuleIds.Add(module.Id);
}
return;
}
@@ -173,6 +177,10 @@ internal sealed class ModuleDependencyService
result.MacrosAdded += counters.MacrosAdded;
result.ChangedModules.Add(module.Name);
result.Conflicts.AddRange(counters.Conflicts.Select(message => $"{module.Name}: {message}"));
if (counters.Conflicts.Count > 0)
{
result.ConflictedModuleIds.Add(module.Id);
}
}
private static void ValidateSnapshot(ModuleDefinition module, ModuleDependencySnapshot snapshot)
@@ -1049,6 +1057,7 @@ internal sealed class ModuleDependencyImportResult
public int MacrosAdded { get; set; }
public List<string> ChangedModules { get; } = new();
public List<string> Conflicts { get; } = new();
public HashSet<string> ConflictedModuleIds { get; } = new(StringComparer.OrdinalIgnoreCase);
public List<RejectedModuleDependency> Rejected { get; } = new();
public bool HasChanges => ConfigAdded > 0 || ConfigUpdated > 0 || MacrosAdded > 0;
}