From 1f721302ebb5ce91b4f181ff367b4e2c12d40930 Mon Sep 17 00:00:00 2001 From: TheDiamondMiner <73134219+TheDiamondMiner@users.noreply.github.com> Date: Tue, 28 Jun 2022 17:09:37 +0530 Subject: [PATCH] Fixed save-as not updating RecentFile (#92) --- src/HexManiac.Core/ViewModels/EditorViewModel.cs | 1 + src/HexManiac.Tests/GeneralAppTests.cs | 15 +++++++++++++++ 2 files changed, 16 insertions(+) diff --git a/src/HexManiac.Core/ViewModels/EditorViewModel.cs b/src/HexManiac.Core/ViewModels/EditorViewModel.cs index 030ab8b6..dcc76984 100644 --- a/src/HexManiac.Core/ViewModels/EditorViewModel.cs +++ b/src/HexManiac.Core/ViewModels/EditorViewModel.cs @@ -984,6 +984,7 @@ namespace HavenSoft.HexManiac.Core.ViewModels { fileSystem.RemoveListenerForFile(viewPort.FileName, viewPort.ConsiderReload); using (new StubDisposable { Dispose = () => fileSystem.AddListenerToFile(viewPort.FileName, viewPort.ConsiderReload) }) { innerCommand.Execute(fileSystem); + UpdateRecentFiles(viewPort.FileName); } } else { if (tab is ViewPort vp) vp.MaxDiffSegmentCount = this.maxDiffSegCount; diff --git a/src/HexManiac.Tests/GeneralAppTests.cs b/src/HexManiac.Tests/GeneralAppTests.cs index 29cf01d8..9a77fab1 100644 --- a/src/HexManiac.Tests/GeneralAppTests.cs +++ b/src/HexManiac.Tests/GeneralAppTests.cs @@ -631,6 +631,21 @@ ApplicationVersion = '''0.1.0''' Assert.IsType(viewPort.Model); } + [Fact] + public void Tab_SaveAs_UpdatesRecentFiles() { + var filename = "Test.gba"; + + editor.Add(new StubViewPort { + FileName = filename, + SaveAs = new StubCommand { + CanExecute = arg => true, + }, + }); + + editor.SaveAs.Execute(); + Assert.Contains(filename, editor.RecentFiles); + } + private StubTabContent CreateClosableTab() { var tab = new StubTabContent(); var close = new StubCommand { CanExecute = arg => true };