@@ -5,8 +5,7 @@ namespace Files.App.Actions
55{
66 internal sealed class ToggleSidebarAction : ObservableObject , IToggleAction
77 {
8- private readonly IAppearanceSettingsService AppearanceSettingsService = Ioc . Default . GetRequiredService < IAppearanceSettingsService > ( ) ;
9- private readonly ISidebarViewModel SidebarViewModel = Ioc . Default . GetRequiredService < ISidebarViewModel > ( ) ;
8+ private readonly ISidebarViewModel SidebarViewModel = Ioc . Default . GetRequiredService < SidebarViewModel > ( ) ;
109
1110 public string Label
1211 => "ToggleSidebar" . GetLocalizedResource ( ) ;
@@ -17,24 +16,27 @@ public string Description
1716 public HotKey HotKey
1817 => new ( Keys . S , KeyModifiers . CtrlAlt ) ;
1918
20- public bool IsOn
21- => AppearanceSettingsService . IsSidebarOpen ;
19+ public bool IsOn =>
20+ SidebarViewModel . SidebarDisplayMode is SidebarDisplayMode . Expanded
21+ ? true
22+ : false ;
2223
2324 public ToggleSidebarAction ( )
2425 {
25- AppearanceSettingsService . PropertyChanged += ViewModel_PropertyChanged ;
26+ SidebarViewModel . PropertyChanged += ViewModel_PropertyChanged ;
2627 }
2728
2829 public Task ExecuteAsync ( object ? parameter = null )
2930 {
30- AppearanceSettingsService . IsSidebarOpen = ! IsOn ;
31- SidebarViewModel . UpdateTabControlMargin ( ) ;
31+ SidebarViewModel . SidebarDisplayMode = IsOn
32+ ? SidebarDisplayMode . Expanded
33+ : SidebarDisplayMode . Compact ;
3234 return Task . CompletedTask ;
3335 }
3436
3537 private void ViewModel_PropertyChanged ( object ? sender , PropertyChangedEventArgs e )
3638 {
37- if ( e . PropertyName is nameof ( AppearanceSettingsService . IsSidebarOpen ) )
39+ if ( e . PropertyName is nameof ( SidebarViewModel . SidebarDisplayMode ) )
3840 OnPropertyChanged ( nameof ( IsOn ) ) ;
3941 }
4042 }
0 commit comments