File tree Expand file tree Collapse file tree 5 files changed +46
-0
lines changed Expand file tree Collapse file tree 5 files changed +46
-0
lines changed Original file line number Diff line number Diff line change 1+ // Copyright (c) 2024 Files Community
2+ // Licensed under the MIT License. See the LICENSE.
3+
4+ namespace Files . App . Actions
5+ {
6+ internal sealed class ToggleDotFilesSettingAction : ObservableObject , IToggleAction
7+ {
8+ private readonly IFoldersSettingsService FoldersSettingsService ;
9+
10+ public string Label
11+ => "ShowDotFiles" . GetLocalizedResource ( ) ;
12+
13+ public string Description
14+ => "ToggleDotFilesSettingDescription" . GetLocalizedResource ( ) ;
15+
16+ public bool IsOn
17+ => FoldersSettingsService . ShowDotFiles ;
18+
19+ public ToggleDotFilesSettingAction ( )
20+ {
21+ FoldersSettingsService = Ioc . Default . GetRequiredService < IFoldersSettingsService > ( ) ;
22+
23+ FoldersSettingsService . PropertyChanged += Settings_PropertyChanged ;
24+ }
25+
26+ public Task ExecuteAsync ( object ? parameter = null )
27+ {
28+ FoldersSettingsService . ShowDotFiles = ! FoldersSettingsService . ShowDotFiles ;
29+
30+ return Task . CompletedTask ;
31+ }
32+
33+ private void Settings_PropertyChanged ( object ? sender , PropertyChangedEventArgs e )
34+ {
35+ if ( e . PropertyName is nameof ( IFoldersSettingsService . ShowDotFiles ) )
36+ OnPropertyChanged ( nameof ( IsOn ) ) ;
37+ }
38+ }
39+ }
Original file line number Diff line number Diff line change @@ -20,6 +20,7 @@ public enum CommandCodes
2020
2121 // Show
2222 ToggleShowHiddenItems ,
23+ ToggleDotFilesSetting ,
2324 ToggleShowFileExtensions ,
2425 TogglePreviewPane ,
2526 ToggleDetailsPane ,
Original file line number Diff line number Diff line change @@ -51,6 +51,7 @@ public IRichCommand this[HotKey hotKey]
5151 public IRichCommand Redo => commands [ CommandCodes . Redo ] ;
5252 public IRichCommand Undo => commands [ CommandCodes . Undo ] ;
5353 public IRichCommand ToggleShowHiddenItems => commands [ CommandCodes . ToggleShowHiddenItems ] ;
54+ public IRichCommand ToggleDotFilesSetting => commands [ CommandCodes . ToggleDotFilesSetting ] ;
5455 public IRichCommand ToggleShowFileExtensions => commands [ CommandCodes . ToggleShowFileExtensions ] ;
5556 public IRichCommand TogglePreviewPane => commands [ CommandCodes . TogglePreviewPane ] ;
5657 public IRichCommand ToggleDetailsPane => commands [ CommandCodes . ToggleDetailsPane ] ;
@@ -237,6 +238,7 @@ public IEnumerator<IRichCommand> GetEnumerator() =>
237238 [ CommandCodes . Redo ] = new RedoAction ( ) ,
238239 [ CommandCodes . Undo ] = new UndoAction ( ) ,
239240 [ CommandCodes . ToggleShowHiddenItems ] = new ToggleShowHiddenItemsAction ( ) ,
241+ [ CommandCodes . ToggleDotFilesSetting ] = new ToggleDotFilesSettingAction ( ) ,
240242 [ CommandCodes . ToggleShowFileExtensions ] = new ToggleShowFileExtensionsAction ( ) ,
241243 [ CommandCodes . TogglePreviewPane ] = new TogglePreviewPaneAction ( ) ,
242244 [ CommandCodes . ToggleDetailsPane ] = new ToggleDetailsPaneAction ( ) ,
Original file line number Diff line number Diff line change @@ -25,6 +25,7 @@ public interface ICommandManager : IEnumerable<IRichCommand>
2525 IRichCommand Undo { get ; }
2626
2727 IRichCommand ToggleShowHiddenItems { get ; }
28+ IRichCommand ToggleDotFilesSetting { get ; }
2829 IRichCommand ToggleShowFileExtensions { get ; }
2930 IRichCommand TogglePreviewPane { get ; }
3031 IRichCommand ToggleDetailsPane { get ; }
Original file line number Diff line number Diff line change 23572357 <data name =" ToggleShowHiddenItemsDescription" xml : space =" preserve" >
23582358 <value >Toggle whether to show hidden items</value >
23592359 </data >
2360+ <data name =" ToggleDotFilesSettingDescription" xml : space =" preserve" >
2361+ <value >Toggle whether to show dot files</value >
2362+ </data >
23602363 <data name =" ToggleShowFileExtensionsDescription" xml : space =" preserve" >
23612364 <value >Toggle whether to show file extensions</value >
23622365 </data >
You can’t perform that action at this time.
0 commit comments