From 90d6f5ba7c5601df017396dcdef07626d610e4ab Mon Sep 17 00:00:00 2001 From: Gness Erquint Date: Sat, 2 Nov 2024 04:57:29 +0300 Subject: [PATCH 01/15] Added a ToggleSidebar action, imitating 4af2d59 as a template. --- .../Actions/Show/ToggleSidebarAction.cs | 40 +++++++++++++++++++ .../Data/Commands/Manager/CommandCodes.cs | 1 + .../Data/Commands/Manager/CommandManager.cs | 2 + .../Data/Commands/Manager/ICommandManager.cs | 1 + src/Files.App/Strings/en-US/Resources.resw | 3 ++ 5 files changed, 47 insertions(+) create mode 100644 src/Files.App/Actions/Show/ToggleSidebarAction.cs diff --git a/src/Files.App/Actions/Show/ToggleSidebarAction.cs b/src/Files.App/Actions/Show/ToggleSidebarAction.cs new file mode 100644 index 000000000000..271b7618f79a --- /dev/null +++ b/src/Files.App/Actions/Show/ToggleSidebarAction.cs @@ -0,0 +1,40 @@ +// Copyright (c) 2024 Files Community +// Licensed under the MIT License. See the LICENSE. + +namespace Files.App.Actions +{ + internal sealed class ToggleSidebarAction : ObservableObject, IToggleAction + { + private IAppearanceSettingsService AppearanceSettingsService { get; } = Ioc.Default.GetRequiredService(); + + public string Label + => "ToggleSidebar".GetLocalizedResource(); + + public string Description + => "ToggleSidebar".GetLocalizedResource(); + + public HotKey HotKey + => new(Keys.S, KeyModifiers.CtrlAlt); + + public bool IsOn + => AppearanceSettingsService.IsSidebarOpen; + + public ToggleSidebarAction() + { + AppearanceSettingsService.PropertyChanged += ViewModel_PropertyChanged; + } + + public Task ExecuteAsync(object? parameter = null) + { + AppearanceSettingsService.IsSidebarOpen = !IsOn; + + return Task.CompletedTask; + } + + private void ViewModel_PropertyChanged(object? sender, PropertyChangedEventArgs e) + { + if (e.PropertyName is nameof(AppearanceSettingsService.IsSidebarOpen)) + OnPropertyChanged(nameof(IsOn)); + } + } +} diff --git a/src/Files.App/Data/Commands/Manager/CommandCodes.cs b/src/Files.App/Data/Commands/Manager/CommandCodes.cs index 42858fa1303a..638a998a6cad 100644 --- a/src/Files.App/Data/Commands/Manager/CommandCodes.cs +++ b/src/Files.App/Data/Commands/Manager/CommandCodes.cs @@ -26,6 +26,7 @@ public enum CommandCodes ToggleDetailsPane, ToggleInfoPane, ToggleToolbar, + ToggleSidebar, // File System CopyItem, diff --git a/src/Files.App/Data/Commands/Manager/CommandManager.cs b/src/Files.App/Data/Commands/Manager/CommandManager.cs index aba8781e33ca..27ec361df8a0 100644 --- a/src/Files.App/Data/Commands/Manager/CommandManager.cs +++ b/src/Files.App/Data/Commands/Manager/CommandManager.cs @@ -57,6 +57,7 @@ public IRichCommand this[HotKey hotKey] public IRichCommand ToggleDetailsPane => commands[CommandCodes.ToggleDetailsPane]; public IRichCommand ToggleInfoPane => commands[CommandCodes.ToggleInfoPane]; public IRichCommand ToggleToolbar => commands[CommandCodes.ToggleToolbar]; + public IRichCommand ToggleSidebar => commands[CommandCodes.ToggleSidebar]; public IRichCommand SelectAll => commands[CommandCodes.SelectAll]; public IRichCommand InvertSelection => commands[CommandCodes.InvertSelection]; public IRichCommand ClearSelection => commands[CommandCodes.ClearSelection]; @@ -253,6 +254,7 @@ public IEnumerator GetEnumerator() => [CommandCodes.ToggleDetailsPane] = new ToggleDetailsPaneAction(), [CommandCodes.ToggleInfoPane] = new ToggleInfoPaneAction(), [CommandCodes.ToggleToolbar] = new ToggleToolbarAction(), + [CommandCodes.ToggleSidebar] = new ToggleSidebarAction(), [CommandCodes.SelectAll] = new SelectAllAction(), [CommandCodes.InvertSelection] = new InvertSelectionAction(), [CommandCodes.ClearSelection] = new ClearSelectionAction(), diff --git a/src/Files.App/Data/Commands/Manager/ICommandManager.cs b/src/Files.App/Data/Commands/Manager/ICommandManager.cs index 03735eed1d38..42f8a36485a7 100644 --- a/src/Files.App/Data/Commands/Manager/ICommandManager.cs +++ b/src/Files.App/Data/Commands/Manager/ICommandManager.cs @@ -31,6 +31,7 @@ public interface ICommandManager : IEnumerable IRichCommand ToggleDetailsPane { get; } IRichCommand ToggleInfoPane { get; } IRichCommand ToggleToolbar { get; } + IRichCommand ToggleSidebar { get; } IRichCommand CopyItem { get; } IRichCommand CopyItemPath { get; } diff --git a/src/Files.App/Strings/en-US/Resources.resw b/src/Files.App/Strings/en-US/Resources.resw index 07de3cb82ab2..658671387f56 100644 --- a/src/Files.App/Strings/en-US/Resources.resw +++ b/src/Files.App/Strings/en-US/Resources.resw @@ -1091,6 +1091,9 @@ Toggle the Toolbar + + Toggle the Sidebar + No preview available From 54aea3bf339131518bf4bc0e8c8b21682941a95d Mon Sep 17 00:00:00 2001 From: Gness Erquint Date: Sat, 2 Nov 2024 06:25:48 +0300 Subject: [PATCH 02/15] Localization strings for ToggleSidebar action fixed. --- src/Files.App/Actions/Show/ToggleSidebarAction.cs | 2 +- src/Files.App/Strings/en-US/Resources.resw | 3 --- 2 files changed, 1 insertion(+), 4 deletions(-) diff --git a/src/Files.App/Actions/Show/ToggleSidebarAction.cs b/src/Files.App/Actions/Show/ToggleSidebarAction.cs index 271b7618f79a..58cfe3a453fe 100644 --- a/src/Files.App/Actions/Show/ToggleSidebarAction.cs +++ b/src/Files.App/Actions/Show/ToggleSidebarAction.cs @@ -11,7 +11,7 @@ public string Label => "ToggleSidebar".GetLocalizedResource(); public string Description - => "ToggleSidebar".GetLocalizedResource(); + => "ToggleSidebarDescription".GetLocalizedResource(); public HotKey HotKey => new(Keys.S, KeyModifiers.CtrlAlt); diff --git a/src/Files.App/Strings/en-US/Resources.resw b/src/Files.App/Strings/en-US/Resources.resw index 658671387f56..07de3cb82ab2 100644 --- a/src/Files.App/Strings/en-US/Resources.resw +++ b/src/Files.App/Strings/en-US/Resources.resw @@ -1091,9 +1091,6 @@ Toggle the Toolbar - - Toggle the Sidebar - No preview available From 7b14ee6ab3785d403ee73a7ca6cd78c1599a300e Mon Sep 17 00:00:00 2001 From: "Murad \"Gness Erquint\" Beybalaev" Date: Sat, 2 Nov 2024 08:14:05 +0300 Subject: [PATCH 03/15] Update src/Files.App/Actions/Show/ToggleSidebarAction.cs Co-authored-by: 0x5BFA <62196528+0x5bfa@users.noreply.github.com> --- src/Files.App/Actions/Show/ToggleSidebarAction.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Files.App/Actions/Show/ToggleSidebarAction.cs b/src/Files.App/Actions/Show/ToggleSidebarAction.cs index 58cfe3a453fe..e400392d37ad 100644 --- a/src/Files.App/Actions/Show/ToggleSidebarAction.cs +++ b/src/Files.App/Actions/Show/ToggleSidebarAction.cs @@ -3,7 +3,7 @@ namespace Files.App.Actions { - internal sealed class ToggleSidebarAction : ObservableObject, IToggleAction + internal sealed class ToggleSidebarAction : IToggleAction { private IAppearanceSettingsService AppearanceSettingsService { get; } = Ioc.Default.GetRequiredService(); From f2d33600c7f6486c3aff6164f88ed8ff6a5841fc Mon Sep 17 00:00:00 2001 From: "Murad \"Gness Erquint\" Beybalaev" Date: Sat, 2 Nov 2024 08:21:37 +0300 Subject: [PATCH 04/15] Update src/Files.App/Actions/Show/ToggleSidebarAction.cs Co-authored-by: 0x5BFA <62196528+0x5bfa@users.noreply.github.com> --- src/Files.App/Actions/Show/ToggleSidebarAction.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Files.App/Actions/Show/ToggleSidebarAction.cs b/src/Files.App/Actions/Show/ToggleSidebarAction.cs index e400392d37ad..2cbabff67bbd 100644 --- a/src/Files.App/Actions/Show/ToggleSidebarAction.cs +++ b/src/Files.App/Actions/Show/ToggleSidebarAction.cs @@ -5,7 +5,7 @@ namespace Files.App.Actions { internal sealed class ToggleSidebarAction : IToggleAction { - private IAppearanceSettingsService AppearanceSettingsService { get; } = Ioc.Default.GetRequiredService(); + private readonly IAppearanceSettingsService AppearanceSettingsService = Ioc.Default.GetRequiredService(); public string Label => "ToggleSidebar".GetLocalizedResource(); From ef98d2e841bdbd3154605aa1227576819b206b0f Mon Sep 17 00:00:00 2001 From: Gness Erquint Date: Sat, 2 Nov 2024 08:28:34 +0300 Subject: [PATCH 05/15] Revert "Update src/Files.App/Actions/Show/ToggleSidebarAction.cs" This reverts commit 7b14ee6ab3785d403ee73a7ca6cd78c1599a300e. --- src/Files.App/Actions/Show/ToggleSidebarAction.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Files.App/Actions/Show/ToggleSidebarAction.cs b/src/Files.App/Actions/Show/ToggleSidebarAction.cs index 2cbabff67bbd..36f4b70b1c11 100644 --- a/src/Files.App/Actions/Show/ToggleSidebarAction.cs +++ b/src/Files.App/Actions/Show/ToggleSidebarAction.cs @@ -3,7 +3,7 @@ namespace Files.App.Actions { - internal sealed class ToggleSidebarAction : IToggleAction + internal sealed class ToggleSidebarAction : ObservableObject, IToggleAction { private readonly IAppearanceSettingsService AppearanceSettingsService = Ioc.Default.GetRequiredService(); From 0ba4b8d69de73864d1a3898522331274809fda9c Mon Sep 17 00:00:00 2001 From: Gness Erquint Date: Mon, 4 Nov 2024 01:36:11 +0300 Subject: [PATCH 06/15] Update the SidebarViewModel after the change. --- src/Files.App/Actions/Show/ToggleSidebarAction.cs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/Files.App/Actions/Show/ToggleSidebarAction.cs b/src/Files.App/Actions/Show/ToggleSidebarAction.cs index 36f4b70b1c11..6ac8386db0cb 100644 --- a/src/Files.App/Actions/Show/ToggleSidebarAction.cs +++ b/src/Files.App/Actions/Show/ToggleSidebarAction.cs @@ -6,6 +6,7 @@ namespace Files.App.Actions internal sealed class ToggleSidebarAction : ObservableObject, IToggleAction { private readonly IAppearanceSettingsService AppearanceSettingsService = Ioc.Default.GetRequiredService(); + private readonly SidebarViewModel SidebarViewModel = Ioc.Default.GetRequiredService(); public string Label => "ToggleSidebar".GetLocalizedResource(); @@ -27,7 +28,7 @@ public ToggleSidebarAction() public Task ExecuteAsync(object? parameter = null) { AppearanceSettingsService.IsSidebarOpen = !IsOn; - + SidebarViewModel.UpdateTabControlMargin(); return Task.CompletedTask; } From 7ef4211b56b404f522f34bb0206da795204f2043 Mon Sep 17 00:00:00 2001 From: Gness Erquint Date: Mon, 4 Nov 2024 03:14:46 +0300 Subject: [PATCH 07/15] It had to be an interface. Just spotted the typo. --- src/Files.App/Actions/Show/ToggleSidebarAction.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Files.App/Actions/Show/ToggleSidebarAction.cs b/src/Files.App/Actions/Show/ToggleSidebarAction.cs index 6ac8386db0cb..e1789fd3e1ef 100644 --- a/src/Files.App/Actions/Show/ToggleSidebarAction.cs +++ b/src/Files.App/Actions/Show/ToggleSidebarAction.cs @@ -6,7 +6,7 @@ namespace Files.App.Actions internal sealed class ToggleSidebarAction : ObservableObject, IToggleAction { private readonly IAppearanceSettingsService AppearanceSettingsService = Ioc.Default.GetRequiredService(); - private readonly SidebarViewModel SidebarViewModel = Ioc.Default.GetRequiredService(); + private readonly ISidebarViewModel SidebarViewModel = Ioc.Default.GetRequiredService(); public string Label => "ToggleSidebar".GetLocalizedResource(); From 95c21898e656a12a2aef363491537d584ae9c1fd Mon Sep 17 00:00:00 2001 From: Gness Erquint Date: Mon, 4 Nov 2024 03:36:31 +0300 Subject: [PATCH 08/15] =?UTF-8?q?Forgot=20the=20type=E2=80=A6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Files.App/Actions/Show/ToggleSidebarAction.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Files.App/Actions/Show/ToggleSidebarAction.cs b/src/Files.App/Actions/Show/ToggleSidebarAction.cs index e1789fd3e1ef..fdd6ca54593b 100644 --- a/src/Files.App/Actions/Show/ToggleSidebarAction.cs +++ b/src/Files.App/Actions/Show/ToggleSidebarAction.cs @@ -6,7 +6,7 @@ namespace Files.App.Actions internal sealed class ToggleSidebarAction : ObservableObject, IToggleAction { private readonly IAppearanceSettingsService AppearanceSettingsService = Ioc.Default.GetRequiredService(); - private readonly ISidebarViewModel SidebarViewModel = Ioc.Default.GetRequiredService(); + private readonly ISidebarViewModel SidebarViewModel = Ioc.Default.GetRequiredService(); public string Label => "ToggleSidebar".GetLocalizedResource(); From 1c782a13ba471b2ca99ad856a8a5852fe26a838f Mon Sep 17 00:00:00 2001 From: "Murad \"Gness Erquint\" Beybalaev" Date: Mon, 4 Nov 2024 19:49:30 +0300 Subject: [PATCH 09/15] Apply suggestions from code review Based on `SidebarDisplayMode.Expanded`/`.Compact`. Co-authored-by: 0x5BFA <62196528+0x5bfa@users.noreply.github.com> --- .../Actions/Show/ToggleSidebarAction.cs | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/src/Files.App/Actions/Show/ToggleSidebarAction.cs b/src/Files.App/Actions/Show/ToggleSidebarAction.cs index fdd6ca54593b..f61c52afdbf4 100644 --- a/src/Files.App/Actions/Show/ToggleSidebarAction.cs +++ b/src/Files.App/Actions/Show/ToggleSidebarAction.cs @@ -5,8 +5,7 @@ namespace Files.App.Actions { internal sealed class ToggleSidebarAction : ObservableObject, IToggleAction { - private readonly IAppearanceSettingsService AppearanceSettingsService = Ioc.Default.GetRequiredService(); - private readonly ISidebarViewModel SidebarViewModel = Ioc.Default.GetRequiredService(); + private readonly ISidebarViewModel SidebarViewModel = Ioc.Default.GetRequiredService(); public string Label => "ToggleSidebar".GetLocalizedResource(); @@ -17,24 +16,27 @@ public string Description public HotKey HotKey => new(Keys.S, KeyModifiers.CtrlAlt); - public bool IsOn - => AppearanceSettingsService.IsSidebarOpen; + public bool IsOn => + SidebarViewModel.SidebarDisplayMode is SidebarDisplayMode.Expanded + ? true + : false; public ToggleSidebarAction() { - AppearanceSettingsService.PropertyChanged += ViewModel_PropertyChanged; + SidebarViewModel.PropertyChanged += ViewModel_PropertyChanged; } public Task ExecuteAsync(object? parameter = null) { - AppearanceSettingsService.IsSidebarOpen = !IsOn; - SidebarViewModel.UpdateTabControlMargin(); + SidebarViewModel.SidebarDisplayMode = IsOn + ? SidebarDisplayMode.Expanded + : SidebarDisplayMode.Compact; return Task.CompletedTask; } private void ViewModel_PropertyChanged(object? sender, PropertyChangedEventArgs e) { - if (e.PropertyName is nameof(AppearanceSettingsService.IsSidebarOpen)) + if (e.PropertyName is nameof(SidebarViewModel.SidebarDisplayMode)) OnPropertyChanged(nameof(IsOn)); } } From 1c006f49275dd62e9515624560092a601cef87e8 Mon Sep 17 00:00:00 2001 From: "Murad \"Gness Erquint\" Beybalaev" Date: Mon, 4 Nov 2024 19:58:15 +0300 Subject: [PATCH 10/15] Update src/Files.App/Actions/Show/ToggleSidebarAction.cs MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ISidebarViewModel → SidebarViewModel. Co-authored-by: 0x5BFA <62196528+0x5bfa@users.noreply.github.com> --- src/Files.App/Actions/Show/ToggleSidebarAction.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Files.App/Actions/Show/ToggleSidebarAction.cs b/src/Files.App/Actions/Show/ToggleSidebarAction.cs index f61c52afdbf4..fde52660b96a 100644 --- a/src/Files.App/Actions/Show/ToggleSidebarAction.cs +++ b/src/Files.App/Actions/Show/ToggleSidebarAction.cs @@ -5,7 +5,7 @@ namespace Files.App.Actions { internal sealed class ToggleSidebarAction : ObservableObject, IToggleAction { - private readonly ISidebarViewModel SidebarViewModel = Ioc.Default.GetRequiredService(); + private readonly SidebarViewModel SidebarViewModel = Ioc.Default.GetRequiredService(); public string Label => "ToggleSidebar".GetLocalizedResource(); From 80bb0beae0705ab760a6275890afa3e651d00b8d Mon Sep 17 00:00:00 2001 From: "Murad \"Gness Erquint\" Beybalaev" Date: Mon, 4 Nov 2024 20:32:46 +0300 Subject: [PATCH 11/15] Update src/Files.App/Actions/Show/ToggleSidebarAction.cs Co-authored-by: 0x5BFA <62196528+0x5bfa@users.noreply.github.com> --- src/Files.App/Actions/Show/ToggleSidebarAction.cs | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/Files.App/Actions/Show/ToggleSidebarAction.cs b/src/Files.App/Actions/Show/ToggleSidebarAction.cs index fde52660b96a..22d5c044ab0c 100644 --- a/src/Files.App/Actions/Show/ToggleSidebarAction.cs +++ b/src/Files.App/Actions/Show/ToggleSidebarAction.cs @@ -1,6 +1,8 @@ // Copyright (c) 2024 Files Community // Licensed under the MIT License. See the LICENSE. +using Files.App.UserControls.Sidebar; + namespace Files.App.Actions { internal sealed class ToggleSidebarAction : ObservableObject, IToggleAction From 82f0d936b8e1ca9b65090cf6e79b3c8a9950c66d Mon Sep 17 00:00:00 2001 From: "Murad \"Gness Erquint\" Beybalaev" Date: Mon, 4 Nov 2024 20:49:56 +0300 Subject: [PATCH 12/15] Update src/Files.App/Actions/Show/ToggleSidebarAction.cs !IsOn Co-authored-by: 0x5BFA <62196528+0x5bfa@users.noreply.github.com> --- src/Files.App/Actions/Show/ToggleSidebarAction.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Files.App/Actions/Show/ToggleSidebarAction.cs b/src/Files.App/Actions/Show/ToggleSidebarAction.cs index 22d5c044ab0c..a473e375ba7b 100644 --- a/src/Files.App/Actions/Show/ToggleSidebarAction.cs +++ b/src/Files.App/Actions/Show/ToggleSidebarAction.cs @@ -30,7 +30,7 @@ public ToggleSidebarAction() public Task ExecuteAsync(object? parameter = null) { - SidebarViewModel.SidebarDisplayMode = IsOn + SidebarViewModel.SidebarDisplayMode = !IsOn ? SidebarDisplayMode.Expanded : SidebarDisplayMode.Compact; return Task.CompletedTask; From 2450492116150468dbbc2ddee1f8defeedb5eb4c Mon Sep 17 00:00:00 2001 From: Gness Erquint Date: Mon, 4 Nov 2024 22:18:32 +0300 Subject: [PATCH 13/15] Revert to ef98d2e841bdbd3154605aa1227576819b206b0f. --- .../Actions/Show/ToggleSidebarAction.cs | 21 +++++++------------ 1 file changed, 8 insertions(+), 13 deletions(-) diff --git a/src/Files.App/Actions/Show/ToggleSidebarAction.cs b/src/Files.App/Actions/Show/ToggleSidebarAction.cs index a473e375ba7b..e400392d37ad 100644 --- a/src/Files.App/Actions/Show/ToggleSidebarAction.cs +++ b/src/Files.App/Actions/Show/ToggleSidebarAction.cs @@ -1,13 +1,11 @@ // Copyright (c) 2024 Files Community // Licensed under the MIT License. See the LICENSE. -using Files.App.UserControls.Sidebar; - namespace Files.App.Actions { - internal sealed class ToggleSidebarAction : ObservableObject, IToggleAction + internal sealed class ToggleSidebarAction : IToggleAction { - private readonly SidebarViewModel SidebarViewModel = Ioc.Default.GetRequiredService(); + private IAppearanceSettingsService AppearanceSettingsService { get; } = Ioc.Default.GetRequiredService(); public string Label => "ToggleSidebar".GetLocalizedResource(); @@ -18,27 +16,24 @@ public string Description public HotKey HotKey => new(Keys.S, KeyModifiers.CtrlAlt); - public bool IsOn => - SidebarViewModel.SidebarDisplayMode is SidebarDisplayMode.Expanded - ? true - : false; + public bool IsOn + => AppearanceSettingsService.IsSidebarOpen; public ToggleSidebarAction() { - SidebarViewModel.PropertyChanged += ViewModel_PropertyChanged; + AppearanceSettingsService.PropertyChanged += ViewModel_PropertyChanged; } public Task ExecuteAsync(object? parameter = null) { - SidebarViewModel.SidebarDisplayMode = !IsOn - ? SidebarDisplayMode.Expanded - : SidebarDisplayMode.Compact; + AppearanceSettingsService.IsSidebarOpen = !IsOn; + return Task.CompletedTask; } private void ViewModel_PropertyChanged(object? sender, PropertyChangedEventArgs e) { - if (e.PropertyName is nameof(SidebarViewModel.SidebarDisplayMode)) + if (e.PropertyName is nameof(AppearanceSettingsService.IsSidebarOpen)) OnPropertyChanged(nameof(IsOn)); } } From 10bfad69754d036262a21ddb690af90acaea502c Mon Sep 17 00:00:00 2001 From: Gness Erquint Date: Mon, 4 Nov 2024 22:19:06 +0300 Subject: [PATCH 14/15] Gonna try referencing a method directly. --- src/Files.App/Actions/Show/ToggleSidebarAction.cs | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src/Files.App/Actions/Show/ToggleSidebarAction.cs b/src/Files.App/Actions/Show/ToggleSidebarAction.cs index e400392d37ad..2aba12aa21e0 100644 --- a/src/Files.App/Actions/Show/ToggleSidebarAction.cs +++ b/src/Files.App/Actions/Show/ToggleSidebarAction.cs @@ -3,9 +3,9 @@ namespace Files.App.Actions { - internal sealed class ToggleSidebarAction : IToggleAction + internal sealed class ToggleSidebarAction : ObservableObject, IToggleAction { - private IAppearanceSettingsService AppearanceSettingsService { get; } = Ioc.Default.GetRequiredService(); + // private readonly IAppearanceSettingsService AppearanceSettingsService = Ioc.Default.GetRequiredService(); public string Label => "ToggleSidebar".GetLocalizedResource(); @@ -26,8 +26,9 @@ public ToggleSidebarAction() public Task ExecuteAsync(object? parameter = null) { - AppearanceSettingsService.IsSidebarOpen = !IsOn; - + // AppearanceSettingsService.IsSidebarOpen = !IsOn; + Files.App.ViewModels.UserControls.IsSidebarOpen.set(!IsOn); + // Let's try this with as few abstractions as possible. return Task.CompletedTask; } From b02f2bcad82d6706a7d3a1231eab9bc1b4f77b2c Mon Sep 17 00:00:00 2001 From: Gness Erquint Date: Tue, 5 Nov 2024 00:08:34 +0300 Subject: [PATCH 15/15] Revert that hack attempt accidentally pointing at a static method. Need to find the instance reference. --- src/Files.App/Actions/Show/ToggleSidebarAction.cs | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/src/Files.App/Actions/Show/ToggleSidebarAction.cs b/src/Files.App/Actions/Show/ToggleSidebarAction.cs index 2aba12aa21e0..e400392d37ad 100644 --- a/src/Files.App/Actions/Show/ToggleSidebarAction.cs +++ b/src/Files.App/Actions/Show/ToggleSidebarAction.cs @@ -3,9 +3,9 @@ namespace Files.App.Actions { - internal sealed class ToggleSidebarAction : ObservableObject, IToggleAction + internal sealed class ToggleSidebarAction : IToggleAction { - // private readonly IAppearanceSettingsService AppearanceSettingsService = Ioc.Default.GetRequiredService(); + private IAppearanceSettingsService AppearanceSettingsService { get; } = Ioc.Default.GetRequiredService(); public string Label => "ToggleSidebar".GetLocalizedResource(); @@ -26,9 +26,8 @@ public ToggleSidebarAction() public Task ExecuteAsync(object? parameter = null) { - // AppearanceSettingsService.IsSidebarOpen = !IsOn; - Files.App.ViewModels.UserControls.IsSidebarOpen.set(!IsOn); - // Let's try this with as few abstractions as possible. + AppearanceSettingsService.IsSidebarOpen = !IsOn; + return Task.CompletedTask; }