From 6718879a1ce1c7b1cb57b3972c607e618c6b4bd8 Mon Sep 17 00:00:00 2001
From: Yair <39923744+yaira2@users.noreply.github.com>
Date: Thu, 1 Feb 2024 08:03:04 -0800
Subject: [PATCH] Revert "Code Quality: Improved the way of instancing
OpacityIconModel" (#14617)
---
.../ContextMenuFlyoutItemViewModelBuilder.cs | 5 +++-
src/Files.App/Data/Models/OpacityIconModel.cs | 20 ++++---------
.../MenuFlyout/ContextFlyoutItemHelper.cs | 25 ++++++++++++----
.../MenuFlyout/ShellContextMenuHelper.cs | 5 +++-
.../UserControls/Widgets/DrivesWidget.xaml.cs | 25 ++++++++++++----
.../Widgets/FileTagsWidget.xaml.cs | 30 +++++++++++++++----
.../Widgets/QuickAccessWidget.xaml.cs | 25 ++++++++++++----
.../Widgets/RecentFilesWidget.xaml.cs | 10 +++++--
.../UserControls/SidebarViewModel.cs | 25 ++++++++++++----
9 files changed, 126 insertions(+), 44 deletions(-)
diff --git a/src/Files.App/Data/Models/ContextMenuFlyoutItemViewModelBuilder.cs b/src/Files.App/Data/Models/ContextMenuFlyoutItemViewModelBuilder.cs
index 551f33288604..d2cfbff7fe7f 100644
--- a/src/Files.App/Data/Models/ContextMenuFlyoutItemViewModelBuilder.cs
+++ b/src/Files.App/Data/Models/ContextMenuFlyoutItemViewModelBuilder.cs
@@ -69,7 +69,10 @@ public ContextMenuFlyoutItemViewModel Build()
var glyph = command.Glyph;
if (!string.IsNullOrEmpty(glyph.OpacityStyle))
{
- viewModel.OpacityIcon = new(glyph.OpacityStyle);
+ viewModel.OpacityIcon = new OpacityIconModel
+ {
+ OpacityIconStyle = glyph.OpacityStyle,
+ };
}
else
{
diff --git a/src/Files.App/Data/Models/OpacityIconModel.cs b/src/Files.App/Data/Models/OpacityIconModel.cs
index 373f4d8a0c20..8b5372a9ec4b 100644
--- a/src/Files.App/Data/Models/OpacityIconModel.cs
+++ b/src/Files.App/Data/Models/OpacityIconModel.cs
@@ -5,27 +5,19 @@
namespace Files.App.Data.Models
{
- ///
- /// Represents a model for .
- ///
- public class OpacityIconModel
+ public struct OpacityIconModel
{
- public string? OpacityIconStyle { get; set; }
+ public string OpacityIconStyle { get; set; }
- public bool IsValid
- => !string.IsNullOrWhiteSpace(OpacityIconStyle);
-
- public OpacityIconModel(string styleName)
- {
- OpacityIconStyle = styleName;
- }
-
- public OpacityIcon ToOpacityIcon()
+ public readonly OpacityIcon ToOpacityIcon()
{
return new()
{
Style = (Style)Application.Current.Resources[OpacityIconStyle],
};
}
+
+ public readonly bool IsValid
+ => !string.IsNullOrEmpty(OpacityIconStyle);
}
}
diff --git a/src/Files.App/Helpers/MenuFlyout/ContextFlyoutItemHelper.cs b/src/Files.App/Helpers/MenuFlyout/ContextFlyoutItemHelper.cs
index 422806c0ffa0..99643847b3df 100644
--- a/src/Files.App/Helpers/MenuFlyout/ContextFlyoutItemHelper.cs
+++ b/src/Files.App/Helpers/MenuFlyout/ContextFlyoutItemHelper.cs
@@ -143,7 +143,10 @@ public static List GetBaseItemMenuItems(
new ContextMenuFlyoutItemViewModel()
{
Text = "SortBy".GetLocalizedResource(),
- OpacityIcon = new("ColorIconSort"),
+ OpacityIcon = new OpacityIconModel()
+ {
+ OpacityIconStyle = "ColorIconSort",
+ },
ShowItem = !itemsSelected,
ShowInRecycleBin = true,
ShowInSearchPage = true,
@@ -352,7 +355,10 @@ public static List GetBaseItemMenuItems(
},
new ContextMenuFlyoutItemViewModel()
{
- OpacityIcon = new(commands.AddItem.Glyph.OpacityStyle),
+ OpacityIcon = new OpacityIconModel()
+ {
+ OpacityIconStyle = commands.AddItem.Glyph.OpacityStyle
+ },
Text = commands.AddItem.Label,
Items = GetNewItemItems(commandsViewModel, currentInstanceViewModel.CanCreateFileInPage),
ShowItem = !itemsSelected,
@@ -379,7 +385,10 @@ public static List GetBaseItemMenuItems(
new ContextMenuFlyoutItemViewModel()
{
Text = "OpenWith".GetLocalizedResource(),
- OpacityIcon = new("ColorIconOpenWith"),
+ OpacityIcon = new OpacityIconModel()
+ {
+ OpacityIconStyle = "ColorIconOpenWith"
+ },
Tag = "OpenWithOverflow",
IsHidden = true,
CollapseLabel = true,
@@ -503,7 +512,10 @@ public static List GetBaseItemMenuItems(
{
Text = "Compress".GetLocalizedResource(),
ShowInSearchPage = true,
- OpacityIcon = new("ColorIconZip"),
+ OpacityIcon = new OpacityIconModel()
+ {
+ OpacityIconStyle = "ColorIconZip",
+ },
Items = new List
{
new ContextMenuFlyoutItemViewModelBuilder(commands.CompressIntoArchive).Build(),
@@ -516,7 +528,10 @@ public static List GetBaseItemMenuItems(
{
Text = "Extract".GetLocalizedResource(),
ShowInSearchPage = true,
- OpacityIcon = new("ColorIconZip"),
+ OpacityIcon = new OpacityIconModel()
+ {
+ OpacityIconStyle = "ColorIconZip",
+ },
Items = new List
{
new ContextMenuFlyoutItemViewModelBuilder(commands.DecompressArchive).Build(),
diff --git a/src/Files.App/Helpers/MenuFlyout/ShellContextMenuHelper.cs b/src/Files.App/Helpers/MenuFlyout/ShellContextMenuHelper.cs
index 144e50ea8c1d..01c4e0371a1b 100644
--- a/src/Files.App/Helpers/MenuFlyout/ShellContextMenuHelper.cs
+++ b/src/Files.App/Helpers/MenuFlyout/ShellContextMenuHelper.cs
@@ -330,7 +330,10 @@ x.Tag is Win32ContextMenuItem menuItem &&
{
await openWithItem.LoadSubMenuAction();
- openWithItem.OpacityIcon = new("ColorIconOpenWith");
+ openWithItem.OpacityIcon = new OpacityIconModel()
+ {
+ OpacityIconStyle = "ColorIconOpenWith",
+ };
var (_, openWithItems) = ItemModelListToContextFlyoutHelper.GetAppBarItemsFromModel(new List() { openWithItem });
var placeholder = itemContextMenuFlyout.SecondaryCommands.Where(x => Equals((x as AppBarButton)?.Tag, "OpenWithPlaceholder")).FirstOrDefault() as AppBarButton;
if (placeholder is not null)
diff --git a/src/Files.App/UserControls/Widgets/DrivesWidget.xaml.cs b/src/Files.App/UserControls/Widgets/DrivesWidget.xaml.cs
index d13ca8c55e07..e9726d4d5d46 100644
--- a/src/Files.App/UserControls/Widgets/DrivesWidget.xaml.cs
+++ b/src/Files.App/UserControls/Widgets/DrivesWidget.xaml.cs
@@ -159,7 +159,10 @@ public override List GetItemMenuItems(WidgetCard
new ContextMenuFlyoutItemViewModel()
{
Text = "OpenInNewTab".GetLocalizedResource(),
- OpacityIcon = new("ColorIconOpenInNewTab"),
+ OpacityIcon = new OpacityIconModel()
+ {
+ OpacityIconStyle = "ColorIconOpenInNewTab",
+ },
Command = OpenInNewTabCommand,
CommandParameter = item,
ShowItem = userSettingsService.GeneralSettingsService.ShowOpenInNewTab
@@ -167,7 +170,10 @@ public override List GetItemMenuItems(WidgetCard
new ContextMenuFlyoutItemViewModel()
{
Text = "OpenInNewWindow".GetLocalizedResource(),
- OpacityIcon = new("ColorIconOpenInNewWindow"),
+ OpacityIcon = new OpacityIconModel()
+ {
+ OpacityIconStyle = "ColorIconOpenInNewWindow",
+ },
Command = OpenInNewWindowCommand,
CommandParameter = item,
ShowItem = userSettingsService.GeneralSettingsService.ShowOpenInNewWindow
@@ -182,7 +188,10 @@ public override List GetItemMenuItems(WidgetCard
new ContextMenuFlyoutItemViewModel()
{
Text = "PinToFavorites".GetLocalizedResource(),
- OpacityIcon = new("ColorIconPinToFavorites"),
+ OpacityIcon = new OpacityIconModel()
+ {
+ OpacityIconStyle = "ColorIconPinToFavorites",
+ },
Command = PinToFavoritesCommand,
CommandParameter = item,
ShowItem = !isPinned
@@ -190,7 +199,10 @@ public override List GetItemMenuItems(WidgetCard
new ContextMenuFlyoutItemViewModel()
{
Text = "UnpinFromFavorites".GetLocalizedResource(),
- OpacityIcon = new("ColorIconUnpinFromFavorites"),
+ OpacityIcon = new OpacityIconModel()
+ {
+ OpacityIconStyle = "ColorIconUnpinFromFavorites",
+ },
Command = UnpinFromFavoritesCommand,
CommandParameter = item,
ShowItem = isPinned
@@ -212,7 +224,10 @@ public override List GetItemMenuItems(WidgetCard
new ContextMenuFlyoutItemViewModel()
{
Text = "Properties".GetLocalizedResource(),
- OpacityIcon = new("ColorIconProperties"),
+ OpacityIcon = new OpacityIconModel()
+ {
+ OpacityIconStyle = "ColorIconProperties",
+ },
Command = OpenPropertiesCommand,
CommandParameter = item
},
diff --git a/src/Files.App/UserControls/Widgets/FileTagsWidget.xaml.cs b/src/Files.App/UserControls/Widgets/FileTagsWidget.xaml.cs
index ae04a79892c9..0042c7e961b5 100644
--- a/src/Files.App/UserControls/Widgets/FileTagsWidget.xaml.cs
+++ b/src/Files.App/UserControls/Widgets/FileTagsWidget.xaml.cs
@@ -155,7 +155,10 @@ public override List GetItemMenuItems(WidgetCard
new ContextMenuFlyoutItemViewModel()
{
Text = "OpenWith".GetLocalizedResource(),
- OpacityIcon = new("ColorIconOpenWith"),
+ OpacityIcon = new OpacityIconModel()
+ {
+ OpacityIconStyle = "ColorIconOpenWith",
+ },
Tag = "OpenWithPlaceholder",
ShowItem = !isFolder
},
@@ -168,7 +171,10 @@ public override List GetItemMenuItems(WidgetCard
new ContextMenuFlyoutItemViewModel()
{
Text = "OpenInNewTab".GetLocalizedResource(),
- OpacityIcon = new("ColorIconOpenInNewTab"),
+ OpacityIcon = new OpacityIconModel()
+ {
+ OpacityIconStyle = "ColorIconOpenInNewTab",
+ },
Command = OpenInNewTabCommand,
CommandParameter = item,
ShowItem = isFolder
@@ -176,7 +182,10 @@ public override List GetItemMenuItems(WidgetCard
new ContextMenuFlyoutItemViewModel()
{
Text = "OpenInNewWindow".GetLocalizedResource(),
- OpacityIcon = new("ColorIconOpenInNewWindow"),
+ OpacityIcon = new OpacityIconModel()
+ {
+ OpacityIconStyle = "ColorIconOpenInNewWindow",
+ },
Command = OpenInNewWindowCommand,
CommandParameter = item,
ShowItem = isFolder
@@ -199,7 +208,10 @@ public override List GetItemMenuItems(WidgetCard
new ContextMenuFlyoutItemViewModel()
{
Text = "PinToFavorites".GetLocalizedResource(),
- OpacityIcon = new("ColorIconPinToFavorites"),
+ OpacityIcon = new OpacityIconModel()
+ {
+ OpacityIconStyle = "ColorIconPinToFavorites",
+ },
Command = PinToFavoritesCommand,
CommandParameter = item,
ShowItem = !isPinned && isFolder
@@ -207,7 +219,10 @@ public override List GetItemMenuItems(WidgetCard
new ContextMenuFlyoutItemViewModel()
{
Text = "UnpinFromFavorites".GetLocalizedResource(),
- OpacityIcon = new("ColorIconUnpinFromFavorites"),
+ OpacityIcon = new OpacityIconModel()
+ {
+ OpacityIconStyle = "ColorIconUnpinFromFavorites",
+ },
Command = UnpinFromFavoritesCommand,
CommandParameter = item,
ShowItem = isPinned && isFolder
@@ -215,7 +230,10 @@ public override List GetItemMenuItems(WidgetCard
new ContextMenuFlyoutItemViewModel()
{
Text = "Properties".GetLocalizedResource(),
- OpacityIcon = new("ColorIconProperties"),
+ OpacityIcon = new OpacityIconModel()
+ {
+ OpacityIconStyle = "ColorIconProperties",
+ },
Command = OpenPropertiesCommand,
CommandParameter = item,
ShowItem = isFolder
diff --git a/src/Files.App/UserControls/Widgets/QuickAccessWidget.xaml.cs b/src/Files.App/UserControls/Widgets/QuickAccessWidget.xaml.cs
index f4032c6d2ccf..4a3ce199441d 100644
--- a/src/Files.App/UserControls/Widgets/QuickAccessWidget.xaml.cs
+++ b/src/Files.App/UserControls/Widgets/QuickAccessWidget.xaml.cs
@@ -149,7 +149,10 @@ public override List GetItemMenuItems(WidgetCard
new ContextMenuFlyoutItemViewModel()
{
Text = "OpenInNewTab".GetLocalizedResource(),
- OpacityIcon = new("ColorIconOpenInNewTab"),
+ OpacityIcon = new OpacityIconModel()
+ {
+ OpacityIconStyle = "ColorIconOpenInNewTab",
+ },
Command = OpenInNewTabCommand,
CommandParameter = item,
ShowItem = userSettingsService.GeneralSettingsService.ShowOpenInNewTab
@@ -157,7 +160,10 @@ public override List GetItemMenuItems(WidgetCard
new ContextMenuFlyoutItemViewModel()
{
Text = "OpenInNewWindow".GetLocalizedResource(),
- OpacityIcon = new("ColorIconOpenInNewWindow"),
+ OpacityIcon = new OpacityIconModel()
+ {
+ OpacityIconStyle = "ColorIconOpenInNewWindow",
+ },
Command = OpenInNewWindowCommand,
CommandParameter = item,
ShowItem = userSettingsService.GeneralSettingsService.ShowOpenInNewWindow
@@ -172,7 +178,10 @@ public override List GetItemMenuItems(WidgetCard
new ContextMenuFlyoutItemViewModel()
{
Text = "PinToFavorites".GetLocalizedResource(),
- OpacityIcon = new("ColorIconPinToFavorites"),
+ OpacityIcon = new OpacityIconModel()
+ {
+ OpacityIconStyle = "ColorIconPinToFavorites",
+ },
Command = PinToFavoritesCommand,
CommandParameter = item,
ShowItem = !isPinned
@@ -180,7 +189,10 @@ public override List GetItemMenuItems(WidgetCard
new ContextMenuFlyoutItemViewModel()
{
Text = "UnpinFromFavorites".GetLocalizedResource(),
- OpacityIcon = new("ColorIconUnpinFromFavorites"),
+ OpacityIcon = new OpacityIconModel()
+ {
+ OpacityIconStyle = "ColorIconUnpinFromFavorites",
+ },
Command = UnpinFromFavoritesCommand,
CommandParameter = item,
ShowItem = isPinned
@@ -188,7 +200,10 @@ public override List GetItemMenuItems(WidgetCard
new ContextMenuFlyoutItemViewModel()
{
Text = "Properties".GetLocalizedResource(),
- OpacityIcon = new("ColorIconProperties"),
+ OpacityIcon = new OpacityIconModel()
+ {
+ OpacityIconStyle = "ColorIconProperties",
+ },
Command = OpenPropertiesCommand,
CommandParameter = item
},
diff --git a/src/Files.App/UserControls/Widgets/RecentFilesWidget.xaml.cs b/src/Files.App/UserControls/Widgets/RecentFilesWidget.xaml.cs
index d10f4ee44e9c..7eebe84f9f07 100644
--- a/src/Files.App/UserControls/Widgets/RecentFilesWidget.xaml.cs
+++ b/src/Files.App/UserControls/Widgets/RecentFilesWidget.xaml.cs
@@ -158,7 +158,10 @@ public override List GetItemMenuItems(WidgetCard
new ContextMenuFlyoutItemViewModel()
{
Text = "OpenWith".GetLocalizedResource(),
- OpacityIcon = new("ColorIconOpenWith"),
+ OpacityIcon = new OpacityIconModel()
+ {
+ OpacityIconStyle = "ColorIconOpenWith",
+ },
Tag = "OpenWithPlaceholder",
},
new ContextMenuFlyoutItemViewModel()
@@ -190,7 +193,10 @@ public override List GetItemMenuItems(WidgetCard
new ContextMenuFlyoutItemViewModel()
{
Text = "Properties".GetLocalizedResource(),
- OpacityIcon = new("ColorIconProperties"),
+ OpacityIcon = new OpacityIconModel()
+ {
+ OpacityIconStyle = "ColorIconProperties",
+ },
Command = OpenPropertiesCommand,
CommandParameter = item
},
diff --git a/src/Files.App/ViewModels/UserControls/SidebarViewModel.cs b/src/Files.App/ViewModels/UserControls/SidebarViewModel.cs
index 30a253268db4..61fecf7dac2e 100644
--- a/src/Files.App/ViewModels/UserControls/SidebarViewModel.cs
+++ b/src/Files.App/ViewModels/UserControls/SidebarViewModel.cs
@@ -977,14 +977,20 @@ private List GetLocationItemMenuItems(INavigatio
new ContextMenuFlyoutItemViewModel()
{
Text = "OpenInNewTab".GetLocalizedResource(),
- OpacityIcon = new("ColorIconOpenInNewTab"),
+ OpacityIcon = new OpacityIconModel()
+ {
+ OpacityIconStyle = "ColorIconOpenInNewTab",
+ },
Command = OpenInNewTabCommand,
ShowItem = options.IsLocationItem && UserSettingsService.GeneralSettingsService.ShowOpenInNewTab
},
new ContextMenuFlyoutItemViewModel()
{
Text = "OpenInNewWindow".GetLocalizedResource(),
- OpacityIcon = new("ColorIconOpenInNewWindow"),
+ OpacityIcon = new OpacityIconModel()
+ {
+ OpacityIconStyle = "ColorIconOpenInNewWindow",
+ },
Command = OpenInNewWindowCommand,
ShowItem = options.IsLocationItem && UserSettingsService.GeneralSettingsService.ShowOpenInNewTab
},
@@ -997,14 +1003,20 @@ private List GetLocationItemMenuItems(INavigatio
new ContextMenuFlyoutItemViewModel()
{
Text = "PinToFavorites".GetLocalizedResource(),
- OpacityIcon = new("ColorIconPinToFavorites"),
+ OpacityIcon = new OpacityIconModel()
+ {
+ OpacityIconStyle = "ColorIconPinToFavorites",
+ },
Command = PinItemCommand,
ShowItem = isDriveItem && !isDriveItemPinned
},
new ContextMenuFlyoutItemViewModel()
{
Text = "UnpinFromFavorites".GetLocalizedResource(),
- OpacityIcon = new("ColorIconUnpinFromFavorites"),
+ OpacityIcon = new OpacityIconModel()
+ {
+ OpacityIconStyle = "ColorIconUnpinFromFavorites",
+ },
Command = UnpinItemCommand,
ShowItem = options.ShowUnpinItem || isDriveItemPinned
},
@@ -1038,7 +1050,10 @@ private List GetLocationItemMenuItems(INavigatio
new ContextMenuFlyoutItemViewModel()
{
Text = "Properties".GetLocalizedResource(),
- OpacityIcon = new("ColorIconProperties"),
+ OpacityIcon = new OpacityIconModel()
+ {
+ OpacityIconStyle = "ColorIconProperties",
+ },
Command = OpenPropertiesCommand,
CommandParameter = menu,
ShowItem = options.ShowProperties