Skip to content

Commit 5fec4cf

Browse files
committed
Requested changes
1 parent e1a05c6 commit 5fec4cf

File tree

9 files changed

+30
-24
lines changed

9 files changed

+30
-24
lines changed

src/Files.App/Actions/Open/OpenTerminalAction.cs

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,6 @@ internal partial class OpenTerminalAction : ObservableObject, IAction
1010
{
1111
private readonly IContentPageContext context;
1212

13-
private IUserSettingsService UserSettingsService { get; } = Ioc.Default.GetRequiredService<IUserSettingsService>();
1413

1514
public virtual string Label
1615
=> Strings.OpenTerminal.GetLocalizedResource();
@@ -98,9 +97,6 @@ protected virtual string[] GetPaths()
9897

9998
private bool GetIsExecutable()
10099
{
101-
if (UserSettingsService.GeneralSettingsService.ShowOpenTerminal is false)
102-
return false;
103-
104100
if (context.PageType is ContentPageTypes.None or ContentPageTypes.Home or ContentPageTypes.RecycleBin or ContentPageTypes.ZipFolder or ContentPageTypes.ReleaseNotes or ContentPageTypes.Settings)
105101
return false;
106102

src/Files.App/Actions/Open/OpenTerminalFromHomeAction.cs

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@ namespace Files.App.Actions
66
internal sealed partial class OpenTerminalFromHomeAction : OpenTerminalAction
77
{
88
private IHomePageContext HomePageContext { get; } = Ioc.Default.GetRequiredService<IHomePageContext>();
9-
private IUserSettingsService UserSettingsService { get; } = Ioc.Default.GetRequiredService<IUserSettingsService>();
109

1110
public override string Label
1211
=> Strings.OpenTerminal.GetLocalizedResource();
@@ -15,7 +14,6 @@ public override string Description
1514
=> Strings.OpenTerminalDescription.GetLocalizedResource();
1615

1716
public override bool IsExecutable =>
18-
UserSettingsService.GeneralSettingsService.ShowOpenTerminal &&
1917
HomePageContext.IsAnyItemRightClicked &&
2018
HomePageContext.RightClickedItem is not null &&
2119
(HomePageContext.RightClickedItem is WidgetFileTagCardItem fileTagItem

src/Files.App/Actions/Open/OpenTerminalFromSidebarAction.cs

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@ namespace Files.App.Actions
66
internal sealed partial class OpenTerminalFromSidebarAction : OpenTerminalAction
77
{
88
private ISidebarContext SidebarContext { get; } = Ioc.Default.GetRequiredService<ISidebarContext>();
9-
private IUserSettingsService UserSettingsService { get; } = Ioc.Default.GetRequiredService<IUserSettingsService>();
109

1110
public override string Label
1211
=> Strings.OpenTerminal.GetLocalizedResource();
@@ -15,7 +14,6 @@ public override string Description
1514
=> Strings.OpenTerminalDescription.GetLocalizedResource();
1615

1716
public override bool IsExecutable =>
18-
UserSettingsService.GeneralSettingsService.ShowOpenTerminal &&
1917
SidebarContext.IsItemRightClicked &&
2018
SidebarContext.RightClickedItem is not null &&
2119
SidebarContext.RightClickedItem.MenuOptions.ShowShellItems &&

src/Files.App/Data/Factories/ContentPageContextFlyoutFactory.cs

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -612,14 +612,16 @@ public static List<ContextMenuFlyoutItemViewModel> GetBaseItemMenuItems(
612612
new ContextMenuFlyoutItemViewModel()
613613
{
614614
ItemType = ContextMenuFlyoutItemType.Separator,
615-
ShowItem = (!itemsSelected && Commands.OpenTerminal.IsExecutable) ||
616-
(areAllItemsFolders && Commands.OpenTerminal.IsExecutable) ||
615+
ShowItem = (!itemsSelected && Commands.OpenTerminal.IsExecutable && UserSettingsService.GeneralSettingsService.ShowOpenTerminal) ||
616+
(areAllItemsFolders && Commands.OpenTerminal.IsExecutable && UserSettingsService.GeneralSettingsService.ShowOpenTerminal) ||
617617
Commands.OpenStorageSense.IsExecutable ||
618618
Commands.FormatDrive.IsExecutable
619619
},
620620
new ContextMenuFlyoutItemViewModelBuilder(Commands.OpenTerminal)
621621
{
622-
IsVisible = (!itemsSelected && Commands.OpenTerminal.IsExecutable) || (areAllItemsFolders && Commands.OpenTerminal.IsExecutable)
622+
IsVisible = UserSettingsService.GeneralSettingsService.ShowOpenTerminal &&
623+
Commands.OpenTerminal.IsExecutable &&
624+
(!itemsSelected || areAllItemsFolders)
623625
}.Build(),
624626
new ContextMenuFlyoutItemViewModelBuilder(Commands.OpenStorageSense).Build(),
625627
new ContextMenuFlyoutItemViewModelBuilder(Commands.FormatDrive).Build(),

src/Files.App/ViewModels/UserControls/SidebarViewModel.cs

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1043,11 +1043,14 @@ private List<ContextMenuFlyoutItemViewModel> GetLocationItemMenuItems(INavigatio
10431043
new ContextMenuFlyoutItemViewModel()
10441044
{
10451045
ItemType = ContextMenuFlyoutItemType.Separator,
1046-
ShowItem = Commands.OpenTerminalFromSidebar.IsExecutable ||
1046+
ShowItem = (UserSettingsService.GeneralSettingsService.ShowOpenTerminal && Commands.OpenTerminalFromSidebar.IsExecutable) ||
10471047
Commands.OpenStorageSenseFromSidebar.IsExecutable ||
10481048
Commands.FormatDriveFromSidebar.IsExecutable
10491049
},
1050-
new ContextMenuFlyoutItemViewModelBuilder(Commands.OpenTerminalFromSidebar).Build(),
1050+
new ContextMenuFlyoutItemViewModelBuilder(Commands.OpenTerminalFromSidebar)
1051+
{
1052+
IsVisible = UserSettingsService.GeneralSettingsService.ShowOpenTerminal && Commands.OpenTerminalFromSidebar.IsExecutable
1053+
}.Build(),
10511054
new ContextMenuFlyoutItemViewModelBuilder(Commands.OpenStorageSenseFromSidebar).Build(),
10521055
new ContextMenuFlyoutItemViewModelBuilder(Commands.FormatDriveFromSidebar).Build(),
10531056
new ContextMenuFlyoutItemViewModel()

src/Files.App/ViewModels/UserControls/Widgets/DrivesWidgetViewModel.cs

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -153,11 +153,14 @@ public override List<ContextMenuFlyoutItemViewModel> GetItemMenuItems(WidgetCard
153153
new ContextMenuFlyoutItemViewModel()
154154
{
155155
ItemType = ContextMenuFlyoutItemType.Separator,
156-
ShowItem = CommandManager.OpenTerminalFromHome.IsExecutable ||
156+
ShowItem = (UserSettingsService.GeneralSettingsService.ShowOpenTerminal && CommandManager.OpenTerminalFromHome.IsExecutable) ||
157157
CommandManager.OpenStorageSenseFromHome.IsExecutable ||
158158
CommandManager.FormatDriveFromHome.IsExecutable
159159
},
160-
new ContextMenuFlyoutItemViewModelBuilder(CommandManager.OpenTerminalFromHome).Build(),
160+
new ContextMenuFlyoutItemViewModelBuilder(CommandManager.OpenTerminalFromHome)
161+
{
162+
IsVisible = UserSettingsService.GeneralSettingsService.ShowOpenTerminal && CommandManager.OpenTerminalFromHome.IsExecutable
163+
}.Build(),
161164
new ContextMenuFlyoutItemViewModelBuilder(CommandManager.OpenStorageSenseFromHome).Build(),
162165
new ContextMenuFlyoutItemViewModelBuilder(CommandManager.FormatDriveFromHome).Build(),
163166
new()

src/Files.App/ViewModels/UserControls/Widgets/FileTagsWidgetViewModel.cs

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -154,9 +154,12 @@ public override List<ContextMenuFlyoutItemViewModel> GetItemMenuItems(WidgetCard
154154
new ContextMenuFlyoutItemViewModel()
155155
{
156156
ItemType = ContextMenuFlyoutItemType.Separator,
157-
ShowItem = CommandManager.OpenTerminalFromHome.IsExecutable
157+
ShowItem = UserSettingsService.GeneralSettingsService.ShowOpenTerminal && CommandManager.OpenTerminalFromHome.IsExecutable,
158158
},
159-
new ContextMenuFlyoutItemViewModelBuilder(CommandManager.OpenTerminalFromHome).Build(),
159+
new ContextMenuFlyoutItemViewModelBuilder(CommandManager.OpenTerminalFromHome)
160+
{
161+
IsVisible = UserSettingsService.GeneralSettingsService.ShowOpenTerminal && CommandManager.OpenTerminalFromHome.IsExecutable
162+
}.Build(),
160163
new()
161164
{
162165
ItemType = ContextMenuFlyoutItemType.Separator,

src/Files.App/ViewModels/UserControls/Widgets/QuickAccessWidgetViewModel.cs

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -136,9 +136,12 @@ public override List<ContextMenuFlyoutItemViewModel> GetItemMenuItems(WidgetCard
136136
new ContextMenuFlyoutItemViewModel()
137137
{
138138
ItemType = ContextMenuFlyoutItemType.Separator,
139-
ShowItem = CommandManager.OpenTerminalFromHome.IsExecutable
139+
ShowItem = UserSettingsService.GeneralSettingsService.ShowOpenTerminal && CommandManager.OpenTerminalFromHome.IsExecutable
140140
},
141-
new ContextMenuFlyoutItemViewModelBuilder(CommandManager.OpenTerminalFromHome).Build(),
141+
new ContextMenuFlyoutItemViewModelBuilder(CommandManager.OpenTerminalFromHome)
142+
{
143+
IsVisible = UserSettingsService.GeneralSettingsService.ShowOpenTerminal && CommandManager.OpenTerminalFromHome.IsExecutable
144+
}.Build(),
142145
new()
143146
{
144147
ItemType = ContextMenuFlyoutItemType.Separator,

src/Files.App/Views/Settings/GeneralPage.xaml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -261,11 +261,6 @@
261261
<ToggleSwitch AutomationProperties.Name="{helpers:ResourceString Name=ShowOpenInNewPane}" IsOn="{x:Bind ViewModel.ShowOpenInNewPane, Mode=TwoWay}" />
262262
</wctcontrols:SettingsCard>
263263

264-
<!-- Open in Windows Terminal -->
265-
<wctcontrols:SettingsCard Header="{helpers:ResourceString Name=ShowOpenTerminal}">
266-
<ToggleSwitch AutomationProperties.Name="{helpers:ResourceString Name=ShowOpenTerminal}" IsOn="{x:Bind ViewModel.ShowOpenTerminal, Mode=TwoWay}" />
267-
</wctcontrols:SettingsCard>
268-
269264
<!-- Copy path -->
270265
<wctcontrols:SettingsCard Header="{helpers:ResourceString Name=ShowCopyPath}">
271266
<ToggleSwitch AutomationProperties.Name="{helpers:ResourceString Name=ShowCopyPath}" IsOn="{x:Bind ViewModel.ShowCopyPath, Mode=TwoWay}" />
@@ -305,6 +300,11 @@
305300
<ToggleSwitch AutomationProperties.Name="{helpers:ResourceString Name=ShowSendToMenu}" IsOn="{x:Bind ViewModel.ShowSendToMenu, Mode=TwoWay}" />
306301
</wctcontrols:SettingsCard>
307302

303+
<!-- Open in Windows Terminal -->
304+
<wctcontrols:SettingsCard Header="{helpers:ResourceString Name=ShowOpenTerminal}">
305+
<ToggleSwitch AutomationProperties.Name="{helpers:ResourceString Name=ShowOpenTerminal}" IsOn="{x:Bind ViewModel.ShowOpenTerminal, Mode=TwoWay}" />
306+
</wctcontrols:SettingsCard>
307+
308308
<!-- Edit tags -->
309309
<wctcontrols:SettingsCard Header="{helpers:ResourceString Name=ShowEditTagsMenu}">
310310
<ToggleSwitch AutomationProperties.Name="{helpers:ResourceString Name=ShowEditTagsMenu}" IsOn="{x:Bind ViewModel.ShowEditTagsMenu, Mode=TwoWay}" />

0 commit comments

Comments
 (0)