From 6d333e94f8388a16aa6f0a78777659e81a8a26dd Mon Sep 17 00:00:00 2001 From: InspectorIT Date: Fri, 27 Mar 2026 22:49:44 +0300 Subject: [PATCH] add Save method --- src/KeyKeeper/Services/RecentFilesService.cs | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/src/KeyKeeper/Services/RecentFilesService.cs b/src/KeyKeeper/Services/RecentFilesService.cs index 5b253db..183d0b2 100644 --- a/src/KeyKeeper/Services/RecentFilesService.cs +++ b/src/KeyKeeper/Services/RecentFilesService.cs @@ -11,6 +11,7 @@ namespace KeyKeeper.Services; internal class RecentFilesService : IRecentFilesService { private const string RecentFilesFilename = "recent-files.json"; + private static readonly JsonSerializerOptions jsonOptions = new() { WriteIndented = true }; // files are stored in reverse chronological order public ObservableCollection RecentFiles { get; } @@ -53,6 +54,18 @@ internal class RecentFilesService : IRecentFilesService } } + public void Save() + { + var directory = Path.GetDirectoryName(recentFilesPath); + if (!string.IsNullOrEmpty(directory)) + { + Directory.CreateDirectory(directory); + } + + var payload = JsonSerializer.Serialize(RecentFiles, jsonOptions); + File.WriteAllText(recentFilesPath, payload); + } + public void Remember(string filename) { RemoveIfExists(filename);