From 928045d277c00f8f354895203e04f290616b3922 Mon Sep 17 00:00:00 2001 From: gumbarros Date: Mon, 18 Mar 2024 22:23:46 -0300 Subject: [PATCH 1/2] Seal all non-inherited classes to improve performance --- .../SetAsLockscreenBackgroundAction.cs | 2 +- .../SetAsSlideshowBackgroundAction.cs | 2 +- .../SetAsWallpaperBackgroundAction.cs | 2 +- .../ImageManipulation/RotateLeftAction.cs | 2 +- .../ImageManipulation/RotateRightAction.cs | 2 +- .../Install/InstallCertificateAction.cs | 2 +- .../Content/Install/InstallFontAction.cs | 2 +- .../Content/Install/InstallInfDriverAction.cs | 2 +- .../Actions/Content/PlayAllAction.cs | 2 +- .../PreviewPopup/LaunchPreviewPopupAction.cs | 2 +- .../Actions/Content/RefreshItemsAction.cs | 2 +- .../Content/Run/RunWithPowershellAction.cs | 2 +- .../Content/Selection/ClearSelectionAction.cs | 2 +- .../Selection/InvertSelectionAction.cs | 2 +- .../Content/Selection/SelectAllAction.cs | 2 +- .../Content/Selection/ToggleSelectAction.cs | 2 +- .../Actions/Content/Share/ShareItemAction.cs | 2 +- src/Files.App/Actions/Display/GroupAction.cs | 52 +++++++++---------- src/Files.App/Actions/Display/LayoutAction.cs | 16 +++--- src/Files.App/Actions/Display/SortAction.cs | 26 +++++----- .../SortFilesAndFoldersTogetherAction.cs | 2 +- .../Actions/Display/SortFilesFirstAction.cs | 2 +- .../Actions/Display/SortFoldersFirstAction.cs | 2 +- .../Actions/FileSystem/AddItemAction.cs | 2 +- .../Actions/FileSystem/CopyItemAction.cs | 2 +- .../Actions/FileSystem/CopyPathAction.cs | 2 +- .../FileSystem/CopyPathWithQuotesAction.cs | 2 +- .../Actions/FileSystem/CreateFolderAction.cs | 2 +- .../CreateFolderWithSelectionAction.cs | 2 +- .../FileSystem/CreateShortcutAction.cs | 2 +- .../CreateShortcutFromDialogAction.cs | 2 +- .../Actions/FileSystem/CutItemAction.cs | 2 +- .../Actions/FileSystem/DeleteItemAction.cs | 2 +- .../FileSystem/DeleteItemPermanentlyAction.cs | 2 +- .../FileSystem/EmptyRecycleBinAction.cs | 2 +- .../Actions/FileSystem/FormatDriveAction.cs | 2 +- .../FileSystem/OpenFileLocationAction.cs | 2 +- .../Actions/FileSystem/OpenItemAction.cs | 6 +-- .../Actions/FileSystem/PasteItemAction.cs | 2 +- .../FileSystem/PasteItemToSelectionAction.cs | 2 +- .../Actions/FileSystem/RenameAction.cs | 2 +- .../FileSystem/RestoreAllRecycleBinAction.cs | 2 +- .../FileSystem/RestoreRecycleBinAction.cs | 2 +- src/Files.App/Actions/Git/GitFetchAction.cs | 2 +- src/Files.App/Actions/Git/GitPullAction.cs | 2 +- src/Files.App/Actions/Git/GitPushAction.cs | 2 +- src/Files.App/Actions/Git/GitSyncAction.cs | 2 +- .../Actions/Global/EditPathAction.cs | 2 +- .../Global/EnterCompactOverlayAction.cs | 2 +- .../Global/ExitCompactOverlayAction.cs | 2 +- .../Actions/Global/OpenHelpAction.cs | 2 +- src/Files.App/Actions/Global/RedoAction.cs | 2 +- src/Files.App/Actions/Global/SearchAction.cs | 2 +- .../Global/ToggleCompactOverlayAction.cs | 2 +- .../Actions/Global/ToggleFullScreenAction.cs | 2 +- src/Files.App/Actions/Global/UndoAction.cs | 2 +- .../Actions/Navigation/ClosePaneAction.cs | 2 +- .../Navigation/DuplicateCurrentTabAction.cs | 2 +- .../Navigation/DuplicateSelectedTabAction.cs | 2 +- .../Actions/Navigation/NavigateBackAction.cs | 2 +- .../Navigation/NavigateForwardAction.cs | 2 +- .../Actions/Navigation/NavigateUpAction.cs | 2 +- .../Actions/Navigation/NewTabAction.cs | 2 +- .../Actions/Navigation/NewWindowAction.cs | 2 +- .../Actions/Navigation/NextTabAction.cs | 2 +- .../OpenDirectoryInNewPaneAction.cs | 2 +- .../Navigation/OpenDirectoryInNewTabAction.cs | 2 +- .../Navigation/OpenInNewWindowItemAction.cs | 2 +- .../Actions/Navigation/OpenNewPaneAction.cs | 2 +- .../Actions/Navigation/PreviousTabAction.cs | 2 +- .../Navigation/ReopenClosedTabAction.cs | 2 +- .../Actions/Open/OpenCommandPaletteAction.cs | 2 +- .../Actions/Open/OpenPropertiesAction.cs | 2 +- .../Actions/Open/OpenSettingsAction.cs | 2 +- .../Actions/Open/OpenTerminalAsAdminAction.cs | 2 +- .../Actions/Show/ToggleDetailsPaneAction.cs | 2 +- .../Actions/Show/ToggleInfoPaneAction.cs | 2 +- .../Actions/Show/TogglePreviewPaneAction.cs | 2 +- .../Show/ToggleShowFileExtensionsAction.cs | 2 +- .../Show/ToggleShowHiddenItemsAction.cs | 2 +- .../Actions/Start/PinToStartAction.cs | 2 +- .../Actions/Start/UnpinFromStartAction.cs | 2 +- .../StatusCenterStateToBrushConverter.cs | 2 +- .../Data/Behaviors/StickyHeaderBehavior.cs | 2 +- .../Data/Commands/Manager/CommandManager.cs | 4 +- .../Manager/ModifiableCommandManager.cs | 2 +- .../Data/Commands/ModifiableCommand.cs | 2 +- src/Files.App/Data/Commands/NoneCommand.cs | 2 +- .../ContentPage/ContentPageContext.cs | 2 +- .../DisplayPage/DisplayPageContext.cs | 2 +- .../Data/Contexts/HomePage/HomePageContext.cs | 2 +- .../Multitasking/MultitaskingContext.cs | 2 +- .../Data/Contexts/Page/PageContext.cs | 2 +- .../Data/Contexts/SideBar/SideBarContext.cs | 2 +- .../Data/Contexts/Window/WindowContext.cs | 2 +- .../Data/Contracts/INavigationControlItem.cs | 2 +- .../AddressBarTextEnteredEventArgs.cs | 2 +- .../CurrentInstanceChangedEventArgs.cs | 2 +- .../Data/EventArguments/DeviceEventArgs.cs | 2 +- .../EventArguments/EventArrivedEventArgs.cs | 2 +- .../EventArguments/LayoutModeEventArgs.cs | 2 +- .../LayoutPreferenceEventArgs.cs | 2 +- .../MainPageNavigationArguments.cs | 2 +- .../EventArguments/PaneNavigationArguments.cs | 2 +- .../PathBoxItemDroppedEventArgs.cs | 2 +- .../EventArguments/PathNavigationEventArgs.cs | 2 +- .../QuickAccessCardEventArgs.cs | 6 +-- .../SearchBoxQuerySubmittedEventArgs.cs | 2 +- .../SearchBoxTextChangedEventArgs.cs | 2 +- .../ToolbarFlyoutOpenedEventArgs.cs | 2 +- .../ToolbarPathItemLoadedEventArgs.cs | 2 +- .../ToolbarQuerySubmittedEventArgs.cs | 2 +- ...WidgetsRightClickedItemChangedEventArgs.cs | 2 +- .../Data/Items/AppThemeResourceItem.cs | 2 +- .../Data/Items/DetailsLayoutColumnItem.cs | 2 +- src/Files.App/Data/Items/DriveItem.cs | 2 +- src/Files.App/Data/Items/FileTagItem.cs | 2 +- src/Files.App/Data/Items/ListedItem.cs | 14 ++--- src/Files.App/Data/Items/LocationItem.cs | 2 +- .../Data/Items/NavigationBarSuggestionItem.cs | 2 +- .../NavigationViewItemButtonStyleItem.cs | 2 +- src/Files.App/Data/Items/PathBoxItem.cs | 2 +- .../Data/Items/SidebarLibraryItem.cs | 2 +- src/Files.App/Data/Items/TagsListItem.cs | 4 +- .../Data/Items/WidgetContainerItem.cs | 2 +- .../Data/Items/WidgetDriveCardItem.cs | 2 +- .../Data/Items/WidgetFolderCardItem.cs | 2 +- src/Files.App/Data/Items/WslDistroItem.cs | 2 +- src/Files.App/Data/Models/AppModel.cs | 2 +- src/Files.App/Data/Models/ColumnsViewModel.cs | 2 +- .../Models/ContextMenuFlyoutItemViewModel.cs | 2 +- .../ContextMenuFlyoutItemViewModelBuilder.cs | 2 +- .../Data/Models/CurrentInstanceViewModel.cs | 2 +- .../Models/DirectoryPropertiesViewModel.cs | 2 +- src/Files.App/Data/Models/DrivesViewModel.cs | 2 +- src/Files.App/Data/Models/GitItemModel.cs | 2 +- .../Data/Models/ItemManipulationModel.cs | 2 +- src/Files.App/Data/Models/ItemViewModel.cs | 6 +-- .../Data/Models/NetworkDrivesViewModel.cs | 2 +- .../Data/Models/PinnedFoldersManager.cs | 2 +- src/Files.App/Data/Models/RemovableDevice.cs | 2 +- .../SelectedItemsPropertiesViewModel.cs | 2 +- src/Files.App/Data/Models/SuggestionModel.cs | 2 +- src/Files.App/Data/Parameters/ColumnParam.cs | 2 +- .../Data/Parameters/NavigationParams.cs | 2 +- .../PropertiesPageNavigationParameter.cs | 2 +- .../Dialogs/CreateArchiveDialog.xaml.cs | 2 +- src/Files.App/Extensions/ImageFromBytes.cs | 2 +- src/Files.App/Helpers/CredentialsHelpers.cs | 2 +- .../Helpers/Dialog/DialogDisplayHelper.cs | 2 +- .../Interop/NativeDirectoryChangesHelper.cs | 2 +- .../Interop/NativeFileOperationsHelper.cs | 4 +- .../Interop/NativeIoDeviceControlHelper.cs | 2 +- .../Helpers/Interop/NativeWinApiHelper.cs | 2 +- src/Files.App/Helpers/IntervalSampler.cs | 2 +- .../Layout/LayoutPreferencesDatabaseItem.cs | 2 +- .../LayoutPreferencesDatabaseManager.cs | 2 +- .../Helpers/Layout/LayoutPreferencesItem.cs | 2 +- .../Layout/LayoutPreferencesManager.cs | 2 +- src/Files.App/Helpers/MediaFileHelper.cs | 2 +- .../Helpers/MenuFlyout/MenuFlyoutHelper.cs | 10 ++-- .../Helpers/NaturalStringComparer.cs | 6 +-- .../NavigationInteractionTracker.cs | 4 +- src/Files.App/Helpers/TypesConverter.cs | 4 +- .../Helpers/WMI/ManagementEventWatcher.cs | 2 +- src/Files.App/Helpers/WMI/WqlEventQuery.cs | 2 +- .../Helpers/Win32/Win32Helper.Storage.cs | 2 +- .../Helpers/Xaml/SystemTypeToXaml.cs | 2 +- .../AbstractDateTimeFormatter.cs | 2 +- .../ApplicationDateTimeFormatter.cs | 2 +- .../DateTimeFormatterFactory.cs | 2 +- .../SystemDateTimeFormatter.cs | 2 +- .../UniversalDateTimeFormatter.cs | 2 +- .../UserDateTimeFormatter.cs | 2 +- src/Files.App/Services/JumpListService.cs | 2 +- .../Services/NetworkDrivesService.cs | 2 +- .../QuickLookProvider.cs | 2 +- .../PreviewPopupProviders/SeerProProvider.cs | 2 +- src/Files.App/Services/QuickAccessService.cs | 2 +- .../Services/RemovableDrivesService.cs | 2 +- src/Files.App/Services/ResourcesService.cs | 2 +- src/Files.App/Services/UserSizeProvider.cs | 2 +- src/Files.App/Services/VolumeInfoFactory.cs | 2 +- .../Services/WindowsCompatibilityService.cs | 2 +- .../UserControls/Menus/FileTagsContextMenu.cs | 2 +- .../MenuFlyoutSubItemCustomProperties.cs | 2 +- .../UserControls/Pane/InfoPane.xaml.cs | 2 +- .../ExtendPreviousItemSelectionStrategy.cs | 2 +- .../IgnorePreviousItemSelectionStrategy.cs | 2 +- .../InvertPreviousItemSelectionStrategy.cs | 2 +- .../RectangleSelection_ListViewBase.cs | 2 +- .../SideBar/SidebarItemAutomationPeer.cs | 2 +- .../UserControls/Widgets/DrivesWidget.xaml.cs | 2 +- .../Utils/Archives/CompressArchiveModel.cs | 2 +- .../Utils/Cloud/CloudDriveSyncStatusUI.cs | 2 +- .../Utils/Cloud/CloudDrivesDetector.cs | 2 +- .../Utils/Cloud/Detector/BoxCloudDetector.cs | 2 +- .../Utils/Cloud/Detector/CloudDetector.cs | 2 +- .../Cloud/Detector/DropBoxCloudDetector.cs | 2 +- .../Cloud/Detector/GenericCloudDetector.cs | 2 +- .../Detector/GoogleDriveCloudDetector.cs | 2 +- .../Detector/SynologyDriveCloudDetector.cs | 2 +- .../Utils/FileTags/FileTagsManager.cs | 2 +- .../Utils/Global/NetworkDrivesAPI.cs | 4 +- .../Global/WindowsStorageDeviceWatcher.cs | 2 +- src/Files.App/Utils/Library/LibraryManager.cs | 2 +- src/Files.App/Utils/RecentItem/RecentItem.cs | 2 +- src/Files.App/Utils/RecentItem/RecentItems.cs | 2 +- .../Utils/Shell/ShellFileOperations2.cs | 6 +-- src/Files.App/Utils/Shell/ShellLibraryEx.cs | 2 +- .../Utils/Shell/ShellLibraryFolders.cs | 2 +- .../Utils/Shell/ThreadWithMessageQueue.cs | 4 +- .../StatusCenterItemProgressModel.cs | 2 +- .../Storage/Cache/StorageCacheController.cs | 2 +- .../Collection/BlockingListEnumerator.cs | 2 +- .../Collection/ConcurrentCollection.cs | 2 +- .../Storage/Collection/GroupedCollection.cs | 2 +- .../Collection/GroupedHeaderViewModel.cs | 2 +- .../Utils/Storage/Helpers/FilesystemResult.cs | 2 +- .../Storage/Helpers/StorageFileWithPath.cs | 2 +- .../Storage/Helpers/StorageFolderWithPath.cs | 2 +- .../Storage/Helpers/StorageSenseHelper.cs | 2 +- .../Utils/Storage/History/StorageHistory.cs | 2 +- .../Storage/History/StorageHistoryHelpers.cs | 2 +- .../History/StorageHistoryOperations.cs | 2 +- .../Storage/History/StorageHistoryWrapper.cs | 2 +- .../Operations/FileOperationsHelpers.cs | 6 +-- .../Storage/Operations/FileSizeCalculator.cs | 2 +- .../Operations/FilesystemOperations.cs | 2 +- .../Operations/ShellFilesystemOperations.cs | 2 +- .../Utils/Storage/Search/FolderSearch.cs | 2 +- .../Storage/Security/AccessControlEntry.cs | 2 +- .../Storage/Security/AccessControlList.cs | 2 +- .../Utils/Storage/Security/AccessMaskItem.cs | 2 +- .../Utils/Storage/Security/Principal.cs | 2 +- .../BaseBasicStorageItemExtraProperties.cs | 2 +- .../StorageBaseItems/StorageCredential.cs | 2 +- .../Storage/StorageItems/BaseQueryResults.cs | 6 +-- .../Storage/StorageItems/FtpStorageFile.cs | 2 +- .../Storage/StorageItems/FtpStorageFolder.cs | 2 +- .../Storage/StorageItems/NativeStorageFile.cs | 2 +- .../Storage/StorageItems/ShellStorageFile.cs | 6 +-- .../StorageItems/ShellStorageFolder.cs | 6 +-- .../StorageItems/StreamWithContentType.cs | 10 ++-- .../Storage/StorageItems/SystemStorageFile.cs | 2 +- .../StorageItems/SystemStorageFolder.cs | 2 +- .../StorageItems/VirtualStorageFile.cs | 2 +- .../StorageItems/VirtualStorageFolder.cs | 2 +- .../StorageItems/VirtualStorageItem.cs | 2 +- .../Storage/StorageItems/ZipStorageFile.cs | 2 +- .../Storage/StorageItems/ZipStorageFolder.cs | 2 +- src/Files.App/Utils/Taskbar/SystemTrayIcon.cs | 2 +- .../Utils/Taskbar/SystemTrayIconWindow.cs | 2 +- .../Dialogs/AddBranchDialogViewModel.cs | 2 +- .../Dialogs/CreateShortcutDialogViewModel.cs | 2 +- .../DecompressArchiveDialogViewModel.cs | 2 +- .../Dialogs/DynamicDialogViewModel.cs | 2 +- .../ReorderSidebarItemsDialogViewModel.cs | 2 +- src/Files.App/ViewModels/HomeViewModel.cs | 2 +- .../ViewModels/Layouts/BaseLayoutViewModel.cs | 2 +- src/Files.App/ViewModels/MainPageViewModel.cs | 2 +- .../Properties/CompatibilityViewModel.cs | 2 +- .../Properties/CustomizationViewModel.cs | 2 +- .../ViewModels/Properties/HashesViewModel.cs | 2 +- .../Items/CombinedFileProperties.cs | 2 +- .../Properties/Items/CombinedProperties.cs | 2 +- .../Properties/Items/DriveProperties.cs | 2 +- .../Properties/Items/FileProperties.cs | 2 +- .../Properties/Items/FileProperty.cs | 2 +- .../Properties/Items/FilePropertySection.cs | 2 +- .../Properties/Items/FolderProperties.cs | 2 +- .../Properties/Items/LibraryProperties.cs | 2 +- .../Properties/MainPropertiesViewModel.cs | 2 +- .../Properties/SecurityAdvancedViewModel.cs | 2 +- .../Properties/SecurityViewModel.cs | 2 +- .../ViewModels/Settings/AboutViewModel.cs | 2 +- .../ViewModels/Settings/AdvancedViewModel.cs | 2 +- .../Settings/AppearanceViewModel.cs | 2 +- .../ViewModels/Settings/FoldersViewModel.cs | 2 +- .../ViewModels/Settings/GeneralViewModel.cs | 8 +-- .../ViewModels/Settings/GitViewModel.cs | 2 +- .../ViewModels/Settings/LayoutViewModel.cs | 2 +- .../ViewModels/Settings/TagsViewModel.cs | 4 +- src/Files.App/ViewModels/SettingsViewModel.cs | 2 +- .../UserControls/AddressToolbarViewModel.cs | 2 +- .../UserControls/InfoPaneViewModel.cs | 2 +- .../Previews/ArchivePreviewViewModel.cs | 2 +- .../UserControls/Previews/BasePreviewModel.cs | 2 +- .../Previews/BasicPreviewViewModel.cs | 2 +- .../Previews/CodePreviewViewModel.cs | 2 +- .../Previews/FolderPreviewViewModel.cs | 2 +- .../Previews/HtmlPreviewViewModel.cs | 2 +- .../Previews/ImagePreviewViewModel.cs | 2 +- .../Previews/MarkdownPreviewViewModel.cs | 2 +- .../Previews/MediaPreviewViewModel.cs | 2 +- .../Previews/PDFPreviewViewModel.cs | 2 +- .../Previews/RichTextPreviewViewModel.cs | 2 +- .../Previews/ShellPreviewViewModel.cs | 2 +- .../Previews/ShortcutPreviewViewModel.cs | 2 +- .../Previews/TextPreviewViewModel.cs | 2 +- .../UserControls/SearchBoxViewModel.cs | 4 +- .../UserControls/SidebarViewModel.cs | 2 +- .../UserControls/StatusCenterViewModel.cs | 2 +- .../Widgets/DrivesWidgetViewModel.cs | 2 +- .../Widgets/QuickAccessWidgetViewModel.cs | 2 +- .../Widgets/RecentFilesWidgetViewModel.cs | 2 +- src/Files.App/Views/Layouts/BaseLayoutPage.cs | 2 +- .../Views/Properties/LibraryPage.xaml.cs | 2 +- .../DependencyPropertyGenerator.cs | 2 +- .../Utilities/UsingCollector.cs | 2 +- src/Files.Core/Data/Items/FileTagsDb.cs | 4 +- src/Files.Core/Data/Items/IconFileInfo.cs | 2 +- src/Files.Core/Data/Items/ShellLibraryItem.cs | 2 +- src/Files.Core/Data/Items/ShellLinkItem.cs | 2 +- src/Files.Core/Data/Items/ShellNewEntry.cs | 2 +- .../Data/Items/ShellOperationResult.cs | 4 +- src/Files.Core/Data/Items/Win32Process.cs | 2 +- .../Data/Items/WindowsCompatibilityOptions.cs | 2 +- src/Files.Core/Data/Models/HashInfoItem.cs | 2 +- .../Helpers/NativeFindStorageItemHelper.cs | 2 +- .../SizeProvider/CachedSizeProvider.cs | 2 +- .../SizeProvider/DrivesSizeProvider.cs | 2 +- .../Services/SizeProvider/NoSizeProvider.cs | 2 +- .../SizeProvider/SizeChangedEventArgs.cs | 2 +- src/Files.Core/Utils/Cloud/CloudProvider.cs | 2 +- .../Utils/CommandLine/CommandLineParser.cs | 2 +- .../Utils/CommandLine/ParsedCommand.cs | 2 +- .../Utils/CommandLine/ParsedCommands.cs | 2 +- .../ViewModels/FileTags/ListedTagViewModel.cs | 2 +- .../Helpers/AsyncManualResetEvent.cs | 2 +- src/Files.Shared/Utils/Logger/FileLogger.cs | 2 +- .../Utils/Logger/FileLoggerProvider.cs | 2 +- .../Helper/AxeHelper.cs | 2 +- .../Files.InteractionTests/SessionManager.cs | 2 +- .../Tests/FolderTests.cs | 2 +- .../Tests/GeneralAppTests.cs | 2 +- .../Tests/SettingsTests.cs | 2 +- 337 files changed, 427 insertions(+), 427 deletions(-) diff --git a/src/Files.App/Actions/Content/Background/SetAsLockscreenBackgroundAction.cs b/src/Files.App/Actions/Content/Background/SetAsLockscreenBackgroundAction.cs index 4b664b8fd0bf..4d9c20b86510 100644 --- a/src/Files.App/Actions/Content/Background/SetAsLockscreenBackgroundAction.cs +++ b/src/Files.App/Actions/Content/Background/SetAsLockscreenBackgroundAction.cs @@ -3,7 +3,7 @@ namespace Files.App.Actions { - internal class SetAsLockscreenBackgroundAction : BaseSetAsAction + internal sealed class SetAsLockscreenBackgroundAction : BaseSetAsAction { public override string Label => "SetAsLockscreen".GetLocalizedResource(); diff --git a/src/Files.App/Actions/Content/Background/SetAsSlideshowBackgroundAction.cs b/src/Files.App/Actions/Content/Background/SetAsSlideshowBackgroundAction.cs index f2d678673d43..53edabf46673 100644 --- a/src/Files.App/Actions/Content/Background/SetAsSlideshowBackgroundAction.cs +++ b/src/Files.App/Actions/Content/Background/SetAsSlideshowBackgroundAction.cs @@ -3,7 +3,7 @@ namespace Files.App.Actions { - internal class SetAsSlideshowBackgroundAction : BaseSetAsAction + internal sealed class SetAsSlideshowBackgroundAction : BaseSetAsAction { public override string Label => "SetAsSlideshow".GetLocalizedResource(); diff --git a/src/Files.App/Actions/Content/Background/SetAsWallpaperBackgroundAction.cs b/src/Files.App/Actions/Content/Background/SetAsWallpaperBackgroundAction.cs index 35219fe3a0e2..182bcd39e8ec 100644 --- a/src/Files.App/Actions/Content/Background/SetAsWallpaperBackgroundAction.cs +++ b/src/Files.App/Actions/Content/Background/SetAsWallpaperBackgroundAction.cs @@ -3,7 +3,7 @@ namespace Files.App.Actions { - internal class SetAsWallpaperBackgroundAction : BaseSetAsAction + internal sealed class SetAsWallpaperBackgroundAction : BaseSetAsAction { public override string Label => "SetAsBackground".GetLocalizedResource(); diff --git a/src/Files.App/Actions/Content/ImageManipulation/RotateLeftAction.cs b/src/Files.App/Actions/Content/ImageManipulation/RotateLeftAction.cs index 5a6aa6f48254..f51a6f8d18e1 100644 --- a/src/Files.App/Actions/Content/ImageManipulation/RotateLeftAction.cs +++ b/src/Files.App/Actions/Content/ImageManipulation/RotateLeftAction.cs @@ -5,7 +5,7 @@ namespace Files.App.Actions { - internal class RotateLeftAction : BaseRotateAction + internal sealed class RotateLeftAction : BaseRotateAction { public override string Label => "RotateLeft".GetLocalizedResource(); diff --git a/src/Files.App/Actions/Content/ImageManipulation/RotateRightAction.cs b/src/Files.App/Actions/Content/ImageManipulation/RotateRightAction.cs index d3ef9d9fd0af..0451cec412cf 100644 --- a/src/Files.App/Actions/Content/ImageManipulation/RotateRightAction.cs +++ b/src/Files.App/Actions/Content/ImageManipulation/RotateRightAction.cs @@ -5,7 +5,7 @@ namespace Files.App.Actions { - internal class RotateRightAction : BaseRotateAction + internal sealed class RotateRightAction : BaseRotateAction { public override string Label => "RotateRight".GetLocalizedResource(); diff --git a/src/Files.App/Actions/Content/Install/InstallCertificateAction.cs b/src/Files.App/Actions/Content/Install/InstallCertificateAction.cs index 2e58b67020d4..8f8f7f7557ff 100644 --- a/src/Files.App/Actions/Content/Install/InstallCertificateAction.cs +++ b/src/Files.App/Actions/Content/Install/InstallCertificateAction.cs @@ -5,7 +5,7 @@ namespace Files.App.Actions { - internal class InstallCertificateAction : ObservableObject, IAction + internal sealed class InstallCertificateAction : ObservableObject, IAction { private readonly IContentPageContext context; diff --git a/src/Files.App/Actions/Content/Install/InstallFontAction.cs b/src/Files.App/Actions/Content/Install/InstallFontAction.cs index 6869abb22a09..742cd1d19802 100644 --- a/src/Files.App/Actions/Content/Install/InstallFontAction.cs +++ b/src/Files.App/Actions/Content/Install/InstallFontAction.cs @@ -5,7 +5,7 @@ namespace Files.App.Actions { - internal class InstallFontAction : ObservableObject, IAction + internal sealed class InstallFontAction : ObservableObject, IAction { private readonly IContentPageContext context; diff --git a/src/Files.App/Actions/Content/Install/InstallInfDriverAction.cs b/src/Files.App/Actions/Content/Install/InstallInfDriverAction.cs index 16d928d103d3..39c1dc458052 100644 --- a/src/Files.App/Actions/Content/Install/InstallInfDriverAction.cs +++ b/src/Files.App/Actions/Content/Install/InstallInfDriverAction.cs @@ -5,7 +5,7 @@ namespace Files.App.Actions { - internal class InstallInfDriverAction : ObservableObject, IAction + internal sealed class InstallInfDriverAction : ObservableObject, IAction { private readonly IContentPageContext context; diff --git a/src/Files.App/Actions/Content/PlayAllAction.cs b/src/Files.App/Actions/Content/PlayAllAction.cs index 8f23d08ea786..75772874e3e3 100644 --- a/src/Files.App/Actions/Content/PlayAllAction.cs +++ b/src/Files.App/Actions/Content/PlayAllAction.cs @@ -5,7 +5,7 @@ namespace Files.App.Actions { - internal class PlayAllAction : ObservableObject, IAction + internal sealed class PlayAllAction : ObservableObject, IAction { private readonly IContentPageContext context; diff --git a/src/Files.App/Actions/Content/PreviewPopup/LaunchPreviewPopupAction.cs b/src/Files.App/Actions/Content/PreviewPopup/LaunchPreviewPopupAction.cs index bce085727eda..d8d33e3d1f1f 100644 --- a/src/Files.App/Actions/Content/PreviewPopup/LaunchPreviewPopupAction.cs +++ b/src/Files.App/Actions/Content/PreviewPopup/LaunchPreviewPopupAction.cs @@ -3,7 +3,7 @@ namespace Files.App.Actions { - internal class LaunchPreviewPopupAction : ObservableObject, IAction + internal sealed class LaunchPreviewPopupAction : ObservableObject, IAction { private readonly IContentPageContext context; diff --git a/src/Files.App/Actions/Content/RefreshItemsAction.cs b/src/Files.App/Actions/Content/RefreshItemsAction.cs index 32711f08f933..c6c47d3ccf5e 100644 --- a/src/Files.App/Actions/Content/RefreshItemsAction.cs +++ b/src/Files.App/Actions/Content/RefreshItemsAction.cs @@ -3,7 +3,7 @@ namespace Files.App.Actions { - internal class RefreshItemsAction : ObservableObject, IAction + internal sealed class RefreshItemsAction : ObservableObject, IAction { private readonly IContentPageContext context; diff --git a/src/Files.App/Actions/Content/Run/RunWithPowershellAction.cs b/src/Files.App/Actions/Content/Run/RunWithPowershellAction.cs index 59dc05df35e9..59dd6417a7a1 100644 --- a/src/Files.App/Actions/Content/Run/RunWithPowershellAction.cs +++ b/src/Files.App/Actions/Content/Run/RunWithPowershellAction.cs @@ -5,7 +5,7 @@ namespace Files.App.Actions { - internal class RunWithPowershellAction : ObservableObject, IAction + internal sealed class RunWithPowershellAction : ObservableObject, IAction { private readonly IContentPageContext context; diff --git a/src/Files.App/Actions/Content/Selection/ClearSelectionAction.cs b/src/Files.App/Actions/Content/Selection/ClearSelectionAction.cs index b9d10dec465c..8ff04a9617fa 100644 --- a/src/Files.App/Actions/Content/Selection/ClearSelectionAction.cs +++ b/src/Files.App/Actions/Content/Selection/ClearSelectionAction.cs @@ -3,7 +3,7 @@ namespace Files.App.Actions { - internal class ClearSelectionAction : IAction + internal sealed class ClearSelectionAction : IAction { private readonly IContentPageContext context; diff --git a/src/Files.App/Actions/Content/Selection/InvertSelectionAction.cs b/src/Files.App/Actions/Content/Selection/InvertSelectionAction.cs index c58ec5f8867e..f904c4a1d685 100644 --- a/src/Files.App/Actions/Content/Selection/InvertSelectionAction.cs +++ b/src/Files.App/Actions/Content/Selection/InvertSelectionAction.cs @@ -3,7 +3,7 @@ namespace Files.App.Actions { - internal class InvertSelectionAction : IAction + internal sealed class InvertSelectionAction : IAction { private readonly IContentPageContext context; diff --git a/src/Files.App/Actions/Content/Selection/SelectAllAction.cs b/src/Files.App/Actions/Content/Selection/SelectAllAction.cs index 2d1713d8a869..a44503b7b53c 100644 --- a/src/Files.App/Actions/Content/Selection/SelectAllAction.cs +++ b/src/Files.App/Actions/Content/Selection/SelectAllAction.cs @@ -3,7 +3,7 @@ namespace Files.App.Actions { - internal class SelectAllAction : IAction + internal sealed class SelectAllAction : IAction { private readonly IContentPageContext context; diff --git a/src/Files.App/Actions/Content/Selection/ToggleSelectAction.cs b/src/Files.App/Actions/Content/Selection/ToggleSelectAction.cs index ec0d303a22e4..008217df69fe 100644 --- a/src/Files.App/Actions/Content/Selection/ToggleSelectAction.cs +++ b/src/Files.App/Actions/Content/Selection/ToggleSelectAction.cs @@ -6,7 +6,7 @@ namespace Files.App.Actions { - internal class ToggleSelectAction : IAction + internal sealed class ToggleSelectAction : IAction { public string Label => "ToggleSelect".GetLocalizedResource(); diff --git a/src/Files.App/Actions/Content/Share/ShareItemAction.cs b/src/Files.App/Actions/Content/Share/ShareItemAction.cs index bc6cceb3d309..af7252267178 100644 --- a/src/Files.App/Actions/Content/Share/ShareItemAction.cs +++ b/src/Files.App/Actions/Content/Share/ShareItemAction.cs @@ -5,7 +5,7 @@ namespace Files.App.Actions { - internal class ShareItemAction : ObservableObject, IAction + internal sealed class ShareItemAction : ObservableObject, IAction { private readonly IContentPageContext context; diff --git a/src/Files.App/Actions/Display/GroupAction.cs b/src/Files.App/Actions/Display/GroupAction.cs index e730a0d0ea92..02887e25fe66 100644 --- a/src/Files.App/Actions/Display/GroupAction.cs +++ b/src/Files.App/Actions/Display/GroupAction.cs @@ -3,7 +3,7 @@ namespace Files.App.Actions { - internal class GroupByNoneAction : GroupByAction + internal sealed class GroupByNoneAction : GroupByAction { protected override GroupOption GroupOption => GroupOption.None; @@ -15,7 +15,7 @@ public override string Description => "GroupByNoneDescription".GetLocalizedResource(); } - internal class GroupByNameAction : GroupByAction + internal sealed class GroupByNameAction : GroupByAction { protected override GroupOption GroupOption => GroupOption.Name; @@ -27,7 +27,7 @@ public override string Description => "GroupByNameDescription".GetLocalizedResource(); } - internal class GroupByDateModifiedAction : GroupByAction + internal sealed class GroupByDateModifiedAction : GroupByAction { protected override GroupOption GroupOption => GroupOption.DateModified; @@ -39,7 +39,7 @@ public override string Description => "GroupByDateModifiedDescription".GetLocalizedResource(); } - internal class GroupByDateCreatedAction : GroupByAction + internal sealed class GroupByDateCreatedAction : GroupByAction { protected override GroupOption GroupOption => GroupOption.DateCreated; @@ -51,7 +51,7 @@ public override string Description => "GroupByDateCreatedDescription".GetLocalizedResource(); } - internal class GroupBySizeAction : GroupByAction + internal sealed class GroupBySizeAction : GroupByAction { protected override GroupOption GroupOption => GroupOption.Size; @@ -63,7 +63,7 @@ public override string Description => "GroupBySizeDescription".GetLocalizedResource(); } - internal class GroupByTypeAction : GroupByAction + internal sealed class GroupByTypeAction : GroupByAction { protected override GroupOption GroupOption => GroupOption.FileType; @@ -75,7 +75,7 @@ public override string Description => "GroupByTypeDescription".GetLocalizedResource(); } - internal class GroupBySyncStatusAction : GroupByAction + internal sealed class GroupBySyncStatusAction : GroupByAction { protected override GroupOption GroupOption => GroupOption.SyncStatus; @@ -90,7 +90,7 @@ protected override bool GetIsExecutable(ContentPageTypes pageType) => pageType is ContentPageTypes.CloudDrive; } - internal class GroupByTagAction : GroupByAction + internal sealed class GroupByTagAction : GroupByAction { protected override GroupOption GroupOption => GroupOption.FileTag; @@ -102,7 +102,7 @@ public override string Description => "GroupByTagDescription".GetLocalizedResource(); } - internal class GroupByOriginalFolderAction : GroupByAction + internal sealed class GroupByOriginalFolderAction : GroupByAction { protected override GroupOption GroupOption => GroupOption.OriginalFolder; @@ -117,7 +117,7 @@ protected override bool GetIsExecutable(ContentPageTypes pageType) => pageType is ContentPageTypes.RecycleBin; } - internal class GroupByDateDeletedAction : GroupByAction + internal sealed class GroupByDateDeletedAction : GroupByAction { protected override GroupOption GroupOption => GroupOption.DateDeleted; @@ -132,7 +132,7 @@ protected override bool GetIsExecutable(ContentPageTypes pageType) => pageType is ContentPageTypes.RecycleBin; } - internal class GroupByFolderPathAction : GroupByAction + internal sealed class GroupByFolderPathAction : GroupByAction { protected override GroupOption GroupOption => GroupOption.FolderPath; @@ -199,7 +199,7 @@ private void DisplayContext_PropertyChanged(object? sender, PropertyChangedEvent } } - internal class GroupByDateModifiedYearAction : GroupByDateAction + internal sealed class GroupByDateModifiedYearAction : GroupByDateAction { protected override GroupOption GroupOption => GroupOption.DateModified; @@ -214,7 +214,7 @@ public override string Description => "GroupByDateModifiedYearDescription".GetLocalizedResource(); } - internal class GroupByDateModifiedMonthAction : GroupByDateAction + internal sealed class GroupByDateModifiedMonthAction : GroupByDateAction { protected override GroupOption GroupOption => GroupOption.DateModified; @@ -229,7 +229,7 @@ public override string Description => "GroupByDateModifiedMonthDescription".GetLocalizedResource(); } - internal class GroupByDateModifiedDayAction : GroupByDateAction + internal sealed class GroupByDateModifiedDayAction : GroupByDateAction { protected override GroupOption GroupOption => GroupOption.DateModified; @@ -244,7 +244,7 @@ public override string Description => "GroupByDateModifiedDayDescription".GetLocalizedResource(); } - internal class GroupByDateCreatedYearAction : GroupByDateAction + internal sealed class GroupByDateCreatedYearAction : GroupByDateAction { protected override GroupOption GroupOption => GroupOption.DateCreated; @@ -259,7 +259,7 @@ public override string Description => "GroupByDateCreatedYearDescription".GetLocalizedResource(); } - internal class GroupByDateCreatedMonthAction : GroupByDateAction + internal sealed class GroupByDateCreatedMonthAction : GroupByDateAction { protected override GroupOption GroupOption => GroupOption.DateCreated; @@ -274,7 +274,7 @@ public override string Description => "GroupByDateCreatedMonthDescription".GetLocalizedResource(); } - internal class GroupByDateCreatedDayAction : GroupByDateAction + internal sealed class GroupByDateCreatedDayAction : GroupByDateAction { protected override GroupOption GroupOption => GroupOption.DateCreated; @@ -289,7 +289,7 @@ public override string Description => "GroupByDateCreatedDayDescription".GetLocalizedResource(); } - internal class GroupByDateDeletedYearAction : GroupByDateAction + internal sealed class GroupByDateDeletedYearAction : GroupByDateAction { protected override GroupOption GroupOption => GroupOption.DateDeleted; @@ -307,7 +307,7 @@ protected override bool GetIsExecutable(ContentPageTypes pageType) => pageType is ContentPageTypes.RecycleBin; } - internal class GroupByDateDeletedMonthAction : GroupByDateAction + internal sealed class GroupByDateDeletedMonthAction : GroupByDateAction { protected override GroupOption GroupOption => GroupOption.DateDeleted; @@ -325,7 +325,7 @@ protected override bool GetIsExecutable(ContentPageTypes pageType) => pageType is ContentPageTypes.RecycleBin; } - internal class GroupByDateDeletedDayAction : GroupByDateAction + internal sealed class GroupByDateDeletedDayAction : GroupByDateAction { protected override GroupOption GroupOption => GroupOption.DateDeleted; @@ -399,7 +399,7 @@ private void DisplayContext_PropertyChanged(object? sender, PropertyChangedEvent } } - internal class GroupAscendingAction : ObservableObject, IToggleAction + internal sealed class GroupAscendingAction : ObservableObject, IToggleAction { private readonly IDisplayPageContext context; @@ -443,7 +443,7 @@ private void Context_PropertyChanged(object? sender, PropertyChangedEventArgs e) } } - internal class GroupDescendingAction : ObservableObject, IToggleAction + internal sealed class GroupDescendingAction : ObservableObject, IToggleAction { private readonly IDisplayPageContext context; @@ -487,7 +487,7 @@ private void Context_PropertyChanged(object? sender, PropertyChangedEventArgs e) } } - internal class ToggleGroupDirectionAction : IAction + internal sealed class ToggleGroupDirectionAction : IAction { private readonly IDisplayPageContext context; @@ -510,7 +510,7 @@ public Task ExecuteAsync() } } - internal class GroupByYearAction : ObservableObject, IToggleAction + internal sealed class GroupByYearAction : ObservableObject, IToggleAction { private readonly IDisplayPageContext context; @@ -554,7 +554,7 @@ private void Context_PropertyChanged(object? sender, PropertyChangedEventArgs e) } } - internal class GroupByMonthAction : ObservableObject, IToggleAction + internal sealed class GroupByMonthAction : ObservableObject, IToggleAction { private readonly IDisplayPageContext context; @@ -598,7 +598,7 @@ private void Context_PropertyChanged(object? sender, PropertyChangedEventArgs e) } } - internal class ToggleGroupByDateUnitAction : IAction + internal sealed class ToggleGroupByDateUnitAction : IAction { private readonly IDisplayPageContext context; diff --git a/src/Files.App/Actions/Display/LayoutAction.cs b/src/Files.App/Actions/Display/LayoutAction.cs index b0783fec5d5c..2638fdf0c493 100644 --- a/src/Files.App/Actions/Display/LayoutAction.cs +++ b/src/Files.App/Actions/Display/LayoutAction.cs @@ -3,7 +3,7 @@ namespace Files.App.Actions { - internal class LayoutDetailsAction : ToggleLayoutAction + internal sealed class LayoutDetailsAction : ToggleLayoutAction { protected override LayoutTypes LayoutType => LayoutTypes.Details; @@ -21,7 +21,7 @@ public override HotKey HotKey => new(Keys.Number1, KeyModifiers.CtrlShift); } - internal class LayoutListAction : ToggleLayoutAction + internal sealed class LayoutListAction : ToggleLayoutAction { protected override LayoutTypes LayoutType => LayoutTypes.List; @@ -39,7 +39,7 @@ public override HotKey HotKey => new(Keys.Number2, KeyModifiers.CtrlShift); } - internal class LayoutTilesAction : ToggleLayoutAction + internal sealed class LayoutTilesAction : ToggleLayoutAction { protected override LayoutTypes LayoutType => LayoutTypes.Tiles; @@ -57,7 +57,7 @@ public override HotKey HotKey => new(Keys.Number3, KeyModifiers.CtrlShift); } - internal class LayoutGridAction : ToggleLayoutAction + internal sealed class LayoutGridAction : ToggleLayoutAction { protected override LayoutTypes LayoutType => LayoutTypes.Grid; @@ -75,7 +75,7 @@ public override HotKey HotKey => new(Keys.Number4, KeyModifiers.CtrlShift); } - internal class LayoutColumnsAction : ToggleLayoutAction + internal sealed class LayoutColumnsAction : ToggleLayoutAction { protected override LayoutTypes LayoutType => LayoutTypes.Columns; @@ -93,7 +93,7 @@ public override HotKey HotKey => new(Keys.Number5, KeyModifiers.CtrlShift); } - internal class LayoutAdaptiveAction : ToggleLayoutAction + internal sealed class LayoutAdaptiveAction : ToggleLayoutAction { protected override LayoutTypes LayoutType => LayoutTypes.Adaptive; @@ -168,7 +168,7 @@ protected virtual void OnContextChanged(string propertyName) } } - internal class LayoutDecreaseSizeAction : ObservableObject, IAction + internal sealed class LayoutDecreaseSizeAction : ObservableObject, IAction { private static readonly IUserSettingsService UserSettingsService = Ioc.Default.GetRequiredService(); private readonly IDisplayPageContext DisplayPageContext = Ioc.Default.GetRequiredService(); @@ -261,7 +261,7 @@ public Task ExecuteAsync() } } - internal class LayoutIncreaseSizeAction : ObservableObject, IAction + internal sealed class LayoutIncreaseSizeAction : ObservableObject, IAction { private static readonly IUserSettingsService UserSettingsService = Ioc.Default.GetRequiredService(); private readonly IDisplayPageContext DisplayPageContext = Ioc.Default.GetRequiredService(); diff --git a/src/Files.App/Actions/Display/SortAction.cs b/src/Files.App/Actions/Display/SortAction.cs index 7c83d1911a7e..857a91d72073 100644 --- a/src/Files.App/Actions/Display/SortAction.cs +++ b/src/Files.App/Actions/Display/SortAction.cs @@ -3,7 +3,7 @@ namespace Files.App.Actions { - internal class SortByNameAction : SortByAction + internal sealed class SortByNameAction : SortByAction { protected override SortOption SortOption => SortOption.Name; @@ -15,7 +15,7 @@ public override string Description => "SortByNameDescription".GetLocalizedResource(); } - internal class SortByDateModifiedAction : SortByAction + internal sealed class SortByDateModifiedAction : SortByAction { protected override SortOption SortOption => SortOption.DateModified; @@ -27,7 +27,7 @@ public override string Description => "SortByDateModifiedDescription".GetLocalizedResource(); } - internal class SortByDateCreatedAction : SortByAction + internal sealed class SortByDateCreatedAction : SortByAction { protected override SortOption SortOption => SortOption.DateCreated; @@ -39,7 +39,7 @@ public override string Description => "SortByDateCreatedDescription".GetLocalizedResource(); } - internal class SortBySizeAction : SortByAction + internal sealed class SortBySizeAction : SortByAction { protected override SortOption SortOption => SortOption.Size; @@ -51,7 +51,7 @@ public override string Description => "SortBySizeDescription".GetLocalizedResource(); } - internal class SortByTypeAction : SortByAction + internal sealed class SortByTypeAction : SortByAction { protected override SortOption SortOption => SortOption.FileType; @@ -63,7 +63,7 @@ public override string Description => "SortByTypeDescription".GetLocalizedResource(); } - internal class SortBySyncStatusAction : SortByAction + internal sealed class SortBySyncStatusAction : SortByAction { protected override SortOption SortOption => SortOption.SyncStatus; @@ -78,7 +78,7 @@ protected override bool GetIsExecutable(ContentPageTypes pageType) => pageType is ContentPageTypes.CloudDrive; } - internal class SortByTagAction : SortByAction + internal sealed class SortByTagAction : SortByAction { protected override SortOption SortOption => SortOption.FileTag; @@ -90,7 +90,7 @@ public override string Description => "SortByTagDescription".GetLocalizedResource(); } - internal class SortByPathAction : SortByAction + internal sealed class SortByPathAction : SortByAction { protected override SortOption SortOption => SortOption.Path; @@ -105,7 +105,7 @@ protected override bool GetIsExecutable(ContentPageTypes pageType) => pageType is ContentPageTypes.SearchResults; } - internal class SortByOriginalFolderAction : SortByAction + internal sealed class SortByOriginalFolderAction : SortByAction { protected override SortOption SortOption => SortOption.OriginalFolder; @@ -120,7 +120,7 @@ protected override bool GetIsExecutable(ContentPageTypes pageType) => pageType is ContentPageTypes.RecycleBin; } - internal class SortByDateDeletedAction : SortByAction + internal sealed class SortByDateDeletedAction : SortByAction { protected override SortOption SortOption => SortOption.DateDeleted; @@ -184,7 +184,7 @@ private void DisplayContext_PropertyChanged(object? sender, PropertyChangedEvent } } - internal class SortAscendingAction : ObservableObject, IToggleAction + internal sealed class SortAscendingAction : ObservableObject, IToggleAction { private readonly IDisplayPageContext context; @@ -218,7 +218,7 @@ private void Context_PropertyChanged(object? sender, PropertyChangedEventArgs e) } } - internal class SortDescendingAction : ObservableObject, IToggleAction + internal sealed class SortDescendingAction : ObservableObject, IToggleAction { private readonly IDisplayPageContext context; @@ -252,7 +252,7 @@ private void Context_PropertyChanged(object? sender, PropertyChangedEventArgs e) } } - internal class ToggleSortDirectionAction : IAction + internal sealed class ToggleSortDirectionAction : IAction { private readonly IDisplayPageContext context; diff --git a/src/Files.App/Actions/Display/SortFilesAndFoldersTogetherAction.cs b/src/Files.App/Actions/Display/SortFilesAndFoldersTogetherAction.cs index 9ede1ef4e88f..d086370e2abc 100644 --- a/src/Files.App/Actions/Display/SortFilesAndFoldersTogetherAction.cs +++ b/src/Files.App/Actions/Display/SortFilesAndFoldersTogetherAction.cs @@ -3,7 +3,7 @@ namespace Files.App.Actions { - internal class SortFilesAndFoldersTogetherAction : ObservableObject, IToggleAction + internal sealed class SortFilesAndFoldersTogetherAction : ObservableObject, IToggleAction { private readonly IDisplayPageContext context; diff --git a/src/Files.App/Actions/Display/SortFilesFirstAction.cs b/src/Files.App/Actions/Display/SortFilesFirstAction.cs index 7009f4816ad7..3b66f2b8ac46 100644 --- a/src/Files.App/Actions/Display/SortFilesFirstAction.cs +++ b/src/Files.App/Actions/Display/SortFilesFirstAction.cs @@ -3,7 +3,7 @@ namespace Files.App.Actions { - internal class SortFilesFirstAction : ObservableObject, IToggleAction + internal sealed class SortFilesFirstAction : ObservableObject, IToggleAction { private readonly IDisplayPageContext context; diff --git a/src/Files.App/Actions/Display/SortFoldersFirstAction.cs b/src/Files.App/Actions/Display/SortFoldersFirstAction.cs index 43e19a87a057..21fe6ae27816 100644 --- a/src/Files.App/Actions/Display/SortFoldersFirstAction.cs +++ b/src/Files.App/Actions/Display/SortFoldersFirstAction.cs @@ -3,7 +3,7 @@ namespace Files.App.Actions { - internal class SortFoldersFirstAction : ObservableObject, IToggleAction + internal sealed class SortFoldersFirstAction : ObservableObject, IToggleAction { private readonly IDisplayPageContext context; diff --git a/src/Files.App/Actions/FileSystem/AddItemAction.cs b/src/Files.App/Actions/FileSystem/AddItemAction.cs index baacb0a218bb..39ad838d71be 100644 --- a/src/Files.App/Actions/FileSystem/AddItemAction.cs +++ b/src/Files.App/Actions/FileSystem/AddItemAction.cs @@ -3,7 +3,7 @@ namespace Files.App.Actions { - internal class AddItemAction : ObservableObject, IAction + internal sealed class AddItemAction : ObservableObject, IAction { private readonly IContentPageContext context; diff --git a/src/Files.App/Actions/FileSystem/CopyItemAction.cs b/src/Files.App/Actions/FileSystem/CopyItemAction.cs index 78f23a75cea4..1216da7ad4cc 100644 --- a/src/Files.App/Actions/FileSystem/CopyItemAction.cs +++ b/src/Files.App/Actions/FileSystem/CopyItemAction.cs @@ -3,7 +3,7 @@ namespace Files.App.Actions { - internal class CopyItemAction : ObservableObject, IAction + internal sealed class CopyItemAction : ObservableObject, IAction { private readonly IContentPageContext context; diff --git a/src/Files.App/Actions/FileSystem/CopyPathAction.cs b/src/Files.App/Actions/FileSystem/CopyPathAction.cs index 6afe6ce81066..4a4292433ba1 100644 --- a/src/Files.App/Actions/FileSystem/CopyPathAction.cs +++ b/src/Files.App/Actions/FileSystem/CopyPathAction.cs @@ -5,7 +5,7 @@ namespace Files.App.Actions { - internal class CopyPathAction : IAction + internal sealed class CopyPathAction : IAction { private readonly IContentPageContext context; diff --git a/src/Files.App/Actions/FileSystem/CopyPathWithQuotesAction.cs b/src/Files.App/Actions/FileSystem/CopyPathWithQuotesAction.cs index 48d8b01cb36d..5cf56cefd12d 100644 --- a/src/Files.App/Actions/FileSystem/CopyPathWithQuotesAction.cs +++ b/src/Files.App/Actions/FileSystem/CopyPathWithQuotesAction.cs @@ -5,7 +5,7 @@ namespace Files.App.Actions { - internal class CopyPathWithQuotesAction : IAction + internal sealed class CopyPathWithQuotesAction : IAction { private readonly IContentPageContext context; diff --git a/src/Files.App/Actions/FileSystem/CreateFolderAction.cs b/src/Files.App/Actions/FileSystem/CreateFolderAction.cs index 31312e6ff50a..a326def3c76d 100644 --- a/src/Files.App/Actions/FileSystem/CreateFolderAction.cs +++ b/src/Files.App/Actions/FileSystem/CreateFolderAction.cs @@ -3,7 +3,7 @@ namespace Files.App.Actions { - internal class CreateFolderAction : BaseUIAction, IAction + internal sealed class CreateFolderAction : BaseUIAction, IAction { private readonly IContentPageContext context; diff --git a/src/Files.App/Actions/FileSystem/CreateFolderWithSelectionAction.cs b/src/Files.App/Actions/FileSystem/CreateFolderWithSelectionAction.cs index d27410c5dac8..03bf1dbedb01 100644 --- a/src/Files.App/Actions/FileSystem/CreateFolderWithSelectionAction.cs +++ b/src/Files.App/Actions/FileSystem/CreateFolderWithSelectionAction.cs @@ -3,7 +3,7 @@ namespace Files.App.Actions { - internal class CreateFolderWithSelectionAction : ObservableObject, IAction + internal sealed class CreateFolderWithSelectionAction : ObservableObject, IAction { private readonly IContentPageContext context; diff --git a/src/Files.App/Actions/FileSystem/CreateShortcutAction.cs b/src/Files.App/Actions/FileSystem/CreateShortcutAction.cs index c9c727f92526..069ce929e0eb 100644 --- a/src/Files.App/Actions/FileSystem/CreateShortcutAction.cs +++ b/src/Files.App/Actions/FileSystem/CreateShortcutAction.cs @@ -3,7 +3,7 @@ namespace Files.App.Actions { - internal class CreateShortcutAction : BaseUIAction, IAction + internal sealed class CreateShortcutAction : BaseUIAction, IAction { private readonly IContentPageContext context; diff --git a/src/Files.App/Actions/FileSystem/CreateShortcutFromDialogAction.cs b/src/Files.App/Actions/FileSystem/CreateShortcutFromDialogAction.cs index 3f014af2ba01..9e1d8e3d5387 100644 --- a/src/Files.App/Actions/FileSystem/CreateShortcutFromDialogAction.cs +++ b/src/Files.App/Actions/FileSystem/CreateShortcutFromDialogAction.cs @@ -3,7 +3,7 @@ namespace Files.App.Actions { - internal class CreateShortcutFromDialogAction : BaseUIAction, IAction + internal sealed class CreateShortcutFromDialogAction : BaseUIAction, IAction { private readonly IContentPageContext context; diff --git a/src/Files.App/Actions/FileSystem/CutItemAction.cs b/src/Files.App/Actions/FileSystem/CutItemAction.cs index ee0460f2b6a9..d62cc7805e73 100644 --- a/src/Files.App/Actions/FileSystem/CutItemAction.cs +++ b/src/Files.App/Actions/FileSystem/CutItemAction.cs @@ -3,7 +3,7 @@ namespace Files.App.Actions { - internal class CutItemAction : ObservableObject, IAction + internal sealed class CutItemAction : ObservableObject, IAction { private readonly IContentPageContext context; diff --git a/src/Files.App/Actions/FileSystem/DeleteItemAction.cs b/src/Files.App/Actions/FileSystem/DeleteItemAction.cs index 78eb08d3b02e..5d8e4a257092 100644 --- a/src/Files.App/Actions/FileSystem/DeleteItemAction.cs +++ b/src/Files.App/Actions/FileSystem/DeleteItemAction.cs @@ -3,7 +3,7 @@ namespace Files.App.Actions { - internal class DeleteItemAction : BaseDeleteAction, IAction + internal sealed class DeleteItemAction : BaseDeleteAction, IAction { public string Label => "Delete".GetLocalizedResource(); diff --git a/src/Files.App/Actions/FileSystem/DeleteItemPermanentlyAction.cs b/src/Files.App/Actions/FileSystem/DeleteItemPermanentlyAction.cs index 509dc578730c..358cc087927f 100644 --- a/src/Files.App/Actions/FileSystem/DeleteItemPermanentlyAction.cs +++ b/src/Files.App/Actions/FileSystem/DeleteItemPermanentlyAction.cs @@ -3,7 +3,7 @@ namespace Files.App.Actions { - internal class DeleteItemPermanentlyAction : BaseDeleteAction, IAction + internal sealed class DeleteItemPermanentlyAction : BaseDeleteAction, IAction { public string Label => "DeletePermanently".GetLocalizedResource(); diff --git a/src/Files.App/Actions/FileSystem/EmptyRecycleBinAction.cs b/src/Files.App/Actions/FileSystem/EmptyRecycleBinAction.cs index 2d90624db346..182e5a96413e 100644 --- a/src/Files.App/Actions/FileSystem/EmptyRecycleBinAction.cs +++ b/src/Files.App/Actions/FileSystem/EmptyRecycleBinAction.cs @@ -3,7 +3,7 @@ namespace Files.App.Actions { - internal class EmptyRecycleBinAction : BaseUIAction, IAction + internal sealed class EmptyRecycleBinAction : BaseUIAction, IAction { private readonly IContentPageContext context; diff --git a/src/Files.App/Actions/FileSystem/FormatDriveAction.cs b/src/Files.App/Actions/FileSystem/FormatDriveAction.cs index d0836bfd387f..4dde94dad99e 100644 --- a/src/Files.App/Actions/FileSystem/FormatDriveAction.cs +++ b/src/Files.App/Actions/FileSystem/FormatDriveAction.cs @@ -5,7 +5,7 @@ namespace Files.App.Actions { - internal class FormatDriveAction : ObservableObject, IAction + internal sealed class FormatDriveAction : ObservableObject, IAction { private readonly IContentPageContext context; diff --git a/src/Files.App/Actions/FileSystem/OpenFileLocationAction.cs b/src/Files.App/Actions/FileSystem/OpenFileLocationAction.cs index 86676cb5f857..cbbf1e54e8ac 100644 --- a/src/Files.App/Actions/FileSystem/OpenFileLocationAction.cs +++ b/src/Files.App/Actions/FileSystem/OpenFileLocationAction.cs @@ -5,7 +5,7 @@ namespace Files.App.Actions { - internal class OpenFileLocationAction : ObservableObject, IAction + internal sealed class OpenFileLocationAction : ObservableObject, IAction { private readonly IContentPageContext context; diff --git a/src/Files.App/Actions/FileSystem/OpenItemAction.cs b/src/Files.App/Actions/FileSystem/OpenItemAction.cs index 2664b4cdaf74..2227fe21f2a1 100644 --- a/src/Files.App/Actions/FileSystem/OpenItemAction.cs +++ b/src/Files.App/Actions/FileSystem/OpenItemAction.cs @@ -6,7 +6,7 @@ namespace Files.App.Actions { - internal class OpenItemAction : ObservableObject, IAction + internal sealed class OpenItemAction : ObservableObject, IAction { private readonly IContentPageContext context; @@ -52,7 +52,7 @@ private void Context_PropertyChanged(object? sender, PropertyChangedEventArgs e) } } - internal class OpenItemWithApplicationPickerAction : ObservableObject, IAction + internal sealed class OpenItemWithApplicationPickerAction : ObservableObject, IAction { private readonly IContentPageContext context; @@ -93,7 +93,7 @@ private void Context_PropertyChanged(object? sender, PropertyChangedEventArgs e) } } - internal class OpenParentFolderAction : ObservableObject, IAction + internal sealed class OpenParentFolderAction : ObservableObject, IAction { private readonly IContentPageContext context; diff --git a/src/Files.App/Actions/FileSystem/PasteItemAction.cs b/src/Files.App/Actions/FileSystem/PasteItemAction.cs index 2a6337c9fe67..3deebf3bbc40 100644 --- a/src/Files.App/Actions/FileSystem/PasteItemAction.cs +++ b/src/Files.App/Actions/FileSystem/PasteItemAction.cs @@ -11,7 +11,7 @@ namespace Files.App.Actions { - internal class PasteItemAction : ObservableObject, IAction + internal sealed class PasteItemAction : ObservableObject, IAction { private readonly IContentPageContext context; diff --git a/src/Files.App/Actions/FileSystem/PasteItemToSelectionAction.cs b/src/Files.App/Actions/FileSystem/PasteItemToSelectionAction.cs index c38f85852670..d647e2c49e8d 100644 --- a/src/Files.App/Actions/FileSystem/PasteItemToSelectionAction.cs +++ b/src/Files.App/Actions/FileSystem/PasteItemToSelectionAction.cs @@ -3,7 +3,7 @@ namespace Files.App.Actions { - internal class PasteItemToSelectionAction : BaseUIAction, IAction + internal sealed class PasteItemToSelectionAction : BaseUIAction, IAction { private readonly IContentPageContext context; diff --git a/src/Files.App/Actions/FileSystem/RenameAction.cs b/src/Files.App/Actions/FileSystem/RenameAction.cs index c1ae949ec5cc..6ef316a8d9db 100644 --- a/src/Files.App/Actions/FileSystem/RenameAction.cs +++ b/src/Files.App/Actions/FileSystem/RenameAction.cs @@ -3,7 +3,7 @@ namespace Files.App.Actions { - internal class RenameAction : ObservableObject, IAction + internal sealed class RenameAction : ObservableObject, IAction { private readonly IContentPageContext context; diff --git a/src/Files.App/Actions/FileSystem/RestoreAllRecycleBinAction.cs b/src/Files.App/Actions/FileSystem/RestoreAllRecycleBinAction.cs index 3f1260ce1b3b..34c49842b3f1 100644 --- a/src/Files.App/Actions/FileSystem/RestoreAllRecycleBinAction.cs +++ b/src/Files.App/Actions/FileSystem/RestoreAllRecycleBinAction.cs @@ -3,7 +3,7 @@ namespace Files.App.Actions { - internal class RestoreAllRecycleBinAction : BaseUIAction, IAction + internal sealed class RestoreAllRecycleBinAction : BaseUIAction, IAction { public string Label => "RestoreAllItems".GetLocalizedResource(); diff --git a/src/Files.App/Actions/FileSystem/RestoreRecycleBinAction.cs b/src/Files.App/Actions/FileSystem/RestoreRecycleBinAction.cs index 92dc769a9181..3f23a606ce1d 100644 --- a/src/Files.App/Actions/FileSystem/RestoreRecycleBinAction.cs +++ b/src/Files.App/Actions/FileSystem/RestoreRecycleBinAction.cs @@ -3,7 +3,7 @@ namespace Files.App.Actions { - internal class RestoreRecycleBinAction : BaseUIAction, IAction + internal sealed class RestoreRecycleBinAction : BaseUIAction, IAction { private readonly IContentPageContext context; diff --git a/src/Files.App/Actions/Git/GitFetchAction.cs b/src/Files.App/Actions/Git/GitFetchAction.cs index 43092031a730..77562f72d3e1 100644 --- a/src/Files.App/Actions/Git/GitFetchAction.cs +++ b/src/Files.App/Actions/Git/GitFetchAction.cs @@ -3,7 +3,7 @@ namespace Files.App.Actions { - internal class GitFetchAction : ObservableObject, IAction + internal sealed class GitFetchAction : ObservableObject, IAction { private readonly IContentPageContext _context; diff --git a/src/Files.App/Actions/Git/GitPullAction.cs b/src/Files.App/Actions/Git/GitPullAction.cs index 20e63b93f053..d94726175e06 100644 --- a/src/Files.App/Actions/Git/GitPullAction.cs +++ b/src/Files.App/Actions/Git/GitPullAction.cs @@ -3,7 +3,7 @@ namespace Files.App.Actions { - internal class GitPullAction : ObservableObject, IAction + internal sealed class GitPullAction : ObservableObject, IAction { private readonly IContentPageContext _context; diff --git a/src/Files.App/Actions/Git/GitPushAction.cs b/src/Files.App/Actions/Git/GitPushAction.cs index 90e31e720a89..312da7b05b3c 100644 --- a/src/Files.App/Actions/Git/GitPushAction.cs +++ b/src/Files.App/Actions/Git/GitPushAction.cs @@ -3,7 +3,7 @@ namespace Files.App.Actions { - internal class GitPushAction : ObservableObject, IAction + internal sealed class GitPushAction : ObservableObject, IAction { private readonly IContentPageContext _context; diff --git a/src/Files.App/Actions/Git/GitSyncAction.cs b/src/Files.App/Actions/Git/GitSyncAction.cs index 6d1f18529503..ae1e964c3b56 100644 --- a/src/Files.App/Actions/Git/GitSyncAction.cs +++ b/src/Files.App/Actions/Git/GitSyncAction.cs @@ -3,7 +3,7 @@ namespace Files.App.Actions { - internal class GitSyncAction : ObservableObject, IAction + internal sealed class GitSyncAction : ObservableObject, IAction { private readonly IContentPageContext _context; diff --git a/src/Files.App/Actions/Global/EditPathAction.cs b/src/Files.App/Actions/Global/EditPathAction.cs index f2511d731f49..a1ea2c3039d3 100644 --- a/src/Files.App/Actions/Global/EditPathAction.cs +++ b/src/Files.App/Actions/Global/EditPathAction.cs @@ -3,7 +3,7 @@ namespace Files.App.Actions { - internal class EditPathAction : IAction + internal sealed class EditPathAction : IAction { private readonly IContentPageContext context; diff --git a/src/Files.App/Actions/Global/EnterCompactOverlayAction.cs b/src/Files.App/Actions/Global/EnterCompactOverlayAction.cs index 77c5b59cf664..33716116dcc3 100644 --- a/src/Files.App/Actions/Global/EnterCompactOverlayAction.cs +++ b/src/Files.App/Actions/Global/EnterCompactOverlayAction.cs @@ -6,7 +6,7 @@ namespace Files.App.Actions { - internal class EnterCompactOverlayAction : ObservableObject, IAction + internal sealed class EnterCompactOverlayAction : ObservableObject, IAction { private readonly IWindowContext windowContext; diff --git a/src/Files.App/Actions/Global/ExitCompactOverlayAction.cs b/src/Files.App/Actions/Global/ExitCompactOverlayAction.cs index bd1eab02d916..ab0b4c7b7ae7 100644 --- a/src/Files.App/Actions/Global/ExitCompactOverlayAction.cs +++ b/src/Files.App/Actions/Global/ExitCompactOverlayAction.cs @@ -5,7 +5,7 @@ namespace Files.App.Actions { - internal class ExitCompactOverlayAction : ObservableObject, IAction + internal sealed class ExitCompactOverlayAction : ObservableObject, IAction { private readonly IWindowContext windowContext; diff --git a/src/Files.App/Actions/Global/OpenHelpAction.cs b/src/Files.App/Actions/Global/OpenHelpAction.cs index 6a18d32cd514..4b04faf30b84 100644 --- a/src/Files.App/Actions/Global/OpenHelpAction.cs +++ b/src/Files.App/Actions/Global/OpenHelpAction.cs @@ -5,7 +5,7 @@ namespace Files.App.Actions { - internal class OpenHelpAction : IAction + internal sealed class OpenHelpAction : IAction { public string Label => "Help".GetLocalizedResource(); diff --git a/src/Files.App/Actions/Global/RedoAction.cs b/src/Files.App/Actions/Global/RedoAction.cs index c25322335e5e..8896e23a73d6 100644 --- a/src/Files.App/Actions/Global/RedoAction.cs +++ b/src/Files.App/Actions/Global/RedoAction.cs @@ -3,7 +3,7 @@ namespace Files.App.Actions { - internal class RedoAction : ObservableObject, IAction + internal sealed class RedoAction : ObservableObject, IAction { private readonly IContentPageContext context; diff --git a/src/Files.App/Actions/Global/SearchAction.cs b/src/Files.App/Actions/Global/SearchAction.cs index f121a9836705..feb829771951 100644 --- a/src/Files.App/Actions/Global/SearchAction.cs +++ b/src/Files.App/Actions/Global/SearchAction.cs @@ -3,7 +3,7 @@ namespace Files.App.Actions { - internal class SearchAction : ObservableObject, IAction + internal sealed class SearchAction : ObservableObject, IAction { private readonly IContentPageContext context; diff --git a/src/Files.App/Actions/Global/ToggleCompactOverlayAction.cs b/src/Files.App/Actions/Global/ToggleCompactOverlayAction.cs index fb745ad5f25a..2a50afdf7b40 100644 --- a/src/Files.App/Actions/Global/ToggleCompactOverlayAction.cs +++ b/src/Files.App/Actions/Global/ToggleCompactOverlayAction.cs @@ -6,7 +6,7 @@ namespace Files.App.Actions { - internal class ToggleCompactOverlayAction : ObservableObject, IToggleAction + internal sealed class ToggleCompactOverlayAction : ObservableObject, IToggleAction { private readonly IWindowContext windowContext; diff --git a/src/Files.App/Actions/Global/ToggleFullScreenAction.cs b/src/Files.App/Actions/Global/ToggleFullScreenAction.cs index 88c14385cabd..aebb2a852c05 100644 --- a/src/Files.App/Actions/Global/ToggleFullScreenAction.cs +++ b/src/Files.App/Actions/Global/ToggleFullScreenAction.cs @@ -5,7 +5,7 @@ namespace Files.App.Actions { - internal class ToggleFullScreenAction : IToggleAction + internal sealed class ToggleFullScreenAction : IToggleAction { public string Label => "FullScreen".GetLocalizedResource(); diff --git a/src/Files.App/Actions/Global/UndoAction.cs b/src/Files.App/Actions/Global/UndoAction.cs index 7ab4b42d1d53..14a222ff24ea 100644 --- a/src/Files.App/Actions/Global/UndoAction.cs +++ b/src/Files.App/Actions/Global/UndoAction.cs @@ -3,7 +3,7 @@ namespace Files.App.Actions { - internal class UndoAction : ObservableObject, IAction + internal sealed class UndoAction : ObservableObject, IAction { private readonly IContentPageContext context; diff --git a/src/Files.App/Actions/Navigation/ClosePaneAction.cs b/src/Files.App/Actions/Navigation/ClosePaneAction.cs index 82d204bea323..b2e4423d378f 100644 --- a/src/Files.App/Actions/Navigation/ClosePaneAction.cs +++ b/src/Files.App/Actions/Navigation/ClosePaneAction.cs @@ -3,7 +3,7 @@ namespace Files.App.Actions { - internal class ClosePaneAction : ObservableObject, IAction + internal sealed class ClosePaneAction : ObservableObject, IAction { private readonly IContentPageContext context; diff --git a/src/Files.App/Actions/Navigation/DuplicateCurrentTabAction.cs b/src/Files.App/Actions/Navigation/DuplicateCurrentTabAction.cs index 0cc42741e447..a76ed1532e72 100644 --- a/src/Files.App/Actions/Navigation/DuplicateCurrentTabAction.cs +++ b/src/Files.App/Actions/Navigation/DuplicateCurrentTabAction.cs @@ -3,7 +3,7 @@ namespace Files.App.Actions { - internal class DuplicateCurrentTabAction : IAction + internal sealed class DuplicateCurrentTabAction : IAction { private readonly IMultitaskingContext context; diff --git a/src/Files.App/Actions/Navigation/DuplicateSelectedTabAction.cs b/src/Files.App/Actions/Navigation/DuplicateSelectedTabAction.cs index c5c9a383195b..4ebc8d68b2e4 100644 --- a/src/Files.App/Actions/Navigation/DuplicateSelectedTabAction.cs +++ b/src/Files.App/Actions/Navigation/DuplicateSelectedTabAction.cs @@ -3,7 +3,7 @@ namespace Files.App.Actions { - internal class DuplicateSelectedTabAction : ObservableObject, IAction + internal sealed class DuplicateSelectedTabAction : ObservableObject, IAction { private readonly IMultitaskingContext context; diff --git a/src/Files.App/Actions/Navigation/NavigateBackAction.cs b/src/Files.App/Actions/Navigation/NavigateBackAction.cs index 8eaa894c4b4b..972a4b0aa45f 100644 --- a/src/Files.App/Actions/Navigation/NavigateBackAction.cs +++ b/src/Files.App/Actions/Navigation/NavigateBackAction.cs @@ -3,7 +3,7 @@ namespace Files.App.Actions { - internal class NavigateBackAction : ObservableObject, IAction + internal sealed class NavigateBackAction : ObservableObject, IAction { private readonly IContentPageContext context; diff --git a/src/Files.App/Actions/Navigation/NavigateForwardAction.cs b/src/Files.App/Actions/Navigation/NavigateForwardAction.cs index a98f4a7db6bb..e4cd09c32486 100644 --- a/src/Files.App/Actions/Navigation/NavigateForwardAction.cs +++ b/src/Files.App/Actions/Navigation/NavigateForwardAction.cs @@ -3,7 +3,7 @@ namespace Files.App.Actions { - internal class NavigateForwardAction : ObservableObject, IAction + internal sealed class NavigateForwardAction : ObservableObject, IAction { private readonly IContentPageContext context; diff --git a/src/Files.App/Actions/Navigation/NavigateUpAction.cs b/src/Files.App/Actions/Navigation/NavigateUpAction.cs index b998fbd1f82e..893ea943ff56 100644 --- a/src/Files.App/Actions/Navigation/NavigateUpAction.cs +++ b/src/Files.App/Actions/Navigation/NavigateUpAction.cs @@ -3,7 +3,7 @@ namespace Files.App.Actions { - internal class NavigateUpAction : ObservableObject, IAction + internal sealed class NavigateUpAction : ObservableObject, IAction { private readonly IContentPageContext context; diff --git a/src/Files.App/Actions/Navigation/NewTabAction.cs b/src/Files.App/Actions/Navigation/NewTabAction.cs index 8364f578f97d..52fdbbe490d8 100644 --- a/src/Files.App/Actions/Navigation/NewTabAction.cs +++ b/src/Files.App/Actions/Navigation/NewTabAction.cs @@ -3,7 +3,7 @@ namespace Files.App.Actions { - internal class NewTabAction : IAction + internal sealed class NewTabAction : IAction { public string Label => "NewTab".GetLocalizedResource(); diff --git a/src/Files.App/Actions/Navigation/NewWindowAction.cs b/src/Files.App/Actions/Navigation/NewWindowAction.cs index bba8eb1a36b9..69057148b4f5 100644 --- a/src/Files.App/Actions/Navigation/NewWindowAction.cs +++ b/src/Files.App/Actions/Navigation/NewWindowAction.cs @@ -3,7 +3,7 @@ namespace Files.App.Actions { - internal class NewWindowAction : IAction + internal sealed class NewWindowAction : IAction { public string Label => "NewWindow".GetLocalizedResource(); diff --git a/src/Files.App/Actions/Navigation/NextTabAction.cs b/src/Files.App/Actions/Navigation/NextTabAction.cs index ae7962be0d7d..b6c3610507c4 100644 --- a/src/Files.App/Actions/Navigation/NextTabAction.cs +++ b/src/Files.App/Actions/Navigation/NextTabAction.cs @@ -3,7 +3,7 @@ namespace Files.App.Actions { - internal class NextTabAction : ObservableObject, IAction + internal sealed class NextTabAction : ObservableObject, IAction { private readonly IMultitaskingContext multitaskingContext; diff --git a/src/Files.App/Actions/Navigation/OpenDirectoryInNewPaneAction.cs b/src/Files.App/Actions/Navigation/OpenDirectoryInNewPaneAction.cs index 9aeb4136d4b3..3dc64a3bb958 100644 --- a/src/Files.App/Actions/Navigation/OpenDirectoryInNewPaneAction.cs +++ b/src/Files.App/Actions/Navigation/OpenDirectoryInNewPaneAction.cs @@ -3,7 +3,7 @@ namespace Files.App.Actions { - internal class OpenDirectoryInNewPaneAction : ObservableObject, IAction + internal sealed class OpenDirectoryInNewPaneAction : ObservableObject, IAction { private readonly IContentPageContext context; diff --git a/src/Files.App/Actions/Navigation/OpenDirectoryInNewTabAction.cs b/src/Files.App/Actions/Navigation/OpenDirectoryInNewTabAction.cs index 64cc31a166ee..edb57c715686 100644 --- a/src/Files.App/Actions/Navigation/OpenDirectoryInNewTabAction.cs +++ b/src/Files.App/Actions/Navigation/OpenDirectoryInNewTabAction.cs @@ -3,7 +3,7 @@ namespace Files.App.Actions { - internal class OpenDirectoryInNewTabAction : ObservableObject, IAction + internal sealed class OpenDirectoryInNewTabAction : ObservableObject, IAction { private readonly IContentPageContext context; diff --git a/src/Files.App/Actions/Navigation/OpenInNewWindowItemAction.cs b/src/Files.App/Actions/Navigation/OpenInNewWindowItemAction.cs index ea128797231b..b9b8770e84f9 100644 --- a/src/Files.App/Actions/Navigation/OpenInNewWindowItemAction.cs +++ b/src/Files.App/Actions/Navigation/OpenInNewWindowItemAction.cs @@ -5,7 +5,7 @@ namespace Files.App.Actions { - internal class OpenInNewWindowItemAction : ObservableObject, IAction + internal sealed class OpenInNewWindowItemAction : ObservableObject, IAction { private readonly IContentPageContext context; diff --git a/src/Files.App/Actions/Navigation/OpenNewPaneAction.cs b/src/Files.App/Actions/Navigation/OpenNewPaneAction.cs index 7d1c2463362a..03286ac2bc04 100644 --- a/src/Files.App/Actions/Navigation/OpenNewPaneAction.cs +++ b/src/Files.App/Actions/Navigation/OpenNewPaneAction.cs @@ -3,7 +3,7 @@ namespace Files.App.Actions { - internal class OpenNewPaneAction : ObservableObject, IAction + internal sealed class OpenNewPaneAction : ObservableObject, IAction { private readonly IContentPageContext context; diff --git a/src/Files.App/Actions/Navigation/PreviousTabAction.cs b/src/Files.App/Actions/Navigation/PreviousTabAction.cs index 6bca19d9951d..58d2a19318c8 100644 --- a/src/Files.App/Actions/Navigation/PreviousTabAction.cs +++ b/src/Files.App/Actions/Navigation/PreviousTabAction.cs @@ -3,7 +3,7 @@ namespace Files.App.Actions { - internal class PreviousTabAction : ObservableObject, IAction + internal sealed class PreviousTabAction : ObservableObject, IAction { private readonly IMultitaskingContext multitaskingContext; diff --git a/src/Files.App/Actions/Navigation/ReopenClosedTabAction.cs b/src/Files.App/Actions/Navigation/ReopenClosedTabAction.cs index bbbc28db1b5b..50fe0fc425ca 100644 --- a/src/Files.App/Actions/Navigation/ReopenClosedTabAction.cs +++ b/src/Files.App/Actions/Navigation/ReopenClosedTabAction.cs @@ -5,7 +5,7 @@ namespace Files.App.Actions { - internal class ReopenClosedTabAction : ObservableObject, IAction + internal sealed class ReopenClosedTabAction : ObservableObject, IAction { private readonly IMultitaskingContext context; diff --git a/src/Files.App/Actions/Open/OpenCommandPaletteAction.cs b/src/Files.App/Actions/Open/OpenCommandPaletteAction.cs index acbfacb5f44c..cc3050d0ed5a 100644 --- a/src/Files.App/Actions/Open/OpenCommandPaletteAction.cs +++ b/src/Files.App/Actions/Open/OpenCommandPaletteAction.cs @@ -3,7 +3,7 @@ namespace Files.App.Actions { - internal class OpenCommandPaletteAction : IAction + internal sealed class OpenCommandPaletteAction : IAction { private readonly IContentPageContext _context; diff --git a/src/Files.App/Actions/Open/OpenPropertiesAction.cs b/src/Files.App/Actions/Open/OpenPropertiesAction.cs index 1f11a622673c..679f3e8056f4 100644 --- a/src/Files.App/Actions/Open/OpenPropertiesAction.cs +++ b/src/Files.App/Actions/Open/OpenPropertiesAction.cs @@ -3,7 +3,7 @@ namespace Files.App.Actions { - internal class OpenPropertiesAction : ObservableObject, IAction + internal sealed class OpenPropertiesAction : ObservableObject, IAction { private readonly IContentPageContext context; diff --git a/src/Files.App/Actions/Open/OpenSettingsAction.cs b/src/Files.App/Actions/Open/OpenSettingsAction.cs index 65a4a1b73470..159f87412e8a 100644 --- a/src/Files.App/Actions/Open/OpenSettingsAction.cs +++ b/src/Files.App/Actions/Open/OpenSettingsAction.cs @@ -3,7 +3,7 @@ namespace Files.App.Actions { - internal class OpenSettingsAction : BaseUIAction, IAction + internal sealed class OpenSettingsAction : BaseUIAction, IAction { private readonly IDialogService dialogService = Ioc.Default.GetRequiredService(); diff --git a/src/Files.App/Actions/Open/OpenTerminalAsAdminAction.cs b/src/Files.App/Actions/Open/OpenTerminalAsAdminAction.cs index bbb529dc97c6..c629e8fda55f 100644 --- a/src/Files.App/Actions/Open/OpenTerminalAsAdminAction.cs +++ b/src/Files.App/Actions/Open/OpenTerminalAsAdminAction.cs @@ -3,7 +3,7 @@ namespace Files.App.Actions { - internal class OpenTerminalAsAdminAction : OpenTerminalAction + internal sealed class OpenTerminalAsAdminAction : OpenTerminalAction { public override string Label => "OpenTerminalAsAdmin".GetLocalizedResource(); diff --git a/src/Files.App/Actions/Show/ToggleDetailsPaneAction.cs b/src/Files.App/Actions/Show/ToggleDetailsPaneAction.cs index 19fe2c189bdf..6b7025d0417a 100644 --- a/src/Files.App/Actions/Show/ToggleDetailsPaneAction.cs +++ b/src/Files.App/Actions/Show/ToggleDetailsPaneAction.cs @@ -3,7 +3,7 @@ namespace Files.App.Actions { - internal class ToggleDetailsPaneAction : ObservableObject, IToggleAction + internal sealed class ToggleDetailsPaneAction : ObservableObject, IToggleAction { private readonly InfoPaneViewModel viewModel; private readonly IInfoPaneSettingsService infoPaneSettingsService = Ioc.Default.GetRequiredService(); diff --git a/src/Files.App/Actions/Show/ToggleInfoPaneAction.cs b/src/Files.App/Actions/Show/ToggleInfoPaneAction.cs index 58fdf1536024..2a6b1108f69c 100644 --- a/src/Files.App/Actions/Show/ToggleInfoPaneAction.cs +++ b/src/Files.App/Actions/Show/ToggleInfoPaneAction.cs @@ -3,7 +3,7 @@ namespace Files.App.Actions { - internal class ToggleInfoPaneAction : ObservableObject, IToggleAction + internal sealed class ToggleInfoPaneAction : ObservableObject, IToggleAction { private readonly InfoPaneViewModel viewModel; diff --git a/src/Files.App/Actions/Show/TogglePreviewPaneAction.cs b/src/Files.App/Actions/Show/TogglePreviewPaneAction.cs index b1e4ad3dfe1d..48c8caf9a927 100644 --- a/src/Files.App/Actions/Show/TogglePreviewPaneAction.cs +++ b/src/Files.App/Actions/Show/TogglePreviewPaneAction.cs @@ -3,7 +3,7 @@ namespace Files.App.Actions { - internal class TogglePreviewPaneAction : ObservableObject, IToggleAction + internal sealed class TogglePreviewPaneAction : ObservableObject, IToggleAction { private readonly InfoPaneViewModel viewModel; private readonly IInfoPaneSettingsService infoPaneSettingsService = Ioc.Default.GetRequiredService(); diff --git a/src/Files.App/Actions/Show/ToggleShowFileExtensionsAction.cs b/src/Files.App/Actions/Show/ToggleShowFileExtensionsAction.cs index 114397c554ae..68df104adb67 100644 --- a/src/Files.App/Actions/Show/ToggleShowFileExtensionsAction.cs +++ b/src/Files.App/Actions/Show/ToggleShowFileExtensionsAction.cs @@ -3,7 +3,7 @@ namespace Files.App.Actions { - internal class ToggleShowFileExtensionsAction : ObservableObject, IToggleAction + internal sealed class ToggleShowFileExtensionsAction : ObservableObject, IToggleAction { private readonly IFoldersSettingsService settings; diff --git a/src/Files.App/Actions/Show/ToggleShowHiddenItemsAction.cs b/src/Files.App/Actions/Show/ToggleShowHiddenItemsAction.cs index 4a5705c9d23f..fbd453d5153b 100644 --- a/src/Files.App/Actions/Show/ToggleShowHiddenItemsAction.cs +++ b/src/Files.App/Actions/Show/ToggleShowHiddenItemsAction.cs @@ -3,7 +3,7 @@ namespace Files.App.Actions { - internal class ToggleShowHiddenItemsAction : ObservableObject, IToggleAction + internal sealed class ToggleShowHiddenItemsAction : ObservableObject, IToggleAction { private readonly IFoldersSettingsService settings; diff --git a/src/Files.App/Actions/Start/PinToStartAction.cs b/src/Files.App/Actions/Start/PinToStartAction.cs index 47f97a79dee3..287d7ef5406d 100644 --- a/src/Files.App/Actions/Start/PinToStartAction.cs +++ b/src/Files.App/Actions/Start/PinToStartAction.cs @@ -6,7 +6,7 @@ namespace Files.App.Actions { - internal class PinToStartAction : IAction + internal sealed class PinToStartAction : IAction { private IStorageService StorageService { get; } = Ioc.Default.GetRequiredService(); diff --git a/src/Files.App/Actions/Start/UnpinFromStartAction.cs b/src/Files.App/Actions/Start/UnpinFromStartAction.cs index 7d3fe210bff5..7fa247eeaf81 100644 --- a/src/Files.App/Actions/Start/UnpinFromStartAction.cs +++ b/src/Files.App/Actions/Start/UnpinFromStartAction.cs @@ -5,7 +5,7 @@ namespace Files.App.Actions { - internal class UnpinFromStartAction : IAction + internal sealed class UnpinFromStartAction : IAction { private IStorageService StorageService { get; } = Ioc.Default.GetRequiredService(); diff --git a/src/Files.App/Converters/StatusCenterStateToBrushConverter.cs b/src/Files.App/Converters/StatusCenterStateToBrushConverter.cs index 9412beb08713..92ee98e3a0d1 100644 --- a/src/Files.App/Converters/StatusCenterStateToBrushConverter.cs +++ b/src/Files.App/Converters/StatusCenterStateToBrushConverter.cs @@ -7,7 +7,7 @@ namespace Files.App.Converters { - public class StatusCenterStateToBrushConverter : DependencyObject, IValueConverter + public sealed class StatusCenterStateToBrushConverter : DependencyObject, IValueConverter { public static readonly DependencyProperty InProgressBackgroundBrushProperty = DependencyProperty.Register(nameof(InProgressBackgroundBrush), typeof(SolidColorBrush), typeof(StatusCenterStateToBrushConverter), new PropertyMetadata(null)); diff --git a/src/Files.App/Data/Behaviors/StickyHeaderBehavior.cs b/src/Files.App/Data/Behaviors/StickyHeaderBehavior.cs index 5f462069f764..9f5e98fbc2de 100644 --- a/src/Files.App/Data/Behaviors/StickyHeaderBehavior.cs +++ b/src/Files.App/Data/Behaviors/StickyHeaderBehavior.cs @@ -21,7 +21,7 @@ namespace Files.App.Data.Behaviors /// /// See also, /// - public class StickyHeaderBehavior : BehaviorBase + public sealed class StickyHeaderBehavior : BehaviorBase { private static readonly bool IsXamlRootAvailable = ApiInformation.IsPropertyPresent("Microsoft.UI.Xaml.UIElement", "XamlRoot"); diff --git a/src/Files.App/Data/Commands/Manager/CommandManager.cs b/src/Files.App/Data/Commands/Manager/CommandManager.cs index 66a378df2ad7..5e271bf07143 100644 --- a/src/Files.App/Data/Commands/Manager/CommandManager.cs +++ b/src/Files.App/Data/Commands/Manager/CommandManager.cs @@ -10,7 +10,7 @@ namespace Files.App.Data.Commands { - internal class CommandManager : ICommandManager + internal sealed class CommandManager : ICommandManager { private readonly IGeneralSettingsService settings = Ioc.Default.GetRequiredService(); @@ -409,7 +409,7 @@ private void Settings_PropertyChanged(object? sender, PropertyChangedEventArgs e } [DebuggerDisplay("Command {Code}")] - internal class ActionCommand : ObservableObject, IRichCommand + internal sealed class ActionCommand : ObservableObject, IRichCommand { public event EventHandler? CanExecuteChanged; diff --git a/src/Files.App/Data/Commands/Manager/ModifiableCommandManager.cs b/src/Files.App/Data/Commands/Manager/ModifiableCommandManager.cs index b68b63ff7244..ca61c04d9553 100644 --- a/src/Files.App/Data/Commands/Manager/ModifiableCommandManager.cs +++ b/src/Files.App/Data/Commands/Manager/ModifiableCommandManager.cs @@ -5,7 +5,7 @@ namespace Files.App.Data.Commands { - internal class ModifiableCommandManager : IModifiableCommandManager + internal sealed class ModifiableCommandManager : IModifiableCommandManager { private static readonly ICommandManager Commands = Ioc.Default.GetRequiredService(); diff --git a/src/Files.App/Data/Commands/ModifiableCommand.cs b/src/Files.App/Data/Commands/ModifiableCommand.cs index bbe78c14ca2f..96e3997f4e91 100644 --- a/src/Files.App/Data/Commands/ModifiableCommand.cs +++ b/src/Files.App/Data/Commands/ModifiableCommand.cs @@ -11,7 +11,7 @@ namespace Files.App.Data.Commands { [DebuggerDisplay("Command {Code} (Modifiable)")] - internal class ModifiableCommand : ObservableObject, IRichCommand + internal sealed class ModifiableCommand : ObservableObject, IRichCommand { public event EventHandler? CanExecuteChanged; diff --git a/src/Files.App/Data/Commands/NoneCommand.cs b/src/Files.App/Data/Commands/NoneCommand.cs index 5f72509900c6..920e0c4c56a7 100644 --- a/src/Files.App/Data/Commands/NoneCommand.cs +++ b/src/Files.App/Data/Commands/NoneCommand.cs @@ -8,7 +8,7 @@ namespace Files.App.Data.Commands { [DebuggerDisplay("Command None")] - internal class NoneCommand : IRichCommand + internal sealed class NoneCommand : IRichCommand { public event EventHandler? CanExecuteChanged { add { } remove { } } public event PropertyChangingEventHandler? PropertyChanging { add { } remove { } } diff --git a/src/Files.App/Data/Contexts/ContentPage/ContentPageContext.cs b/src/Files.App/Data/Contexts/ContentPage/ContentPageContext.cs index 54797065f4ad..4bdd4b3371f4 100644 --- a/src/Files.App/Data/Contexts/ContentPage/ContentPageContext.cs +++ b/src/Files.App/Data/Contexts/ContentPage/ContentPageContext.cs @@ -6,7 +6,7 @@ namespace Files.App.Data.Contexts { - internal class ContentPageContext : ObservableObject, IContentPageContext + internal sealed class ContentPageContext : ObservableObject, IContentPageContext { private static readonly IReadOnlyList emptyItems = Enumerable.Empty().ToImmutableList(); diff --git a/src/Files.App/Data/Contexts/DisplayPage/DisplayPageContext.cs b/src/Files.App/Data/Contexts/DisplayPage/DisplayPageContext.cs index 0b45a1af9494..fdf0449b11df 100644 --- a/src/Files.App/Data/Contexts/DisplayPage/DisplayPageContext.cs +++ b/src/Files.App/Data/Contexts/DisplayPage/DisplayPageContext.cs @@ -5,7 +5,7 @@ namespace Files.App.Data.Contexts { - internal class DisplayPageContext : ObservableObject, IDisplayPageContext + internal sealed class DisplayPageContext : ObservableObject, IDisplayPageContext { private readonly IPageContext context = Ioc.Default.GetRequiredService(); private readonly IFoldersSettingsService settings = Ioc.Default.GetRequiredService(); diff --git a/src/Files.App/Data/Contexts/HomePage/HomePageContext.cs b/src/Files.App/Data/Contexts/HomePage/HomePageContext.cs index 7ddabb5b92ae..17b5cc9361b0 100644 --- a/src/Files.App/Data/Contexts/HomePage/HomePageContext.cs +++ b/src/Files.App/Data/Contexts/HomePage/HomePageContext.cs @@ -7,7 +7,7 @@ namespace Files.App.Data.Contexts { - internal class HomePageContext : ObservableObject, IHomePageContext + internal sealed class HomePageContext : ObservableObject, IHomePageContext { private static readonly IImmutableList emptyTaggedItems = Enumerable.Empty().ToImmutableList(); diff --git a/src/Files.App/Data/Contexts/Multitasking/MultitaskingContext.cs b/src/Files.App/Data/Contexts/Multitasking/MultitaskingContext.cs index bad5ece34f9a..c158c523eaa0 100644 --- a/src/Files.App/Data/Contexts/Multitasking/MultitaskingContext.cs +++ b/src/Files.App/Data/Contexts/Multitasking/MultitaskingContext.cs @@ -7,7 +7,7 @@ namespace Files.App.Data.Contexts { - internal class MultitaskingContext : ObservableObject, IMultitaskingContext + internal sealed class MultitaskingContext : ObservableObject, IMultitaskingContext { private bool isPopupOpen = false; diff --git a/src/Files.App/Data/Contexts/Page/PageContext.cs b/src/Files.App/Data/Contexts/Page/PageContext.cs index 93a43ac9efba..3d6713d964f0 100644 --- a/src/Files.App/Data/Contexts/Page/PageContext.cs +++ b/src/Files.App/Data/Contexts/Page/PageContext.cs @@ -8,7 +8,7 @@ namespace Files.App.Data.Contexts { - internal class PageContext : IPageContext + internal sealed class PageContext : IPageContext { public event EventHandler? Changing; public event EventHandler? Changed; diff --git a/src/Files.App/Data/Contexts/SideBar/SideBarContext.cs b/src/Files.App/Data/Contexts/SideBar/SideBarContext.cs index 3da54ce6a2db..b8412d9f8e3a 100644 --- a/src/Files.App/Data/Contexts/SideBar/SideBarContext.cs +++ b/src/Files.App/Data/Contexts/SideBar/SideBarContext.cs @@ -4,7 +4,7 @@ namespace Files.App.Data.Contexts { /// - internal class SidebarContext : ObservableObject, ISidebarContext + internal sealed class SidebarContext : ObservableObject, ISidebarContext { private readonly PinnedFoldersManager favoriteModel = App.QuickAccessManager.Model; diff --git a/src/Files.App/Data/Contexts/Window/WindowContext.cs b/src/Files.App/Data/Contexts/Window/WindowContext.cs index f93579d450ab..58140f8bf533 100644 --- a/src/Files.App/Data/Contexts/Window/WindowContext.cs +++ b/src/Files.App/Data/Contexts/Window/WindowContext.cs @@ -6,7 +6,7 @@ namespace Files.App.Data.Contexts { - internal class WindowContext : ObservableObject, IWindowContext + internal sealed class WindowContext : ObservableObject, IWindowContext { private bool isCompactOverlay; public bool IsCompactOverlay => isCompactOverlay; diff --git a/src/Files.App/Data/Contracts/INavigationControlItem.cs b/src/Files.App/Data/Contracts/INavigationControlItem.cs index 558e0f2e6e1f..80dfb5fd2f5b 100644 --- a/src/Files.App/Data/Contracts/INavigationControlItem.cs +++ b/src/Files.App/Data/Contracts/INavigationControlItem.cs @@ -38,7 +38,7 @@ public enum SectionType FileTag } - public class ContextMenuOptions + public sealed class ContextMenuOptions { public bool IsLibrariesHeader { get; set; } diff --git a/src/Files.App/Data/EventArguments/AddressBarTextEnteredEventArgs.cs b/src/Files.App/Data/EventArguments/AddressBarTextEnteredEventArgs.cs index d2f6484ad68b..e9ed5144a6c2 100644 --- a/src/Files.App/Data/EventArguments/AddressBarTextEnteredEventArgs.cs +++ b/src/Files.App/Data/EventArguments/AddressBarTextEnteredEventArgs.cs @@ -7,7 +7,7 @@ namespace Files.App.Data.EventArguments { - public class AddressBarTextEnteredEventArgs + public sealed class AddressBarTextEnteredEventArgs { public AutoSuggestBox AddressBarTextField { get; set; } } diff --git a/src/Files.App/Data/EventArguments/CurrentInstanceChangedEventArgs.cs b/src/Files.App/Data/EventArguments/CurrentInstanceChangedEventArgs.cs index 8f8296352456..fd61c59cfb2c 100644 --- a/src/Files.App/Data/EventArguments/CurrentInstanceChangedEventArgs.cs +++ b/src/Files.App/Data/EventArguments/CurrentInstanceChangedEventArgs.cs @@ -3,7 +3,7 @@ namespace Files.App.Data.EventArguments { - public class CurrentInstanceChangedEventArgs : EventArgs + public sealed class CurrentInstanceChangedEventArgs : EventArgs { public ITabBarItemContent CurrentInstance { get; set; } diff --git a/src/Files.App/Data/EventArguments/DeviceEventArgs.cs b/src/Files.App/Data/EventArguments/DeviceEventArgs.cs index 4f4b4a1f653c..3e36a114aac2 100644 --- a/src/Files.App/Data/EventArguments/DeviceEventArgs.cs +++ b/src/Files.App/Data/EventArguments/DeviceEventArgs.cs @@ -5,7 +5,7 @@ namespace Files.App.Data.EventArguments { - public class DeviceEventArgs : EventArgs + public sealed class DeviceEventArgs : EventArgs { public string DeviceName { get; } public string DeviceId { get; } diff --git a/src/Files.App/Data/EventArguments/EventArrivedEventArgs.cs b/src/Files.App/Data/EventArguments/EventArrivedEventArgs.cs index a4fa9e9ac131..c946311a1a4d 100644 --- a/src/Files.App/Data/EventArguments/EventArrivedEventArgs.cs +++ b/src/Files.App/Data/EventArguments/EventArrivedEventArgs.cs @@ -9,7 +9,7 @@ namespace Files.App.Data.EventArguments /// /// CimWatcher event args, which contains CimSubscriptionResult /// - public class EventArrivedEventArgs : EventArgs + public sealed class EventArrivedEventArgs : EventArgs { public CimSubscriptionResult NewEvent { get; } diff --git a/src/Files.App/Data/EventArguments/LayoutModeEventArgs.cs b/src/Files.App/Data/EventArguments/LayoutModeEventArgs.cs index 7208f16aa5db..b2973490e58d 100644 --- a/src/Files.App/Data/EventArguments/LayoutModeEventArgs.cs +++ b/src/Files.App/Data/EventArguments/LayoutModeEventArgs.cs @@ -3,7 +3,7 @@ namespace Files.App.Data.EventArguments { - public class LayoutModeEventArgs + public sealed class LayoutModeEventArgs { public readonly FolderLayoutModes LayoutMode; diff --git a/src/Files.App/Data/EventArguments/LayoutPreferenceEventArgs.cs b/src/Files.App/Data/EventArguments/LayoutPreferenceEventArgs.cs index cbdb7a37182c..3f6353a3dcc7 100644 --- a/src/Files.App/Data/EventArguments/LayoutPreferenceEventArgs.cs +++ b/src/Files.App/Data/EventArguments/LayoutPreferenceEventArgs.cs @@ -3,7 +3,7 @@ namespace Files.App.Data.EventArguments { - public class LayoutPreferenceEventArgs + public sealed class LayoutPreferenceEventArgs { public readonly bool IsAdaptiveLayoutUpdateRequired; diff --git a/src/Files.App/Data/EventArguments/MainPageNavigationArguments.cs b/src/Files.App/Data/EventArguments/MainPageNavigationArguments.cs index c9c0e3f5e736..4d08b11831d1 100644 --- a/src/Files.App/Data/EventArguments/MainPageNavigationArguments.cs +++ b/src/Files.App/Data/EventArguments/MainPageNavigationArguments.cs @@ -3,7 +3,7 @@ namespace Files.App.Data.EventArguments { - internal class MainPageNavigationArguments + internal sealed class MainPageNavigationArguments { public object? Parameter { get; set; } diff --git a/src/Files.App/Data/EventArguments/PaneNavigationArguments.cs b/src/Files.App/Data/EventArguments/PaneNavigationArguments.cs index 2745b4b58d09..8d7b8d60a400 100644 --- a/src/Files.App/Data/EventArguments/PaneNavigationArguments.cs +++ b/src/Files.App/Data/EventArguments/PaneNavigationArguments.cs @@ -3,7 +3,7 @@ namespace Files.App.Data.EventArguments { - internal class PaneNavigationArguments + internal sealed class PaneNavigationArguments { public string? LeftPaneNavPathParam { get; set; } diff --git a/src/Files.App/Data/EventArguments/PathBoxItemDroppedEventArgs.cs b/src/Files.App/Data/EventArguments/PathBoxItemDroppedEventArgs.cs index db7670fc1115..3869bd21b4cb 100644 --- a/src/Files.App/Data/EventArguments/PathBoxItemDroppedEventArgs.cs +++ b/src/Files.App/Data/EventArguments/PathBoxItemDroppedEventArgs.cs @@ -8,7 +8,7 @@ namespace Files.App.Data.EventArguments { - public class PathBoxItemDroppedEventArgs + public sealed class PathBoxItemDroppedEventArgs { public DataPackageView Package { get; set; } diff --git a/src/Files.App/Data/EventArguments/PathNavigationEventArgs.cs b/src/Files.App/Data/EventArguments/PathNavigationEventArgs.cs index 376a8f314400..93ef43f12876 100644 --- a/src/Files.App/Data/EventArguments/PathNavigationEventArgs.cs +++ b/src/Files.App/Data/EventArguments/PathNavigationEventArgs.cs @@ -7,7 +7,7 @@ namespace Files.App.Data.EventArguments { - public class PathNavigationEventArgs + public sealed class PathNavigationEventArgs { public string ItemPath { get; set; } diff --git a/src/Files.App/Data/EventArguments/QuickAccessCardEventArgs.cs b/src/Files.App/Data/EventArguments/QuickAccessCardEventArgs.cs index bfdcd679f3a7..f4d8738f2c2a 100644 --- a/src/Files.App/Data/EventArguments/QuickAccessCardEventArgs.cs +++ b/src/Files.App/Data/EventArguments/QuickAccessCardEventArgs.cs @@ -3,17 +3,17 @@ namespace Files.App.Data.EventArguments { - public class QuickAccessCardEventArgs : EventArgs + public sealed class QuickAccessCardEventArgs : EventArgs { public LocationItem? Item { get; set; } } - public class QuickAccessCardInvokedEventArgs : EventArgs + public sealed class QuickAccessCardInvokedEventArgs : EventArgs { public string? Path { get; set; } } - public class ModifyQuickAccessEventArgs : EventArgs + public sealed class ModifyQuickAccessEventArgs : EventArgs { public string[]? Paths { get; set; } public ShellFileItem[]? Items { get; set; } diff --git a/src/Files.App/Data/EventArguments/SearchBoxQuerySubmittedEventArgs.cs b/src/Files.App/Data/EventArguments/SearchBoxQuerySubmittedEventArgs.cs index 6abd7d95e0c6..d0dbf3f4f1b5 100644 --- a/src/Files.App/Data/EventArguments/SearchBoxQuerySubmittedEventArgs.cs +++ b/src/Files.App/Data/EventArguments/SearchBoxQuerySubmittedEventArgs.cs @@ -7,7 +7,7 @@ namespace Files.App.Data.EventArguments { - public class SearchBoxQuerySubmittedEventArgs + public sealed class SearchBoxQuerySubmittedEventArgs { public SuggestionModel ChosenSuggestion { get; } diff --git a/src/Files.App/Data/EventArguments/SearchBoxTextChangedEventArgs.cs b/src/Files.App/Data/EventArguments/SearchBoxTextChangedEventArgs.cs index a7008171a343..c4a313c1f07c 100644 --- a/src/Files.App/Data/EventArguments/SearchBoxTextChangedEventArgs.cs +++ b/src/Files.App/Data/EventArguments/SearchBoxTextChangedEventArgs.cs @@ -7,7 +7,7 @@ namespace Files.App.Data.EventArguments { - public class SearchBoxTextChangedEventArgs + public sealed class SearchBoxTextChangedEventArgs { public SearchBoxTextChangeReason Reason { get; } diff --git a/src/Files.App/Data/EventArguments/ToolbarFlyoutOpenedEventArgs.cs b/src/Files.App/Data/EventArguments/ToolbarFlyoutOpenedEventArgs.cs index a738ba7bca78..36abd8bdb6d5 100644 --- a/src/Files.App/Data/EventArguments/ToolbarFlyoutOpenedEventArgs.cs +++ b/src/Files.App/Data/EventArguments/ToolbarFlyoutOpenedEventArgs.cs @@ -7,7 +7,7 @@ namespace Files.App.Data.EventArguments { - public class ToolbarFlyoutOpenedEventArgs + public sealed class ToolbarFlyoutOpenedEventArgs { public MenuFlyout OpenedFlyout { get; set; } } diff --git a/src/Files.App/Data/EventArguments/ToolbarPathItemLoadedEventArgs.cs b/src/Files.App/Data/EventArguments/ToolbarPathItemLoadedEventArgs.cs index c1b39d728e41..248ed43c0225 100644 --- a/src/Files.App/Data/EventArguments/ToolbarPathItemLoadedEventArgs.cs +++ b/src/Files.App/Data/EventArguments/ToolbarPathItemLoadedEventArgs.cs @@ -7,7 +7,7 @@ namespace Files.App.Data.EventArguments { - public class ToolbarPathItemLoadedEventArgs + public sealed class ToolbarPathItemLoadedEventArgs { public MenuFlyout OpenedFlyout { get; set; } diff --git a/src/Files.App/Data/EventArguments/ToolbarQuerySubmittedEventArgs.cs b/src/Files.App/Data/EventArguments/ToolbarQuerySubmittedEventArgs.cs index f0b3cc8eb470..74d5fe23f961 100644 --- a/src/Files.App/Data/EventArguments/ToolbarQuerySubmittedEventArgs.cs +++ b/src/Files.App/Data/EventArguments/ToolbarQuerySubmittedEventArgs.cs @@ -7,7 +7,7 @@ namespace Files.App.Data.EventArguments { - public class ToolbarQuerySubmittedEventArgs + public sealed class ToolbarQuerySubmittedEventArgs { public string QueryText { get; set; } = null; } diff --git a/src/Files.App/Data/EventArguments/WidgetsRightClickedItemChangedEventArgs.cs b/src/Files.App/Data/EventArguments/WidgetsRightClickedItemChangedEventArgs.cs index 7668c278a76b..92563156256e 100644 --- a/src/Files.App/Data/EventArguments/WidgetsRightClickedItemChangedEventArgs.cs +++ b/src/Files.App/Data/EventArguments/WidgetsRightClickedItemChangedEventArgs.cs @@ -5,7 +5,7 @@ namespace Files.App.Data.EventArguments { - public class WidgetsRightClickedItemChangedEventArgs + public sealed class WidgetsRightClickedItemChangedEventArgs { public WidgetCardItem? Item { get; set; } diff --git a/src/Files.App/Data/Items/AppThemeResourceItem.cs b/src/Files.App/Data/Items/AppThemeResourceItem.cs index d9f97f7c2e3c..9e69e55d2fe2 100644 --- a/src/Files.App/Data/Items/AppThemeResourceItem.cs +++ b/src/Files.App/Data/Items/AppThemeResourceItem.cs @@ -3,7 +3,7 @@ namespace Files.App.Data.Items { - public class AppThemeResourceItem + public sealed class AppThemeResourceItem { public string? Name { get; set; } diff --git a/src/Files.App/Data/Items/DetailsLayoutColumnItem.cs b/src/Files.App/Data/Items/DetailsLayoutColumnItem.cs index 704f13e0172f..ed27cb6e5151 100644 --- a/src/Files.App/Data/Items/DetailsLayoutColumnItem.cs +++ b/src/Files.App/Data/Items/DetailsLayoutColumnItem.cs @@ -8,7 +8,7 @@ namespace Files.App.Data.Items /// /// Represents item for a column shown in . /// - public class DetailsLayoutColumnItem : ObservableObject + public sealed class DetailsLayoutColumnItem : ObservableObject { private const int GRID_SPLITTER_WIDTH = 12; diff --git a/src/Files.App/Data/Items/DriveItem.cs b/src/Files.App/Data/Items/DriveItem.cs index b24d5552c8a9..61d2b808645b 100644 --- a/src/Files.App/Data/Items/DriveItem.cs +++ b/src/Files.App/Data/Items/DriveItem.cs @@ -11,7 +11,7 @@ namespace Files.App.Data.Items { - public class DriveItem : ObservableObject, INavigationControlItem, ILocatableFolder + public sealed class DriveItem : ObservableObject, INavigationControlItem, ILocatableFolder { private BitmapImage icon; public BitmapImage Icon diff --git a/src/Files.App/Data/Items/FileTagItem.cs b/src/Files.App/Data/Items/FileTagItem.cs index d05fccacc9d3..e7283c69440a 100644 --- a/src/Files.App/Data/Items/FileTagItem.cs +++ b/src/Files.App/Data/Items/FileTagItem.cs @@ -9,7 +9,7 @@ namespace Files.App.Data.Items { - public class FileTagItem : ObservableObject, INavigationControlItem + public sealed class FileTagItem : ObservableObject, INavigationControlItem { public string Text { get; set; } diff --git a/src/Files.App/Data/Items/ListedItem.cs b/src/Files.App/Data/Items/ListedItem.cs index a8e916b5b168..35b659b46f36 100644 --- a/src/Files.App/Data/Items/ListedItem.cs +++ b/src/Files.App/Data/Items/ListedItem.cs @@ -395,7 +395,7 @@ public void UpdateContainsFilesFolders() } } - public class RecycleBinItem : ListedItem + public sealed class RecycleBinItem : ListedItem { public RecycleBinItem(string folderRelativeId) : base(folderRelativeId) { @@ -424,7 +424,7 @@ public DateTimeOffset ItemDateDeletedReal public string ItemOriginalFolderName => Path.GetFileName(ItemOriginalFolder); } - public class FtpItem : ListedItem + public sealed class FtpItem : ListedItem { public FtpItem(FtpListItem item, string folder) : base(null) { @@ -460,7 +460,7 @@ public FtpItem(FtpListItem item, string folder) : base(null) }; } - public class ShortcutItem : ListedItem + public sealed class ShortcutItem : ListedItem { public ShortcutItem(string folderRelativeId) : base(folderRelativeId) { @@ -484,7 +484,7 @@ public override string Name public override bool IsExecutable => FileExtensionHelpers.IsExecutableFile(TargetPath, true); } - public class ZipItem : ListedItem + public sealed class ZipItem : ListedItem { public ZipItem(string folderRelativeId) : base(folderRelativeId) { @@ -508,7 +508,7 @@ public ZipItem() : base() { } } - public class LibraryItem : ListedItem + public sealed class LibraryItem : ListedItem { public LibraryItem(LibraryLocationItem library) : base(null) { @@ -535,7 +535,7 @@ public LibraryItem(LibraryLocationItem library) : base(null) public ReadOnlyCollection Folders { get; } } - public class AlternateStreamItem : ListedItem + public sealed class AlternateStreamItem : ListedItem { public string MainStreamPath => ItemPath.Substring(0, ItemPath.LastIndexOf(':')); public string MainStreamName => Path.GetFileName(MainStreamPath); @@ -555,7 +555,7 @@ public override string Name } } - public class GitItem : ListedItem + public sealed class GitItem : ListedItem { private volatile int statusPropertiesInitialized = 0; public bool StatusPropertiesInitialized diff --git a/src/Files.App/Data/Items/LocationItem.cs b/src/Files.App/Data/Items/LocationItem.cs index bb3497e95aff..6994d3f18a36 100644 --- a/src/Files.App/Data/Items/LocationItem.cs +++ b/src/Files.App/Data/Items/LocationItem.cs @@ -121,7 +121,7 @@ public static T Create() where T : LocationItem, new() } } - public class RecycleBinLocationItem : LocationItem + public sealed class RecycleBinLocationItem : LocationItem { public void RefreshSpaceUsed(object sender, FileSystemEventArgs e) { diff --git a/src/Files.App/Data/Items/NavigationBarSuggestionItem.cs b/src/Files.App/Data/Items/NavigationBarSuggestionItem.cs index d638cc4be58a..f78dd6673e94 100644 --- a/src/Files.App/Data/Items/NavigationBarSuggestionItem.cs +++ b/src/Files.App/Data/Items/NavigationBarSuggestionItem.cs @@ -3,7 +3,7 @@ namespace Files.App.Data.Items { - public class NavigationBarSuggestionItem : ObservableObject + public sealed class NavigationBarSuggestionItem : ObservableObject { private string? _Text; public string? Text diff --git a/src/Files.App/Data/Items/NavigationViewItemButtonStyleItem.cs b/src/Files.App/Data/Items/NavigationViewItemButtonStyleItem.cs index 3975601fdc42..787d53a8bcdb 100644 --- a/src/Files.App/Data/Items/NavigationViewItemButtonStyleItem.cs +++ b/src/Files.App/Data/Items/NavigationViewItemButtonStyleItem.cs @@ -5,7 +5,7 @@ namespace Files.App.Data.Items { - public class NavigationViewItemButtonStyleItem : ObservableObject + public sealed class NavigationViewItemButtonStyleItem : ObservableObject { public string? Name; diff --git a/src/Files.App/Data/Items/PathBoxItem.cs b/src/Files.App/Data/Items/PathBoxItem.cs index d184620986ba..20995631df36 100644 --- a/src/Files.App/Data/Items/PathBoxItem.cs +++ b/src/Files.App/Data/Items/PathBoxItem.cs @@ -3,7 +3,7 @@ namespace Files.App.Data.Items { - public class PathBoxItem + public sealed class PathBoxItem { public string? Title { get; set; } diff --git a/src/Files.App/Data/Items/SidebarLibraryItem.cs b/src/Files.App/Data/Items/SidebarLibraryItem.cs index f0ebdcc7ec3c..d5b445bf55c3 100644 --- a/src/Files.App/Data/Items/SidebarLibraryItem.cs +++ b/src/Files.App/Data/Items/SidebarLibraryItem.cs @@ -3,7 +3,7 @@ namespace Files.App.Data.Items { - public class LibraryLocationItem : LocationItem + public sealed class LibraryLocationItem : LocationItem { public string DefaultSaveFolder { get; } diff --git a/src/Files.App/Data/Items/TagsListItem.cs b/src/Files.App/Data/Items/TagsListItem.cs index 3726104691ed..ac3e71319740 100644 --- a/src/Files.App/Data/Items/TagsListItem.cs +++ b/src/Files.App/Data/Items/TagsListItem.cs @@ -20,7 +20,7 @@ public bool IsFlyout => this as FlyoutItem; } - public class TagItem : TagsListItem + public sealed class TagItem : TagsListItem { public TagViewModel Tag { get; set; } @@ -30,7 +30,7 @@ public TagItem(TagViewModel tag) } } - public class FlyoutItem : TagsListItem + public sealed class FlyoutItem : TagsListItem { public MenuFlyout Flyout { get; set; } diff --git a/src/Files.App/Data/Items/WidgetContainerItem.cs b/src/Files.App/Data/Items/WidgetContainerItem.cs index 276f0e6d7243..37b329512c65 100644 --- a/src/Files.App/Data/Items/WidgetContainerItem.cs +++ b/src/Files.App/Data/Items/WidgetContainerItem.cs @@ -8,7 +8,7 @@ namespace Files.App.Data.Items /// /// Represents an item of Files widget container. /// - public class WidgetContainerItem : ObservableObject, IDisposable + public sealed class WidgetContainerItem : ObservableObject, IDisposable { // Fields diff --git a/src/Files.App/Data/Items/WidgetDriveCardItem.cs b/src/Files.App/Data/Items/WidgetDriveCardItem.cs index 37607b3d0ace..c2d45714eebe 100644 --- a/src/Files.App/Data/Items/WidgetDriveCardItem.cs +++ b/src/Files.App/Data/Items/WidgetDriveCardItem.cs @@ -5,7 +5,7 @@ namespace Files.App.Data.Items { - public class WidgetDriveCardItem : WidgetCardItem, IWidgetCardItem, IComparable + public sealed class WidgetDriveCardItem : WidgetCardItem, IWidgetCardItem, IComparable { private byte[] thumbnailData; diff --git a/src/Files.App/Data/Items/WidgetFolderCardItem.cs b/src/Files.App/Data/Items/WidgetFolderCardItem.cs index 96bdde6852e2..6d0f4e3a8642 100644 --- a/src/Files.App/Data/Items/WidgetFolderCardItem.cs +++ b/src/Files.App/Data/Items/WidgetFolderCardItem.cs @@ -5,7 +5,7 @@ namespace Files.App.Data.Items { - public class WidgetFolderCardItem : WidgetCardItem, IWidgetCardItem + public sealed class WidgetFolderCardItem : WidgetCardItem, IWidgetCardItem { // Fields diff --git a/src/Files.App/Data/Items/WslDistroItem.cs b/src/Files.App/Data/Items/WslDistroItem.cs index 269005c46bab..06ce36a1d123 100644 --- a/src/Files.App/Data/Items/WslDistroItem.cs +++ b/src/Files.App/Data/Items/WslDistroItem.cs @@ -5,7 +5,7 @@ namespace Files.App.Data.Items { - public class WslDistroItem : ObservableObject, INavigationControlItem + public sealed class WslDistroItem : ObservableObject, INavigationControlItem { public string Text { get; set; } diff --git a/src/Files.App/Data/Models/AppModel.cs b/src/Files.App/Data/Models/AppModel.cs index 6476f53d8882..2077b8d5f03a 100644 --- a/src/Files.App/Data/Models/AppModel.cs +++ b/src/Files.App/Data/Models/AppModel.cs @@ -6,7 +6,7 @@ namespace Files.App.Data.Models { - public class AppModel : ObservableObject + public sealed class AppModel : ObservableObject { public AppModel() { diff --git a/src/Files.App/Data/Models/ColumnsViewModel.cs b/src/Files.App/Data/Models/ColumnsViewModel.cs index f0da0a6ed512..87a8f29ad9fc 100644 --- a/src/Files.App/Data/Models/ColumnsViewModel.cs +++ b/src/Files.App/Data/Models/ColumnsViewModel.cs @@ -5,7 +5,7 @@ namespace Files.App.Data.Models { - public class ColumnsViewModel : ObservableObject + public sealed class ColumnsViewModel : ObservableObject { private DetailsLayoutColumnItem iconColumn = new() { diff --git a/src/Files.App/Data/Models/ContextMenuFlyoutItemViewModel.cs b/src/Files.App/Data/Models/ContextMenuFlyoutItemViewModel.cs index 6861aa5de6e8..35e888c8fa09 100644 --- a/src/Files.App/Data/Models/ContextMenuFlyoutItemViewModel.cs +++ b/src/Files.App/Data/Models/ContextMenuFlyoutItemViewModel.cs @@ -7,7 +7,7 @@ namespace Files.App.Data.Models { - public class ContextMenuFlyoutItemViewModel + public sealed class ContextMenuFlyoutItemViewModel { public bool ShowItem { get; set; } = true; diff --git a/src/Files.App/Data/Models/ContextMenuFlyoutItemViewModelBuilder.cs b/src/Files.App/Data/Models/ContextMenuFlyoutItemViewModelBuilder.cs index 69ec053a2f02..40e46fa500c3 100644 --- a/src/Files.App/Data/Models/ContextMenuFlyoutItemViewModelBuilder.cs +++ b/src/Files.App/Data/Models/ContextMenuFlyoutItemViewModelBuilder.cs @@ -5,7 +5,7 @@ namespace Files.App.Data.Models { - public class ContextMenuFlyoutItemViewModelBuilder + public sealed class ContextMenuFlyoutItemViewModelBuilder { private static readonly ContextMenuFlyoutItemViewModel none = new() { diff --git a/src/Files.App/Data/Models/CurrentInstanceViewModel.cs b/src/Files.App/Data/Models/CurrentInstanceViewModel.cs index 521150d2ad34..17ae3b2fb04b 100644 --- a/src/Files.App/Data/Models/CurrentInstanceViewModel.cs +++ b/src/Files.App/Data/Models/CurrentInstanceViewModel.cs @@ -3,7 +3,7 @@ namespace Files.App.Data.Models { - public class CurrentInstanceViewModel : ObservableObject + public sealed class CurrentInstanceViewModel : ObservableObject { // TODO: // In the future, we should consolidate these public variables into diff --git a/src/Files.App/Data/Models/DirectoryPropertiesViewModel.cs b/src/Files.App/Data/Models/DirectoryPropertiesViewModel.cs index d443dcb35c2a..96f5535834a6 100644 --- a/src/Files.App/Data/Models/DirectoryPropertiesViewModel.cs +++ b/src/Files.App/Data/Models/DirectoryPropertiesViewModel.cs @@ -5,7 +5,7 @@ namespace Files.App.Data.Models { - public class DirectoryPropertiesViewModel : ObservableObject + public sealed class DirectoryPropertiesViewModel : ObservableObject { private IContentPageContext ContentPageContext { get; } = Ioc.Default.GetRequiredService(); diff --git a/src/Files.App/Data/Models/DrivesViewModel.cs b/src/Files.App/Data/Models/DrivesViewModel.cs index ed650d0fe3ab..edcae42e75de 100644 --- a/src/Files.App/Data/Models/DrivesViewModel.cs +++ b/src/Files.App/Data/Models/DrivesViewModel.cs @@ -8,7 +8,7 @@ namespace Files.App.Data.Models { - public class DrivesViewModel : ObservableObject, IDisposable + public sealed class DrivesViewModel : ObservableObject, IDisposable { public ObservableCollection Drives { diff --git a/src/Files.App/Data/Models/GitItemModel.cs b/src/Files.App/Data/Models/GitItemModel.cs index 4e364e6237be..a71f4740d3a4 100644 --- a/src/Files.App/Data/Models/GitItemModel.cs +++ b/src/Files.App/Data/Models/GitItemModel.cs @@ -6,7 +6,7 @@ namespace Files.App.Data.Models /// /// Represents a model for Git items /// - internal class GitItemModel + internal sealed class GitItemModel { /// /// Gets or initializes file change kind diff --git a/src/Files.App/Data/Models/ItemManipulationModel.cs b/src/Files.App/Data/Models/ItemManipulationModel.cs index dbb706b9f0a3..2bf6cdb3c691 100644 --- a/src/Files.App/Data/Models/ItemManipulationModel.cs +++ b/src/Files.App/Data/Models/ItemManipulationModel.cs @@ -3,7 +3,7 @@ namespace Files.App.Data.Models { - public class ItemManipulationModel + public sealed class ItemManipulationModel { public event EventHandler FocusFileListInvoked; diff --git a/src/Files.App/Data/Models/ItemViewModel.cs b/src/Files.App/Data/Models/ItemViewModel.cs index 7ef67326f166..400f1c3834c7 100644 --- a/src/Files.App/Data/Models/ItemViewModel.cs +++ b/src/Files.App/Data/Models/ItemViewModel.cs @@ -2465,7 +2465,7 @@ public void Dispose() } } - public class PageTypeUpdatedEventArgs + public sealed class PageTypeUpdatedEventArgs { public bool IsTypeCloudDrive { get; set; } @@ -2476,7 +2476,7 @@ public class PageTypeUpdatedEventArgs public bool IsTypeSearchResults { get; set; } } - public class WorkingDirectoryModifiedEventArgs : EventArgs + public sealed class WorkingDirectoryModifiedEventArgs : EventArgs { public string? Path { get; set; } @@ -2485,7 +2485,7 @@ public class WorkingDirectoryModifiedEventArgs : EventArgs public bool IsLibrary { get; set; } } - public class ItemLoadStatusChangedEventArgs : EventArgs + public sealed class ItemLoadStatusChangedEventArgs : EventArgs { public enum ItemLoadStatus { diff --git a/src/Files.App/Data/Models/NetworkDrivesViewModel.cs b/src/Files.App/Data/Models/NetworkDrivesViewModel.cs index b863984210d7..26dd7e6fd0e7 100644 --- a/src/Files.App/Data/Models/NetworkDrivesViewModel.cs +++ b/src/Files.App/Data/Models/NetworkDrivesViewModel.cs @@ -7,7 +7,7 @@ namespace Files.App.Data.Models { - public class NetworkDrivesViewModel : ObservableObject + public sealed class NetworkDrivesViewModel : ObservableObject { public ObservableCollection Drives { diff --git a/src/Files.App/Data/Models/PinnedFoldersManager.cs b/src/Files.App/Data/Models/PinnedFoldersManager.cs index 2098b58f78a8..fff503967e1e 100644 --- a/src/Files.App/Data/Models/PinnedFoldersManager.cs +++ b/src/Files.App/Data/Models/PinnedFoldersManager.cs @@ -7,7 +7,7 @@ namespace Files.App.Data.Models { - public class PinnedFoldersManager + public sealed class PinnedFoldersManager { private IUserSettingsService userSettingsService { get; } = Ioc.Default.GetRequiredService(); private IQuickAccessService QuickAccessService { get; } = Ioc.Default.GetRequiredService(); diff --git a/src/Files.App/Data/Models/RemovableDevice.cs b/src/Files.App/Data/Models/RemovableDevice.cs index 42936d237bce..0ce23aa403c5 100644 --- a/src/Files.App/Data/Models/RemovableDevice.cs +++ b/src/Files.App/Data/Models/RemovableDevice.cs @@ -8,7 +8,7 @@ namespace Files.App.Data.Models { - public class RemovableDevice + public sealed class RemovableDevice { private nint handle; private char driveLetter; diff --git a/src/Files.App/Data/Models/SelectedItemsPropertiesViewModel.cs b/src/Files.App/Data/Models/SelectedItemsPropertiesViewModel.cs index 3550ed75ad17..97a7a62b80ef 100644 --- a/src/Files.App/Data/Models/SelectedItemsPropertiesViewModel.cs +++ b/src/Files.App/Data/Models/SelectedItemsPropertiesViewModel.cs @@ -8,7 +8,7 @@ namespace Files.App.Data.Models { - public class SelectedItemsPropertiesViewModel : ObservableObject + public sealed class SelectedItemsPropertiesViewModel : ObservableObject { private static readonly IDateTimeFormatter dateTimeFormatter = Ioc.Default.GetRequiredService(); diff --git a/src/Files.App/Data/Models/SuggestionModel.cs b/src/Files.App/Data/Models/SuggestionModel.cs index 1efecefe7fb2..cdbb2ad0d1cf 100644 --- a/src/Files.App/Data/Models/SuggestionModel.cs +++ b/src/Files.App/Data/Models/SuggestionModel.cs @@ -5,7 +5,7 @@ namespace Files.App.Data.Models { - public class SuggestionModel : ObservableObject + public sealed class SuggestionModel : ObservableObject { public bool IsRecentSearch { get; set; } = false; diff --git a/src/Files.App/Data/Parameters/ColumnParam.cs b/src/Files.App/Data/Parameters/ColumnParam.cs index cd59edffef9a..97f719339bdd 100644 --- a/src/Files.App/Data/Parameters/ColumnParam.cs +++ b/src/Files.App/Data/Parameters/ColumnParam.cs @@ -7,7 +7,7 @@ namespace Files.App.Data.Parameters { - public class ColumnParam : NavigationArguments + public sealed class ColumnParam : NavigationArguments { public int Column { get; set; } diff --git a/src/Files.App/Data/Parameters/NavigationParams.cs b/src/Files.App/Data/Parameters/NavigationParams.cs index fd4db65b1301..89dd3d2a1fca 100644 --- a/src/Files.App/Data/Parameters/NavigationParams.cs +++ b/src/Files.App/Data/Parameters/NavigationParams.cs @@ -3,7 +3,7 @@ namespace Files.App.Data.Parameters { - public class NavigationParams + public sealed class NavigationParams { public string? NavPath { get; set; } diff --git a/src/Files.App/Data/Parameters/PropertiesPageNavigationParameter.cs b/src/Files.App/Data/Parameters/PropertiesPageNavigationParameter.cs index d59189d632ab..f90a8b77baf8 100644 --- a/src/Files.App/Data/Parameters/PropertiesPageNavigationParameter.cs +++ b/src/Files.App/Data/Parameters/PropertiesPageNavigationParameter.cs @@ -5,7 +5,7 @@ namespace Files.App.Data.Parameters { - public class PropertiesPageNavigationParameter + public sealed class PropertiesPageNavigationParameter { public CancellationTokenSource CancellationTokenSource; diff --git a/src/Files.App/Dialogs/CreateArchiveDialog.xaml.cs b/src/Files.App/Dialogs/CreateArchiveDialog.xaml.cs index 8d99b990dc9e..01e4c21d516f 100644 --- a/src/Files.App/Dialogs/CreateArchiveDialog.xaml.cs +++ b/src/Files.App/Dialogs/CreateArchiveDialog.xaml.cs @@ -96,7 +96,7 @@ private void ViewModel_PropertyChanged(object? _, PropertyChangedEventArgs e) PasswordBox.Focus(FocusState.Programmatic); } - private class DialogViewModel : ObservableObject + private sealed class DialogViewModel : ObservableObject { public bool IsNameValid => FilesystemHelpers.IsValidForFilename(fileName); diff --git a/src/Files.App/Extensions/ImageFromBytes.cs b/src/Files.App/Extensions/ImageFromBytes.cs index c807fdca1ddc..f679de6ec2a0 100644 --- a/src/Files.App/Extensions/ImageFromBytes.cs +++ b/src/Files.App/Extensions/ImageFromBytes.cs @@ -6,7 +6,7 @@ namespace Files.App.Extensions { - public class ImageFromBytes : DependencyObject + public sealed class ImageFromBytes : DependencyObject { public static byte[] GetSourceBytes(DependencyObject obj) { diff --git a/src/Files.App/Helpers/CredentialsHelpers.cs b/src/Files.App/Helpers/CredentialsHelpers.cs index 98cac2dfe44c..334dd752200c 100644 --- a/src/Files.App/Helpers/CredentialsHelpers.cs +++ b/src/Files.App/Helpers/CredentialsHelpers.cs @@ -3,7 +3,7 @@ namespace Files.App.Helpers { - internal class CredentialsHelpers + internal sealed class CredentialsHelpers { public static void SavePassword(string resourceName, string username, string password) { diff --git a/src/Files.App/Helpers/Dialog/DialogDisplayHelper.cs b/src/Files.App/Helpers/Dialog/DialogDisplayHelper.cs index 4b030f67f7d1..48a8f7e91bfa 100644 --- a/src/Files.App/Helpers/Dialog/DialogDisplayHelper.cs +++ b/src/Files.App/Helpers/Dialog/DialogDisplayHelper.cs @@ -9,7 +9,7 @@ namespace Files.App.Helpers { - internal class DialogDisplayHelper + internal sealed class DialogDisplayHelper { /// /// Standard dialog, to ensure consistency. diff --git a/src/Files.App/Helpers/Interop/NativeDirectoryChangesHelper.cs b/src/Files.App/Helpers/Interop/NativeDirectoryChangesHelper.cs index 01d2a23a1385..be87244ed52c 100644 --- a/src/Files.App/Helpers/Interop/NativeDirectoryChangesHelper.cs +++ b/src/Files.App/Helpers/Interop/NativeDirectoryChangesHelper.cs @@ -6,7 +6,7 @@ namespace Files.App.Helpers { - public class NativeDirectoryChangesHelper + public sealed class NativeDirectoryChangesHelper { [DllImport("api-ms-win-core-handle-l1-1-0.dll")] public static extern bool CloseHandle(IntPtr hObject); diff --git a/src/Files.App/Helpers/Interop/NativeFileOperationsHelper.cs b/src/Files.App/Helpers/Interop/NativeFileOperationsHelper.cs index 1378a32309b5..44663fbb2b17 100644 --- a/src/Files.App/Helpers/Interop/NativeFileOperationsHelper.cs +++ b/src/Files.App/Helpers/Interop/NativeFileOperationsHelper.cs @@ -14,7 +14,7 @@ namespace Files.App.Helpers { - public class NativeFileOperationsHelper + public sealed class NativeFileOperationsHelper { public enum File_Attributes : uint { @@ -326,7 +326,7 @@ private enum StreamInfoLevels { FindStreamInfoStandard = 0 } private static extern bool FindNextStreamW(IntPtr hndFindFile, [In, Out, MarshalAs(UnmanagedType.LPStruct)] WIN32_FIND_STREAM_DATA lpFindStreamData); [StructLayout(LayoutKind.Sequential, CharSet = CharSet.Unicode)] - private class WIN32_FIND_STREAM_DATA { + private sealed class WIN32_FIND_STREAM_DATA { public long StreamSize; [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 296)] public string cStreamName; diff --git a/src/Files.App/Helpers/Interop/NativeIoDeviceControlHelper.cs b/src/Files.App/Helpers/Interop/NativeIoDeviceControlHelper.cs index 16c0855f5b56..dd34b692ccbc 100644 --- a/src/Files.App/Helpers/Interop/NativeIoDeviceControlHelper.cs +++ b/src/Files.App/Helpers/Interop/NativeIoDeviceControlHelper.cs @@ -6,7 +6,7 @@ namespace Files.App.Helpers { - public class NativeIoDeviceControlHelper + public sealed class NativeIoDeviceControlHelper { [DllImport("api-ms-win-core-file-fromapp-l1-1-0.dll", SetLastError = true, CharSet = CharSet.Auto)] public static extern IntPtr CreateFileFromAppW( diff --git a/src/Files.App/Helpers/Interop/NativeWinApiHelper.cs b/src/Files.App/Helpers/Interop/NativeWinApiHelper.cs index c302df814bb5..84973a4ae94f 100644 --- a/src/Files.App/Helpers/Interop/NativeWinApiHelper.cs +++ b/src/Files.App/Helpers/Interop/NativeWinApiHelper.cs @@ -10,7 +10,7 @@ namespace Files.App.Helpers { - public class NativeWinApiHelper + public sealed class NativeWinApiHelper { [DllImport("user32.dll")] public static extern short GetKeyState(short code); diff --git a/src/Files.App/Helpers/IntervalSampler.cs b/src/Files.App/Helpers/IntervalSampler.cs index 11f56f45fc05..8877215b30a6 100644 --- a/src/Files.App/Helpers/IntervalSampler.cs +++ b/src/Files.App/Helpers/IntervalSampler.cs @@ -5,7 +5,7 @@ namespace Files.App.Helpers { - internal class IntervalSampler + internal sealed class IntervalSampler { private DateTime recordPoint; private TimeSpan sampleInterval; diff --git a/src/Files.App/Helpers/Layout/LayoutPreferencesDatabaseItem.cs b/src/Files.App/Helpers/Layout/LayoutPreferencesDatabaseItem.cs index 21a7e41cd1ce..2544b7354794 100644 --- a/src/Files.App/Helpers/Layout/LayoutPreferencesDatabaseItem.cs +++ b/src/Files.App/Helpers/Layout/LayoutPreferencesDatabaseItem.cs @@ -8,7 +8,7 @@ namespace Files.App.Helpers /// /// Represents item for the database of a folder's layout preferences. /// - public class LayoutPreferencesDatabaseItem + public sealed class LayoutPreferencesDatabaseItem { [BsonId] public int Id { get; set; } diff --git a/src/Files.App/Helpers/Layout/LayoutPreferencesDatabaseManager.cs b/src/Files.App/Helpers/Layout/LayoutPreferencesDatabaseManager.cs index 26cb6b638f5a..a5247bd7a54e 100644 --- a/src/Files.App/Helpers/Layout/LayoutPreferencesDatabaseManager.cs +++ b/src/Files.App/Helpers/Layout/LayoutPreferencesDatabaseManager.cs @@ -9,7 +9,7 @@ namespace Files.App.Helpers /// /// Represents manager for the database of layout preferences. /// - public class LayoutPreferencesDatabaseManager : IDisposable + public sealed class LayoutPreferencesDatabaseManager : IDisposable { // Fields diff --git a/src/Files.App/Helpers/Layout/LayoutPreferencesItem.cs b/src/Files.App/Helpers/Layout/LayoutPreferencesItem.cs index 2c63c5b7c3c5..321e9ac16c97 100644 --- a/src/Files.App/Helpers/Layout/LayoutPreferencesItem.cs +++ b/src/Files.App/Helpers/Layout/LayoutPreferencesItem.cs @@ -6,7 +6,7 @@ namespace Files.App.Helpers /// /// Represents item for a folder's layout preferences. /// - public class LayoutPreferencesItem + public sealed class LayoutPreferencesItem { // Dependency injections diff --git a/src/Files.App/Helpers/Layout/LayoutPreferencesManager.cs b/src/Files.App/Helpers/Layout/LayoutPreferencesManager.cs index 94bcd7ac5346..3a1549702fdf 100644 --- a/src/Files.App/Helpers/Layout/LayoutPreferencesManager.cs +++ b/src/Files.App/Helpers/Layout/LayoutPreferencesManager.cs @@ -9,7 +9,7 @@ namespace Files.App.Data.Models /// /// Represents manager for layout preferences settings. /// - public class LayoutPreferencesManager : ObservableObject + public sealed class LayoutPreferencesManager : ObservableObject { // Dependency injections diff --git a/src/Files.App/Helpers/MediaFileHelper.cs b/src/Files.App/Helpers/MediaFileHelper.cs index 796c11a07f17..ea46641c35c5 100644 --- a/src/Files.App/Helpers/MediaFileHelper.cs +++ b/src/Files.App/Helpers/MediaFileHelper.cs @@ -2,7 +2,7 @@ namespace Files.App.Helpers { - internal class MediaFileHelper + internal sealed class MediaFileHelper { /// /// Changes the album cover for a given . diff --git a/src/Files.App/Helpers/MenuFlyout/MenuFlyoutHelper.cs b/src/Files.App/Helpers/MenuFlyout/MenuFlyoutHelper.cs index 425b7a052412..8db44068d672 100644 --- a/src/Files.App/Helpers/MenuFlyout/MenuFlyoutHelper.cs +++ b/src/Files.App/Helpers/MenuFlyout/MenuFlyoutHelper.cs @@ -8,13 +8,13 @@ namespace Files.App.Helpers { [Obsolete("Must not use this helper to generate menu flyout any longer.")] - public class MenuFlyoutHelper : DependencyObject + public sealed class MenuFlyoutHelper : DependencyObject { public interface IMenuFlyoutItemViewModel { } - public class MenuFlyoutSeparatorViewModel : IMenuFlyoutItemViewModel { } + public sealed class MenuFlyoutSeparatorViewModel : IMenuFlyoutItemViewModel { } - public class MenuFlyoutItemViewModel : IMenuFlyoutItemViewModel + public sealed class MenuFlyoutItemViewModel : IMenuFlyoutItemViewModel { public string Text { get; init; } @@ -30,7 +30,7 @@ public MenuFlyoutItemViewModel(string text) => Text = text; } - public class MenuFlyoutSubItemViewModel : IMenuFlyoutItemViewModel + public sealed class MenuFlyoutSubItemViewModel : IMenuFlyoutItemViewModel { public string Text { get; } @@ -42,7 +42,7 @@ public MenuFlyoutSubItemViewModel(string text) => Text = text; } - public class MenuFlyoutFactoryItemViewModel : IMenuFlyoutItemViewModel + public sealed class MenuFlyoutFactoryItemViewModel : IMenuFlyoutItemViewModel { public Func Build { get; } diff --git a/src/Files.App/Helpers/NaturalStringComparer.cs b/src/Files.App/Helpers/NaturalStringComparer.cs index 848629b5740c..00b1d32d6f05 100644 --- a/src/Files.App/Helpers/NaturalStringComparer.cs +++ b/src/Files.App/Helpers/NaturalStringComparer.cs @@ -38,14 +38,14 @@ Int32 param ); } - public class NaturalStringComparer + public sealed class NaturalStringComparer { public static IComparer GetForProcessor() { return NativeWinApiHelper.IsRunningOnArm ? new StringComparerArm64() : new StringComparerDefault(); } - private class StringComparerArm64 : IComparer + private sealed class StringComparerArm64 : IComparer { public int Compare(object a, object b) { @@ -53,7 +53,7 @@ public int Compare(object a, object b) } } - private class StringComparerDefault : IComparer + private sealed class StringComparerDefault : IComparer { public int Compare(object a, object b) { diff --git a/src/Files.App/Helpers/Navigation/NavigationInteractionTracker.cs b/src/Files.App/Helpers/Navigation/NavigationInteractionTracker.cs index 42df0fa36fbd..360873181a65 100644 --- a/src/Files.App/Helpers/Navigation/NavigationInteractionTracker.cs +++ b/src/Files.App/Helpers/Navigation/NavigationInteractionTracker.cs @@ -12,7 +12,7 @@ namespace Files.App.Helpers { - internal class NavigationInteractionTracker : IDisposable + internal sealed class NavigationInteractionTracker : IDisposable { public bool CanNavigateForward { @@ -175,7 +175,7 @@ public void Dispose() GC.SuppressFinalize(this); } - private class InteractionTrackerOwner : IInteractionTrackerOwner + private sealed class InteractionTrackerOwner : IInteractionTrackerOwner { private NavigationInteractionTracker _parent; private bool _shouldBounceBack; diff --git a/src/Files.App/Helpers/TypesConverter.cs b/src/Files.App/Helpers/TypesConverter.cs index 8ecfde12e9df..22227f3dd1b4 100644 --- a/src/Files.App/Helpers/TypesConverter.cs +++ b/src/Files.App/Helpers/TypesConverter.cs @@ -7,7 +7,7 @@ namespace Files.App.Helpers { - public class KnownTypesConverter + public sealed class KnownTypesConverter { public JsonSerializerOptions Options { get; } = new JsonSerializerOptions(); @@ -17,7 +17,7 @@ public KnownTypesConverter() } } - public class TypesConverter : JsonConverter + public sealed class TypesConverter : JsonConverter { public override Type Read(ref Utf8JsonReader reader, Type typeToConvert, JsonSerializerOptions options) => typeToConvert; public override void Write(Utf8JsonWriter writer, Type value, JsonSerializerOptions options) => writer.WriteStringValue(value.FullName); diff --git a/src/Files.App/Helpers/WMI/ManagementEventWatcher.cs b/src/Files.App/Helpers/WMI/ManagementEventWatcher.cs index 94903eaf8240..9cf0a16af65d 100644 --- a/src/Files.App/Helpers/WMI/ManagementEventWatcher.cs +++ b/src/Files.App/Helpers/WMI/ManagementEventWatcher.cs @@ -11,7 +11,7 @@ namespace Files.App.Helpers public delegate void EventArrivedEventHandler(object sender, EventArrivedEventArgs e); /// - /// A public class used to start/stop the subscription to specific indication source, + /// A public sealed class used to start/stop the subscription to specific indication source, /// and listen to the incoming indications, event /// will be raised for each cimindication. /// Original Sourced from: https://codereview.stackexchange.com/questions/255055/trying-to-replace-managementeventwatcher-class-in-system-management-to-switch-to diff --git a/src/Files.App/Helpers/WMI/WqlEventQuery.cs b/src/Files.App/Helpers/WMI/WqlEventQuery.cs index f542273e5127..d5388b6c7680 100644 --- a/src/Files.App/Helpers/WMI/WqlEventQuery.cs +++ b/src/Files.App/Helpers/WMI/WqlEventQuery.cs @@ -3,7 +3,7 @@ namespace Files.App.Helpers { - public class WqlEventQuery + public sealed class WqlEventQuery { public string QueryExpression { get; } diff --git a/src/Files.App/Helpers/Win32/Win32Helper.Storage.cs b/src/Files.App/Helpers/Win32/Win32Helper.Storage.cs index 0457034d3b43..7d8fd3656044 100644 --- a/src/Files.App/Helpers/Win32/Win32Helper.Storage.cs +++ b/src/Files.App/Helpers/Win32/Win32Helper.Storage.cs @@ -731,7 +731,7 @@ public static void BringToForeground(IEnumerable currentWindows) return (ret != 0) ? sb.ToString() : null; } - public class Win32Window : IWin32Window + public sealed class Win32Window : IWin32Window { public IntPtr Handle { get; set; } diff --git a/src/Files.App/Helpers/Xaml/SystemTypeToXaml.cs b/src/Files.App/Helpers/Xaml/SystemTypeToXaml.cs index b96dbaed3004..60d730e08f17 100644 --- a/src/Files.App/Helpers/Xaml/SystemTypeToXaml.cs +++ b/src/Files.App/Helpers/Xaml/SystemTypeToXaml.cs @@ -5,7 +5,7 @@ namespace Files.App.Helpers { - public class SystemTypeToXaml : MarkupExtension + public sealed class SystemTypeToXaml : MarkupExtension { #region Private Members diff --git a/src/Files.App/Services/DateTimeFormatter/AbstractDateTimeFormatter.cs b/src/Files.App/Services/DateTimeFormatter/AbstractDateTimeFormatter.cs index 9610d83ec900..3a26859280b1 100644 --- a/src/Files.App/Services/DateTimeFormatter/AbstractDateTimeFormatter.cs +++ b/src/Files.App/Services/DateTimeFormatter/AbstractDateTimeFormatter.cs @@ -69,7 +69,7 @@ private static int GetWeekOfYear(DateTimeOffset t) return cultureInfo.Calendar.GetWeekOfYear(t.DateTime, CalendarWeekRule.FirstFullWeek, cultureInfo.DateTimeFormat.FirstDayOfWeek); } - private class Label : ITimeSpanLabel + private sealed class Label : ITimeSpanLabel { public string Text { get; } diff --git a/src/Files.App/Services/DateTimeFormatter/ApplicationDateTimeFormatter.cs b/src/Files.App/Services/DateTimeFormatter/ApplicationDateTimeFormatter.cs index a9e4b5bb74b1..d4a54a92de26 100644 --- a/src/Files.App/Services/DateTimeFormatter/ApplicationDateTimeFormatter.cs +++ b/src/Files.App/Services/DateTimeFormatter/ApplicationDateTimeFormatter.cs @@ -6,7 +6,7 @@ namespace Files.App.Services.DateTimeFormatter { - internal class ApplicationDateTimeFormatter : AbstractDateTimeFormatter + internal sealed class ApplicationDateTimeFormatter : AbstractDateTimeFormatter { public override string Name => "Application".GetLocalizedResource(); diff --git a/src/Files.App/Services/DateTimeFormatter/DateTimeFormatterFactory.cs b/src/Files.App/Services/DateTimeFormatter/DateTimeFormatterFactory.cs index 16366d1c0685..ac45527aeec4 100644 --- a/src/Files.App/Services/DateTimeFormatter/DateTimeFormatterFactory.cs +++ b/src/Files.App/Services/DateTimeFormatter/DateTimeFormatterFactory.cs @@ -5,7 +5,7 @@ namespace Files.App.Services.DateTimeFormatter { - public class DateTimeFormatterFactory : IDateTimeFormatterFactory + public sealed class DateTimeFormatterFactory : IDateTimeFormatterFactory { public IDateTimeFormatter GetDateTimeFormatter(DateTimeFormats dateTimeFormat) => dateTimeFormat switch { diff --git a/src/Files.App/Services/DateTimeFormatter/SystemDateTimeFormatter.cs b/src/Files.App/Services/DateTimeFormatter/SystemDateTimeFormatter.cs index 00a5bece0582..a882f61f9095 100644 --- a/src/Files.App/Services/DateTimeFormatter/SystemDateTimeFormatter.cs +++ b/src/Files.App/Services/DateTimeFormatter/SystemDateTimeFormatter.cs @@ -6,7 +6,7 @@ namespace Files.App.Services.DateTimeFormatter { - internal class SystemDateTimeFormatter : AbstractDateTimeFormatter + internal sealed class SystemDateTimeFormatter : AbstractDateTimeFormatter { public override string Name => "SystemTimeStyle".GetLocalizedResource(); diff --git a/src/Files.App/Services/DateTimeFormatter/UniversalDateTimeFormatter.cs b/src/Files.App/Services/DateTimeFormatter/UniversalDateTimeFormatter.cs index 8957a3c50e95..8f80e69e9bd8 100644 --- a/src/Files.App/Services/DateTimeFormatter/UniversalDateTimeFormatter.cs +++ b/src/Files.App/Services/DateTimeFormatter/UniversalDateTimeFormatter.cs @@ -6,7 +6,7 @@ namespace Files.App.Services.DateTimeFormatter { - internal class UniversalDateTimeFormatter : AbstractDateTimeFormatter + internal sealed class UniversalDateTimeFormatter : AbstractDateTimeFormatter { public override string Name => "Universal".GetLocalizedResource(); diff --git a/src/Files.App/Services/DateTimeFormatter/UserDateTimeFormatter.cs b/src/Files.App/Services/DateTimeFormatter/UserDateTimeFormatter.cs index d3f542655d89..f1ad9be7cfff 100644 --- a/src/Files.App/Services/DateTimeFormatter/UserDateTimeFormatter.cs +++ b/src/Files.App/Services/DateTimeFormatter/UserDateTimeFormatter.cs @@ -3,7 +3,7 @@ namespace Files.App.Services.DateTimeFormatter { - internal class UserDateTimeFormatter : IDateTimeFormatter + internal sealed class UserDateTimeFormatter : IDateTimeFormatter { public IUserSettingsService UserSettingsService { get; } = Ioc.Default.GetRequiredService(); diff --git a/src/Files.App/Services/JumpListService.cs b/src/Files.App/Services/JumpListService.cs index 51537dd0ba8c..0a64ac420d14 100644 --- a/src/Files.App/Services/JumpListService.cs +++ b/src/Files.App/Services/JumpListService.cs @@ -7,7 +7,7 @@ namespace Files.App.Services { - public class JumpListService : IJumpListService + public sealed class JumpListService : IJumpListService { private const string JumpListRecentGroupHeader = "ms-resource:///Resources/JumpListRecentGroupHeader"; private const string JumpListPinnedGroupHeader = "ms-resource:///Resources/JumpListPinnedGroupHeader"; diff --git a/src/Files.App/Services/NetworkDrivesService.cs b/src/Files.App/Services/NetworkDrivesService.cs index 60c608011b90..6fa1ccbca846 100644 --- a/src/Files.App/Services/NetworkDrivesService.cs +++ b/src/Files.App/Services/NetworkDrivesService.cs @@ -8,7 +8,7 @@ namespace Files.App.Services { - public class NetworkDrivesService : INetworkDrivesService + public sealed class NetworkDrivesService : INetworkDrivesService { public bool DisconnectNetworkDrive(ILocatableFolder drive) { diff --git a/src/Files.App/Services/PreviewPopupProviders/QuickLookProvider.cs b/src/Files.App/Services/PreviewPopupProviders/QuickLookProvider.cs index 2cace1a65348..0de543e82216 100644 --- a/src/Files.App/Services/PreviewPopupProviders/QuickLookProvider.cs +++ b/src/Files.App/Services/PreviewPopupProviders/QuickLookProvider.cs @@ -8,7 +8,7 @@ namespace Files.App.Services.PreviewPopupProviders { - public class QuickLookProvider : IPreviewPopupProvider + public sealed class QuickLookProvider : IPreviewPopupProvider { public static QuickLookProvider Instance { get; } = new(); diff --git a/src/Files.App/Services/PreviewPopupProviders/SeerProProvider.cs b/src/Files.App/Services/PreviewPopupProviders/SeerProProvider.cs index 11f587a65b9e..af03cd732893 100644 --- a/src/Files.App/Services/PreviewPopupProviders/SeerProProvider.cs +++ b/src/Files.App/Services/PreviewPopupProviders/SeerProProvider.cs @@ -14,7 +14,7 @@ public struct COPYDATASTRUCT public IntPtr lpData; } - public class SeerProProvider : IPreviewPopupProvider + public sealed class SeerProProvider : IPreviewPopupProvider { public static SeerProProvider Instance { get; } = new(); diff --git a/src/Files.App/Services/QuickAccessService.cs b/src/Files.App/Services/QuickAccessService.cs index 1c072b6ab73c..30b6462f5cf0 100644 --- a/src/Files.App/Services/QuickAccessService.cs +++ b/src/Files.App/Services/QuickAccessService.cs @@ -6,7 +6,7 @@ namespace Files.App.Services { - internal class QuickAccessService : IQuickAccessService + internal sealed class QuickAccessService : IQuickAccessService { private readonly static string guid = "::{679f85cb-0220-4080-b29b-5540cc05aab6}"; diff --git a/src/Files.App/Services/RemovableDrivesService.cs b/src/Files.App/Services/RemovableDrivesService.cs index bf7d2269ed5f..8e5cdc8b89b9 100644 --- a/src/Files.App/Services/RemovableDrivesService.cs +++ b/src/Files.App/Services/RemovableDrivesService.cs @@ -9,7 +9,7 @@ namespace Files.App.Services { - public class RemovableDrivesService : IRemovableDrivesService + public sealed class RemovableDrivesService : IRemovableDrivesService { public IStorageDeviceWatcher CreateWatcher() { diff --git a/src/Files.App/Services/ResourcesService.cs b/src/Files.App/Services/ResourcesService.cs index 55d3d77073d6..9a4073dcc6fe 100644 --- a/src/Files.App/Services/ResourcesService.cs +++ b/src/Files.App/Services/ResourcesService.cs @@ -7,7 +7,7 @@ namespace Files.App.Services { /// - public class ResourcesService : IResourcesService + public sealed class ResourcesService : IResourcesService { /// public void SetAppThemeBackgroundColor(Color appThemeBackgroundColor) diff --git a/src/Files.App/Services/UserSizeProvider.cs b/src/Files.App/Services/UserSizeProvider.cs index eaff241f413c..2fda8908b1ac 100644 --- a/src/Files.App/Services/UserSizeProvider.cs +++ b/src/Files.App/Services/UserSizeProvider.cs @@ -5,7 +5,7 @@ namespace Files.App.Services { - public class UserSizeProvider : ISizeProvider + public sealed class UserSizeProvider : ISizeProvider { private readonly IFoldersSettingsService folderPreferences = Ioc.Default.GetRequiredService(); diff --git a/src/Files.App/Services/VolumeInfoFactory.cs b/src/Files.App/Services/VolumeInfoFactory.cs index d90b7319440c..9edeead0c859 100644 --- a/src/Files.App/Services/VolumeInfoFactory.cs +++ b/src/Files.App/Services/VolumeInfoFactory.cs @@ -3,7 +3,7 @@ namespace Files.App.Services { - internal class VolumeInfoFactory : IVolumeInfoFactory + internal sealed class VolumeInfoFactory : IVolumeInfoFactory { public VolumeInfo BuildVolumeInfo(string driveName) { diff --git a/src/Files.App/Services/WindowsCompatibilityService.cs b/src/Files.App/Services/WindowsCompatibilityService.cs index b77f73633e48..67678d44b6d4 100644 --- a/src/Files.App/Services/WindowsCompatibilityService.cs +++ b/src/Files.App/Services/WindowsCompatibilityService.cs @@ -6,7 +6,7 @@ namespace Files.App.Services { /// - public class WindowsCompatibilityService : IWindowsCompatibilityService + public sealed class WindowsCompatibilityService : IWindowsCompatibilityService { private readonly string _registrySubPath = "SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\AppCompatFlags\\Layers"; diff --git a/src/Files.App/UserControls/Menus/FileTagsContextMenu.cs b/src/Files.App/UserControls/Menus/FileTagsContextMenu.cs index bdbf29c8bfb7..7fa4c885939c 100644 --- a/src/Files.App/UserControls/Menus/FileTagsContextMenu.cs +++ b/src/Files.App/UserControls/Menus/FileTagsContextMenu.cs @@ -9,7 +9,7 @@ namespace Files.App.UserControls.Menus { - public class FileTagsContextMenu : MenuFlyout + public sealed class FileTagsContextMenu : MenuFlyout { private IFileTagsSettingsService FileTagsSettingsService { get; } = Ioc.Default.GetService(); diff --git a/src/Files.App/UserControls/Menus/MenuFlyoutSubItemCustomProperties.cs b/src/Files.App/UserControls/Menus/MenuFlyoutSubItemCustomProperties.cs index 29b380d5a79d..3f6a2fc4ee54 100644 --- a/src/Files.App/UserControls/Menus/MenuFlyoutSubItemCustomProperties.cs +++ b/src/Files.App/UserControls/Menus/MenuFlyoutSubItemCustomProperties.cs @@ -8,7 +8,7 @@ namespace Files.App.UserControls.Menus { [Microsoft.UI.Xaml.Data.Bindable] - public class MenuFlyoutSubItemCustomProperties : DependencyObject + public sealed class MenuFlyoutSubItemCustomProperties : DependencyObject { public static readonly DependencyProperty BitmapIconProperty = DependencyProperty.Register("BitmapIcon", typeof(BitmapImage), typeof(MenuFlyoutSubItemCustomProperties), new PropertyMetadata(null, OnBitmapIconChanged)); diff --git a/src/Files.App/UserControls/Pane/InfoPane.xaml.cs b/src/Files.App/UserControls/Pane/InfoPane.xaml.cs index cd233b212104..d2d50794d269 100644 --- a/src/Files.App/UserControls/Pane/InfoPane.xaml.cs +++ b/src/Files.App/UserControls/Pane/InfoPane.xaml.cs @@ -76,7 +76,7 @@ private void FileTag_PointerExited(object sender, PointerRoutedEventArgs e) VisualStateManager.GoToState((UserControl)sender, "Normal", true); } - private class ObservableContext : ObservableObject + private sealed class ObservableContext : ObservableObject { private bool isHorizontal = false; public bool IsHorizontal diff --git a/src/Files.App/UserControls/Selection/ExtendPreviousItemSelectionStrategy.cs b/src/Files.App/UserControls/Selection/ExtendPreviousItemSelectionStrategy.cs index 35d96ace519f..82d72c590c1d 100644 --- a/src/Files.App/UserControls/Selection/ExtendPreviousItemSelectionStrategy.cs +++ b/src/Files.App/UserControls/Selection/ExtendPreviousItemSelectionStrategy.cs @@ -6,7 +6,7 @@ namespace Files.App.UserControls.Selection { - public class ExtendPreviousItemSelectionStrategy : ItemSelectionStrategy + public sealed class ExtendPreviousItemSelectionStrategy : ItemSelectionStrategy { private readonly List prevSelectedItems; diff --git a/src/Files.App/UserControls/Selection/IgnorePreviousItemSelectionStrategy.cs b/src/Files.App/UserControls/Selection/IgnorePreviousItemSelectionStrategy.cs index 561f31765675..c226f0ac8461 100644 --- a/src/Files.App/UserControls/Selection/IgnorePreviousItemSelectionStrategy.cs +++ b/src/Files.App/UserControls/Selection/IgnorePreviousItemSelectionStrategy.cs @@ -6,7 +6,7 @@ namespace Files.App.UserControls.Selection { - public class IgnorePreviousItemSelectionStrategy : ItemSelectionStrategy + public sealed class IgnorePreviousItemSelectionStrategy : ItemSelectionStrategy { public IgnorePreviousItemSelectionStrategy(ICollection selectedItems) : base(selectedItems) { diff --git a/src/Files.App/UserControls/Selection/InvertPreviousItemSelectionStrategy.cs b/src/Files.App/UserControls/Selection/InvertPreviousItemSelectionStrategy.cs index 133352bd0240..0ce775d031ff 100644 --- a/src/Files.App/UserControls/Selection/InvertPreviousItemSelectionStrategy.cs +++ b/src/Files.App/UserControls/Selection/InvertPreviousItemSelectionStrategy.cs @@ -6,7 +6,7 @@ namespace Files.App.UserControls.Selection { - internal class InvertPreviousItemSelectionStrategy : ItemSelectionStrategy + internal sealed class InvertPreviousItemSelectionStrategy : ItemSelectionStrategy { private readonly List prevSelectedItems; diff --git a/src/Files.App/UserControls/Selection/RectangleSelection_ListViewBase.cs b/src/Files.App/UserControls/Selection/RectangleSelection_ListViewBase.cs index 71984364732c..2bf7076a8685 100644 --- a/src/Files.App/UserControls/Selection/RectangleSelection_ListViewBase.cs +++ b/src/Files.App/UserControls/Selection/RectangleSelection_ListViewBase.cs @@ -16,7 +16,7 @@ namespace Files.App.UserControls.Selection { - public class RectangleSelection_ListViewBase : RectangleSelection + public sealed class RectangleSelection_ListViewBase : RectangleSelection { private ListViewBase uiElement; private ScrollViewer scrollViewer; diff --git a/src/Files.App/UserControls/SideBar/SidebarItemAutomationPeer.cs b/src/Files.App/UserControls/SideBar/SidebarItemAutomationPeer.cs index f68a4239e2bf..3f6466805b01 100644 --- a/src/Files.App/UserControls/SideBar/SidebarItemAutomationPeer.cs +++ b/src/Files.App/UserControls/SideBar/SidebarItemAutomationPeer.cs @@ -9,7 +9,7 @@ namespace Files.App.UserControls.Sidebar { - public class SidebarItemAutomationPeer : FrameworkElementAutomationPeer, IInvokeProvider, IExpandCollapseProvider, ISelectionItemProvider + public sealed class SidebarItemAutomationPeer : FrameworkElementAutomationPeer, IInvokeProvider, IExpandCollapseProvider, ISelectionItemProvider { public ExpandCollapseState ExpandCollapseState { diff --git a/src/Files.App/UserControls/Widgets/DrivesWidget.xaml.cs b/src/Files.App/UserControls/Widgets/DrivesWidget.xaml.cs index b6d3d2945f20..cbca27b57411 100644 --- a/src/Files.App/UserControls/Widgets/DrivesWidget.xaml.cs +++ b/src/Files.App/UserControls/Widgets/DrivesWidget.xaml.cs @@ -288,7 +288,7 @@ private async void Button_PointerPressed(object sender, PointerRoutedEventArgs e await NavigationHelpers.OpenPathInNewTab(navigationPath, false); } - public class DrivesWidgetInvokedEventArgs : EventArgs + public sealed class DrivesWidgetInvokedEventArgs : EventArgs { public string Path { get; set; } } diff --git a/src/Files.App/Utils/Archives/CompressArchiveModel.cs b/src/Files.App/Utils/Archives/CompressArchiveModel.cs index fec381c3e5a3..6f06ea08c039 100644 --- a/src/Files.App/Utils/Archives/CompressArchiveModel.cs +++ b/src/Files.App/Utils/Archives/CompressArchiveModel.cs @@ -11,7 +11,7 @@ namespace Files.App.Utils.Archives /// /// Provides an archive creation support. /// - public class CompressArchiveModel : ICompressArchiveModel + public sealed class CompressArchiveModel : ICompressArchiveModel { private StatusCenterItemProgressModel _fileSystemProgress; diff --git a/src/Files.App/Utils/Cloud/CloudDriveSyncStatusUI.cs b/src/Files.App/Utils/Cloud/CloudDriveSyncStatusUI.cs index c5630f971de4..39ed63b939c4 100644 --- a/src/Files.App/Utils/Cloud/CloudDriveSyncStatusUI.cs +++ b/src/Files.App/Utils/Cloud/CloudDriveSyncStatusUI.cs @@ -6,7 +6,7 @@ namespace Files.App.Utils.Cloud { - public class CloudDriveSyncStatusUI : ObservableObject + public sealed class CloudDriveSyncStatusUI : ObservableObject { public string Glyph { get; } diff --git a/src/Files.App/Utils/Cloud/CloudDrivesDetector.cs b/src/Files.App/Utils/Cloud/CloudDrivesDetector.cs index f58d8519f441..f2bf78ad7e34 100644 --- a/src/Files.App/Utils/Cloud/CloudDrivesDetector.cs +++ b/src/Files.App/Utils/Cloud/CloudDrivesDetector.cs @@ -8,7 +8,7 @@ namespace Files.App.Utils.Cloud { [SupportedOSPlatform("Windows10.0.10240")] - public class CloudDrivesDetector + public sealed class CloudDrivesDetector { private readonly static string programFilesFolder = Environment.GetEnvironmentVariable("ProgramFiles"); diff --git a/src/Files.App/Utils/Cloud/Detector/BoxCloudDetector.cs b/src/Files.App/Utils/Cloud/Detector/BoxCloudDetector.cs index 1fd30d5ee39b..195f12be6180 100644 --- a/src/Files.App/Utils/Cloud/Detector/BoxCloudDetector.cs +++ b/src/Files.App/Utils/Cloud/Detector/BoxCloudDetector.cs @@ -10,7 +10,7 @@ namespace Files.App.Utils.Cloud /// /// Provides an utility for Box Cloud detection. /// - public class BoxCloudDetector : AbstractCloudDetector + public sealed class BoxCloudDetector : AbstractCloudDetector { protected override async IAsyncEnumerable GetProviders() { diff --git a/src/Files.App/Utils/Cloud/Detector/CloudDetector.cs b/src/Files.App/Utils/Cloud/Detector/CloudDetector.cs index dab273678a31..e710e8b6830a 100644 --- a/src/Files.App/Utils/Cloud/Detector/CloudDetector.cs +++ b/src/Files.App/Utils/Cloud/Detector/CloudDetector.cs @@ -8,7 +8,7 @@ namespace Files.App.Utils.Cloud /// /// Provides an utility for cloud detection. /// - public class CloudDetector : ICloudDetector + public sealed class CloudDetector : ICloudDetector { public async Task> DetectCloudProvidersAsync() { diff --git a/src/Files.App/Utils/Cloud/Detector/DropBoxCloudDetector.cs b/src/Files.App/Utils/Cloud/Detector/DropBoxCloudDetector.cs index 9dd28f01f37a..92f071cef596 100644 --- a/src/Files.App/Utils/Cloud/Detector/DropBoxCloudDetector.cs +++ b/src/Files.App/Utils/Cloud/Detector/DropBoxCloudDetector.cs @@ -11,7 +11,7 @@ namespace Files.App.Utils.Cloud /// /// Provides an utility for Drop Box Cloud detection. /// - public class DropBoxCloudDetector : AbstractCloudDetector + public sealed class DropBoxCloudDetector : AbstractCloudDetector { protected override async IAsyncEnumerable GetProviders() { diff --git a/src/Files.App/Utils/Cloud/Detector/GenericCloudDetector.cs b/src/Files.App/Utils/Cloud/Detector/GenericCloudDetector.cs index 574012557f7d..ffd207db6752 100644 --- a/src/Files.App/Utils/Cloud/Detector/GenericCloudDetector.cs +++ b/src/Files.App/Utils/Cloud/Detector/GenericCloudDetector.cs @@ -8,7 +8,7 @@ namespace Files.App.Utils.Cloud /// /// Provides an utility for generic cloud detection. /// - public class GenericCloudDetector : AbstractCloudDetector + public sealed class GenericCloudDetector : AbstractCloudDetector { protected override async IAsyncEnumerable GetProviders() { diff --git a/src/Files.App/Utils/Cloud/Detector/GoogleDriveCloudDetector.cs b/src/Files.App/Utils/Cloud/Detector/GoogleDriveCloudDetector.cs index f0e8e1d96f88..31c03bacd6b8 100644 --- a/src/Files.App/Utils/Cloud/Detector/GoogleDriveCloudDetector.cs +++ b/src/Files.App/Utils/Cloud/Detector/GoogleDriveCloudDetector.cs @@ -10,7 +10,7 @@ namespace Files.App.Utils.Cloud /// /// Provides an utility for Google Drive Cloud detection. /// - public class GoogleDriveCloudDetector : AbstractCloudDetector + public sealed class GoogleDriveCloudDetector : AbstractCloudDetector { protected override async IAsyncEnumerable GetProviders() { diff --git a/src/Files.App/Utils/Cloud/Detector/SynologyDriveCloudDetector.cs b/src/Files.App/Utils/Cloud/Detector/SynologyDriveCloudDetector.cs index 53a466411b8e..422de0664ba4 100644 --- a/src/Files.App/Utils/Cloud/Detector/SynologyDriveCloudDetector.cs +++ b/src/Files.App/Utils/Cloud/Detector/SynologyDriveCloudDetector.cs @@ -11,7 +11,7 @@ namespace Files.App.Utils.Cloud /// /// Provides an utility for Synology Drive Cloud detection. /// - public class SynologyDriveCloudDetector : AbstractCloudDetector + public sealed class SynologyDriveCloudDetector : AbstractCloudDetector { protected override async IAsyncEnumerable GetProviders() { diff --git a/src/Files.App/Utils/FileTags/FileTagsManager.cs b/src/Files.App/Utils/FileTags/FileTagsManager.cs index 8544cfd21fbb..1c2051b37715 100644 --- a/src/Files.App/Utils/FileTags/FileTagsManager.cs +++ b/src/Files.App/Utils/FileTags/FileTagsManager.cs @@ -6,7 +6,7 @@ namespace Files.App.Utils.FileTags { - public class FileTagsManager + public sealed class FileTagsManager { private readonly ILogger logger = Ioc.Default.GetRequiredService>(); private readonly IFileTagsSettingsService fileTagsSettingsService = Ioc.Default.GetService(); diff --git a/src/Files.App/Utils/Global/NetworkDrivesAPI.cs b/src/Files.App/Utils/Global/NetworkDrivesAPI.cs index 8f359b7c779f..d391e30a33b0 100644 --- a/src/Files.App/Utils/Global/NetworkDrivesAPI.cs +++ b/src/Files.App/Utils/Global/NetworkDrivesAPI.cs @@ -18,12 +18,12 @@ namespace Files.App.Utils { - public class NetworkDrivesAPI + public sealed class NetworkDrivesAPI { /// /// A dialog box that allows the user to browse and connect to network resources. /// - public class NetworkConnectionDialog : CommonDialog + public sealed class NetworkConnectionDialog : CommonDialog { private readonly NETRESOURCE nres = new NETRESOURCE(); private CONNECTDLGSTRUCT opts; diff --git a/src/Files.App/Utils/Global/WindowsStorageDeviceWatcher.cs b/src/Files.App/Utils/Global/WindowsStorageDeviceWatcher.cs index 4da0c55f6fd1..754f6bcfc0c8 100644 --- a/src/Files.App/Utils/Global/WindowsStorageDeviceWatcher.cs +++ b/src/Files.App/Utils/Global/WindowsStorageDeviceWatcher.cs @@ -13,7 +13,7 @@ namespace Files.App.Utils { - public class WindowsStorageDeviceWatcher : IStorageDeviceWatcher + public sealed class WindowsStorageDeviceWatcher : IStorageDeviceWatcher { public event EventHandler DeviceAdded; public event EventHandler DeviceRemoved; diff --git a/src/Files.App/Utils/Library/LibraryManager.cs b/src/Files.App/Utils/Library/LibraryManager.cs index 129299ad0c9b..0c2be4f539c0 100644 --- a/src/Files.App/Utils/Library/LibraryManager.cs +++ b/src/Files.App/Utils/Library/LibraryManager.cs @@ -14,7 +14,7 @@ namespace Files.App.Utils.Library { - public class LibraryManager : IDisposable + public sealed class LibraryManager : IDisposable { public EventHandler? DataChanged; diff --git a/src/Files.App/Utils/RecentItem/RecentItem.cs b/src/Files.App/Utils/RecentItem/RecentItem.cs index 7f2b395ff2b2..85201d4a55f1 100644 --- a/src/Files.App/Utils/RecentItem/RecentItem.cs +++ b/src/Files.App/Utils/RecentItem/RecentItem.cs @@ -7,7 +7,7 @@ namespace Files.App.Utils.RecentItem { - public class RecentItem : WidgetCardItem, IEquatable + public sealed class RecentItem : WidgetCardItem, IEquatable { private BitmapImage _fileImg; public BitmapImage FileImg diff --git a/src/Files.App/Utils/RecentItem/RecentItems.cs b/src/Files.App/Utils/RecentItem/RecentItems.cs index 72e98661cf87..87e2c381cb0d 100644 --- a/src/Files.App/Utils/RecentItem/RecentItems.cs +++ b/src/Files.App/Utils/RecentItem/RecentItems.cs @@ -10,7 +10,7 @@ namespace Files.App.Utils.RecentItem { - public class RecentItems : IDisposable + public sealed class RecentItems : IDisposable { private const string QuickAccessGuid = "::{679f85cb-0220-4080-b29b-5540cc05aab6}"; diff --git a/src/Files.App/Utils/Shell/ShellFileOperations2.cs b/src/Files.App/Utils/Shell/ShellFileOperations2.cs index c203ab23086e..47c1bcf65f20 100644 --- a/src/Files.App/Utils/Shell/ShellFileOperations2.cs +++ b/src/Files.App/Utils/Shell/ShellFileOperations2.cs @@ -588,7 +588,7 @@ protected virtual void Dispose(bool disposing) private ShellItemArray GetSHArray(IEnumerable items) => items is ShellItemArray a ? a : new ShellItemArray(items); - private class OpSink : IFileOperationProgressSink + private sealed class OpSink : IFileOperationProgressSink { private readonly ShellFileOperations2 parent; @@ -650,7 +650,7 @@ private HRESULT CallChkErr(Action action) /// Arguments supplied to the event. /// - public class ShellFileNewOpEventArgs : ShellFileOpEventArgs + public sealed class ShellFileNewOpEventArgs : ShellFileOpEventArgs { internal ShellFileNewOpEventArgs(TRANSFER_SOURCE_FLAGS flags, IShellItem source, IShellItem folder, IShellItem dest, string name, HRESULT hr, string templ, uint attr) : base(flags, source, folder, dest, name, hr) @@ -716,7 +716,7 @@ internal ShellFileOpEventArgs(TRANSFER_SOURCE_FLAGS flags, IShellItem source, IS public delegate void ProgressChangedEventHandler(object? sender, ProgressChangedEventArgs e); // From System.ComponentModel.ProgressChangedEventArgs but with double percentage - public class ProgressChangedEventArgs : EventArgs + public sealed class ProgressChangedEventArgs : EventArgs { private readonly double _progressPercentage; private readonly object? _userState; diff --git a/src/Files.App/Utils/Shell/ShellLibraryEx.cs b/src/Files.App/Utils/Shell/ShellLibraryEx.cs index 6b1b98b54dd3..975dd1e6b1bc 100644 --- a/src/Files.App/Utils/Shell/ShellLibraryEx.cs +++ b/src/Files.App/Utils/Shell/ShellLibraryEx.cs @@ -11,7 +11,7 @@ namespace Files.App.Utils.Shell /// /// Represents an encapsulated item for shell library. /// - public class ShellLibraryEx : ShellFolder + public sealed class ShellLibraryEx : ShellFolder { //private const string ext = ".library-ms"; diff --git a/src/Files.App/Utils/Shell/ShellLibraryFolders.cs b/src/Files.App/Utils/Shell/ShellLibraryFolders.cs index ccd1430d7aa8..b7f49066eb1c 100644 --- a/src/Files.App/Utils/Shell/ShellLibraryFolders.cs +++ b/src/Files.App/Utils/Shell/ShellLibraryFolders.cs @@ -11,7 +11,7 @@ namespace Files.App.Utils.Shell /// /// /// - public class ShellLibraryFolders : ShellItemArray, ICollection + public sealed class ShellLibraryFolders : ShellItemArray, ICollection { private Shell32.IShellLibrary _lib; diff --git a/src/Files.App/Utils/Shell/ThreadWithMessageQueue.cs b/src/Files.App/Utils/Shell/ThreadWithMessageQueue.cs index 126159617eba..e5894fb692cd 100644 --- a/src/Files.App/Utils/Shell/ThreadWithMessageQueue.cs +++ b/src/Files.App/Utils/Shell/ThreadWithMessageQueue.cs @@ -5,7 +5,7 @@ namespace Files.App.Utils.Shell { - public class ThreadWithMessageQueue : Disposable + public sealed class ThreadWithMessageQueue : Disposable { private readonly BlockingCollection messageQueue; @@ -58,7 +58,7 @@ public ThreadWithMessageQueue() thread.Start(); } - private class Internal + private sealed class Internal { public Func payload; diff --git a/src/Files.App/Utils/StatusCenter/StatusCenterItemProgressModel.cs b/src/Files.App/Utils/StatusCenter/StatusCenterItemProgressModel.cs index 2d590da91e72..fa52196930b5 100644 --- a/src/Files.App/Utils/StatusCenter/StatusCenterItemProgressModel.cs +++ b/src/Files.App/Utils/StatusCenter/StatusCenterItemProgressModel.cs @@ -14,7 +14,7 @@ namespace Files.App.Utils.StatusCenter ///
/// Therefore, the storage operation classes can portably instance this class and update progress from everywhere with the same instance. /// - public class StatusCenterItemProgressModel : INotifyPropertyChanged + public sealed class StatusCenterItemProgressModel : INotifyPropertyChanged { private readonly IProgress? _progress; diff --git a/src/Files.App/Utils/Storage/Cache/StorageCacheController.cs b/src/Files.App/Utils/Storage/Cache/StorageCacheController.cs index 512e3cfd2f52..01451943e3e1 100644 --- a/src/Files.App/Utils/Storage/Cache/StorageCacheController.cs +++ b/src/Files.App/Utils/Storage/Cache/StorageCacheController.cs @@ -5,7 +5,7 @@ namespace Files.App.Utils.Storage { - internal class StorageCacheController : IStorageCacheController + internal sealed class StorageCacheController : IStorageCacheController { private static StorageCacheController instance; diff --git a/src/Files.App/Utils/Storage/Collection/BlockingListEnumerator.cs b/src/Files.App/Utils/Storage/Collection/BlockingListEnumerator.cs index 5a538460aa2c..ff19fc939ce2 100644 --- a/src/Files.App/Utils/Storage/Collection/BlockingListEnumerator.cs +++ b/src/Files.App/Utils/Storage/Collection/BlockingListEnumerator.cs @@ -3,7 +3,7 @@ namespace Files.App.Utils.Storage { - public class BlockingListEnumerator : IEnumerator + public sealed class BlockingListEnumerator : IEnumerator { private readonly IList m_Inner; diff --git a/src/Files.App/Utils/Storage/Collection/ConcurrentCollection.cs b/src/Files.App/Utils/Storage/Collection/ConcurrentCollection.cs index 94248cad236e..46f19af65e98 100644 --- a/src/Files.App/Utils/Storage/Collection/ConcurrentCollection.cs +++ b/src/Files.App/Utils/Storage/Collection/ConcurrentCollection.cs @@ -5,7 +5,7 @@ namespace Files.App.Helpers { [DebuggerTypeProxy(typeof(CollectionDebugView<>))] [DebuggerDisplay("Count = {Count}")] - public class ConcurrentCollection : ICollection, IList, ICollection, IList + public sealed class ConcurrentCollection : ICollection, IList, ICollection, IList { private readonly object syncRoot = new object(); diff --git a/src/Files.App/Utils/Storage/Collection/GroupedCollection.cs b/src/Files.App/Utils/Storage/Collection/GroupedCollection.cs index e10acb466172..bbe0a03d593a 100644 --- a/src/Files.App/Utils/Storage/Collection/GroupedCollection.cs +++ b/src/Files.App/Utils/Storage/Collection/GroupedCollection.cs @@ -3,7 +3,7 @@ namespace Files.App.Utils.Storage { - public class GroupedCollection : BulkConcurrentObservableCollection, IGroupedCollectionHeader + public sealed class GroupedCollection : BulkConcurrentObservableCollection, IGroupedCollectionHeader { public GroupedHeaderViewModel Model { get; set; } diff --git a/src/Files.App/Utils/Storage/Collection/GroupedHeaderViewModel.cs b/src/Files.App/Utils/Storage/Collection/GroupedHeaderViewModel.cs index 0f87b28bf09b..816cd4a8d344 100644 --- a/src/Files.App/Utils/Storage/Collection/GroupedHeaderViewModel.cs +++ b/src/Files.App/Utils/Storage/Collection/GroupedHeaderViewModel.cs @@ -6,7 +6,7 @@ namespace Files.App.Utils.Storage { - public class GroupedHeaderViewModel : ObservableObject + public sealed class GroupedHeaderViewModel : ObservableObject { public string Key { get; set; } public bool Initialized { get; set; } diff --git a/src/Files.App/Utils/Storage/Helpers/FilesystemResult.cs b/src/Files.App/Utils/Storage/Helpers/FilesystemResult.cs index 1b2699e04fee..290bbd61ab18 100644 --- a/src/Files.App/Utils/Storage/Helpers/FilesystemResult.cs +++ b/src/Files.App/Utils/Storage/Helpers/FilesystemResult.cs @@ -16,7 +16,7 @@ public class FilesystemResult public static explicit operator FilesystemResult(bool res) => new(res ? FileSystemStatusCode.Success : FileSystemStatusCode.Generic); } - public class FilesystemResult : FilesystemResult + public sealed class FilesystemResult : FilesystemResult { public T Result { get; } diff --git a/src/Files.App/Utils/Storage/Helpers/StorageFileWithPath.cs b/src/Files.App/Utils/Storage/Helpers/StorageFileWithPath.cs index dc50fb3c62cd..6a64258ce189 100644 --- a/src/Files.App/Utils/Storage/Helpers/StorageFileWithPath.cs +++ b/src/Files.App/Utils/Storage/Helpers/StorageFileWithPath.cs @@ -6,7 +6,7 @@ namespace Files.App.Utils { - public class StorageFileWithPath : IStorageItemWithPath + public sealed class StorageFileWithPath : IStorageItemWithPath { public string Path { get; } public string Name => Item?.Name ?? IO.Path.GetFileName(Path); diff --git a/src/Files.App/Utils/Storage/Helpers/StorageFolderWithPath.cs b/src/Files.App/Utils/Storage/Helpers/StorageFolderWithPath.cs index b7e83c0569ed..4cbfdcde9374 100644 --- a/src/Files.App/Utils/Storage/Helpers/StorageFolderWithPath.cs +++ b/src/Files.App/Utils/Storage/Helpers/StorageFolderWithPath.cs @@ -6,7 +6,7 @@ namespace Files.App.Utils { - public class StorageFolderWithPath : IStorageItemWithPath + public sealed class StorageFolderWithPath : IStorageItemWithPath { public string Path { get; } public string Name => Item?.Name ?? IO.Path.GetFileName(Path); diff --git a/src/Files.App/Utils/Storage/Helpers/StorageSenseHelper.cs b/src/Files.App/Utils/Storage/Helpers/StorageSenseHelper.cs index 6593a5fde125..7dec57c4be9a 100644 --- a/src/Files.App/Utils/Storage/Helpers/StorageSenseHelper.cs +++ b/src/Files.App/Utils/Storage/Helpers/StorageSenseHelper.cs @@ -6,7 +6,7 @@ namespace Files.App.Utils.Storage { - internal class StorageSenseHelper + internal sealed class StorageSenseHelper { public static async Task OpenStorageSenseAsync(string path) { diff --git a/src/Files.App/Utils/Storage/History/StorageHistory.cs b/src/Files.App/Utils/Storage/History/StorageHistory.cs index 7c60b395b3e8..2cfdd2eb09e2 100644 --- a/src/Files.App/Utils/Storage/History/StorageHistory.cs +++ b/src/Files.App/Utils/Storage/History/StorageHistory.cs @@ -3,7 +3,7 @@ namespace Files.App.Utils.Storage { - public class StorageHistory : IStorageHistory + public sealed class StorageHistory : IStorageHistory { public FileOperationType OperationType { get; private set; } diff --git a/src/Files.App/Utils/Storage/History/StorageHistoryHelpers.cs b/src/Files.App/Utils/Storage/History/StorageHistoryHelpers.cs index 4c49e0181813..d2495cbc90d2 100644 --- a/src/Files.App/Utils/Storage/History/StorageHistoryHelpers.cs +++ b/src/Files.App/Utils/Storage/History/StorageHistoryHelpers.cs @@ -3,7 +3,7 @@ namespace Files.App.Utils.Storage { - public class StorageHistoryHelpers : IDisposable + public sealed class StorageHistoryHelpers : IDisposable { private IStorageHistoryOperations operations; diff --git a/src/Files.App/Utils/Storage/History/StorageHistoryOperations.cs b/src/Files.App/Utils/Storage/History/StorageHistoryOperations.cs index 177cd6ba3952..80aa225e9dde 100644 --- a/src/Files.App/Utils/Storage/History/StorageHistoryOperations.cs +++ b/src/Files.App/Utils/Storage/History/StorageHistoryOperations.cs @@ -6,7 +6,7 @@ namespace Files.App.Utils.Storage { - public class StorageHistoryOperations : IStorageHistoryOperations + public sealed class StorageHistoryOperations : IStorageHistoryOperations { private IFilesystemHelpers helpers; private IFilesystemOperations operations; diff --git a/src/Files.App/Utils/Storage/History/StorageHistoryWrapper.cs b/src/Files.App/Utils/Storage/History/StorageHistoryWrapper.cs index f6c06929f25f..c4a2eaef3f8c 100644 --- a/src/Files.App/Utils/Storage/History/StorageHistoryWrapper.cs +++ b/src/Files.App/Utils/Storage/History/StorageHistoryWrapper.cs @@ -3,7 +3,7 @@ namespace Files.App.Utils.Storage { - public class StorageHistoryWrapper : IDisposable + public sealed class StorageHistoryWrapper : IDisposable { private int index = -1; diff --git a/src/Files.App/Utils/Storage/Operations/FileOperationsHelpers.cs b/src/Files.App/Utils/Storage/Operations/FileOperationsHelpers.cs index 9745dc04e3da..79f61cd2cad5 100644 --- a/src/Files.App/Utils/Storage/Operations/FileOperationsHelpers.cs +++ b/src/Files.App/Utils/Storage/Operations/FileOperationsHelpers.cs @@ -16,7 +16,7 @@ namespace Files.App.Utils.Storage { - public class FileOperationsHelpers + public sealed class FileOperationsHelpers { private static readonly Ole32.PROPERTYKEY PKEY_FilePlaceholderStatus = new Ole32.PROPERTYKEY(new Guid("B2F9B9D6-FEC4-4DD5-94D7-8957488C807B"), 2); private const uint PS_CLOUDFILE_PLACEHOLDER = 8; @@ -916,11 +916,11 @@ private static void UpdateFileTagsDb(ShellFileOperations2.ShellFileOpEventArgs e public static void WaitForCompletion() => progressHandler?.WaitForCompletion(); - private class ProgressHandler : Disposable + private sealed class ProgressHandler : Disposable { private readonly ManualResetEvent operationsCompletedEvent; - public class OperationWithProgress + public sealed class OperationWithProgress { public double Progress { get; set; } public bool Canceled { get; set; } diff --git a/src/Files.App/Utils/Storage/Operations/FileSizeCalculator.cs b/src/Files.App/Utils/Storage/Operations/FileSizeCalculator.cs index bf8144d2c28c..b5d6df77a544 100644 --- a/src/Files.App/Utils/Storage/Operations/FileSizeCalculator.cs +++ b/src/Files.App/Utils/Storage/Operations/FileSizeCalculator.cs @@ -5,7 +5,7 @@ namespace Files.App.Utils.Storage.Operations { - internal class FileSizeCalculator + internal sealed class FileSizeCalculator { private readonly string[] _paths; private readonly ConcurrentDictionary _computedFiles = new(); diff --git a/src/Files.App/Utils/Storage/Operations/FilesystemOperations.cs b/src/Files.App/Utils/Storage/Operations/FilesystemOperations.cs index 4425452526b9..b2ab2561f20e 100644 --- a/src/Files.App/Utils/Storage/Operations/FilesystemOperations.cs +++ b/src/Files.App/Utils/Storage/Operations/FilesystemOperations.cs @@ -13,7 +13,7 @@ namespace Files.App.Utils.Storage /// /// Provides group of file system operation for given page instance. /// - public class FilesystemOperations : IFilesystemOperations + public sealed class FilesystemOperations : IFilesystemOperations { private IShellPage _associatedInstance; diff --git a/src/Files.App/Utils/Storage/Operations/ShellFilesystemOperations.cs b/src/Files.App/Utils/Storage/Operations/ShellFilesystemOperations.cs index de5b50bd47f3..9ab7ffdd15e1 100644 --- a/src/Files.App/Utils/Storage/Operations/ShellFilesystemOperations.cs +++ b/src/Files.App/Utils/Storage/Operations/ShellFilesystemOperations.cs @@ -9,7 +9,7 @@ namespace Files.App.Utils.Storage /// /// Provides group of shell file system operation for given page instance. /// - public class ShellFilesystemOperations : IFilesystemOperations + public sealed class ShellFilesystemOperations : IFilesystemOperations { private IShellPage _associatedInstance; diff --git a/src/Files.App/Utils/Storage/Search/FolderSearch.cs b/src/Files.App/Utils/Storage/Search/FolderSearch.cs index eab5f9e34948..cc76814f217a 100644 --- a/src/Files.App/Utils/Storage/Search/FolderSearch.cs +++ b/src/Files.App/Utils/Storage/Search/FolderSearch.cs @@ -12,7 +12,7 @@ namespace Files.App.Utils.Storage { - public class FolderSearch + public sealed class FolderSearch { private IUserSettingsService UserSettingsService { get; } = Ioc.Default.GetRequiredService(); private DrivesViewModel drivesViewModel = Ioc.Default.GetRequiredService(); diff --git a/src/Files.App/Utils/Storage/Security/AccessControlEntry.cs b/src/Files.App/Utils/Storage/Security/AccessControlEntry.cs index d239bcec65c7..d88d2b775353 100644 --- a/src/Files.App/Utils/Storage/Security/AccessControlEntry.cs +++ b/src/Files.App/Utils/Storage/Security/AccessControlEntry.cs @@ -6,7 +6,7 @@ namespace Files.App.Utils.Storage /// /// Represents an access control entry (ACE). /// - public class AccessControlEntry : ObservableObject + public sealed class AccessControlEntry : ObservableObject { /// /// Whether the path indicates folder or not diff --git a/src/Files.App/Utils/Storage/Security/AccessControlList.cs b/src/Files.App/Utils/Storage/Security/AccessControlList.cs index 7e208b4daf75..03b35e14117c 100644 --- a/src/Files.App/Utils/Storage/Security/AccessControlList.cs +++ b/src/Files.App/Utils/Storage/Security/AccessControlList.cs @@ -6,7 +6,7 @@ namespace Files.App.Utils.Storage /// /// Represents an access control list (ACL). /// - public class AccessControlList : ObservableObject + public sealed class AccessControlList : ObservableObject { /// /// Object path. diff --git a/src/Files.App/Utils/Storage/Security/AccessMaskItem.cs b/src/Files.App/Utils/Storage/Security/AccessMaskItem.cs index fa81f1cfe873..6d6e9a8c7584 100644 --- a/src/Files.App/Utils/Storage/Security/AccessMaskItem.cs +++ b/src/Files.App/Utils/Storage/Security/AccessMaskItem.cs @@ -6,7 +6,7 @@ namespace Files.App.Utils.Storage /// /// Represents an access mask details, such as its name and changeability. /// - public class AccessMaskItem : ObservableObject + public sealed class AccessMaskItem : ObservableObject { public string AccessMaskName { get; set; } diff --git a/src/Files.App/Utils/Storage/Security/Principal.cs b/src/Files.App/Utils/Storage/Security/Principal.cs index d567b9bffb96..be7367a2033d 100644 --- a/src/Files.App/Utils/Storage/Security/Principal.cs +++ b/src/Files.App/Utils/Storage/Security/Principal.cs @@ -10,7 +10,7 @@ namespace Files.App.Utils.Storage /// /// Represents a principal of an ACE or an owner of an ACL. /// - public class Principal : ObservableObject + public sealed class Principal : ObservableObject { /// /// Account type. diff --git a/src/Files.App/Utils/Storage/StorageBaseItems/BaseBasicStorageItemExtraProperties.cs b/src/Files.App/Utils/Storage/StorageBaseItems/BaseBasicStorageItemExtraProperties.cs index a84a534288e2..7c09eb0d8d75 100644 --- a/src/Files.App/Utils/Storage/StorageBaseItems/BaseBasicStorageItemExtraProperties.cs +++ b/src/Files.App/Utils/Storage/StorageBaseItems/BaseBasicStorageItemExtraProperties.cs @@ -7,7 +7,7 @@ namespace Files.App.Utils.Storage { - public class BaseBasicStorageItemExtraProperties : BaseStorageItemExtraProperties + public sealed class BaseBasicStorageItemExtraProperties : BaseStorageItemExtraProperties { private readonly IStorageItem _item; diff --git a/src/Files.App/Utils/Storage/StorageBaseItems/StorageCredential.cs b/src/Files.App/Utils/Storage/StorageBaseItems/StorageCredential.cs index e9acc9df8a09..85e550b06c16 100644 --- a/src/Files.App/Utils/Storage/StorageBaseItems/StorageCredential.cs +++ b/src/Files.App/Utils/Storage/StorageBaseItems/StorageCredential.cs @@ -7,7 +7,7 @@ namespace Files.App.Utils.Storage { // Code from System.Net.NetworkCredential - public class StorageCredential + public sealed class StorageCredential { private string _userName = string.Empty; public string UserName diff --git a/src/Files.App/Utils/Storage/StorageItems/BaseQueryResults.cs b/src/Files.App/Utils/Storage/StorageItems/BaseQueryResults.cs index 28595972b353..e457930157c6 100644 --- a/src/Files.App/Utils/Storage/StorageItems/BaseQueryResults.cs +++ b/src/Files.App/Utils/Storage/StorageItems/BaseQueryResults.cs @@ -165,7 +165,7 @@ public virtual IAsyncOperation> GetFoldersAsync public virtual StorageFolderQueryResult ToStorageFolderQueryResult() => null; } - public class SystemStorageItemQueryResult : BaseStorageItemQueryResult + public sealed class SystemStorageItemQueryResult : BaseStorageItemQueryResult { private StorageItemQueryResult StorageItemQueryResult { get; } @@ -195,7 +195,7 @@ public override IAsyncOperation> GetItemsAsync() public override StorageItemQueryResult ToStorageItemQueryResult() => StorageItemQueryResult; } - public class SystemStorageFileQueryResult : BaseStorageFileQueryResult + public sealed class SystemStorageFileQueryResult : BaseStorageFileQueryResult { private StorageFileQueryResult StorageFileQueryResult { get; } @@ -225,7 +225,7 @@ public override IAsyncOperation> GetFilesAsync() public override StorageFileQueryResult ToStorageFileQueryResult() => StorageFileQueryResult; } - public class SystemStorageFolderQueryResult : BaseStorageFolderQueryResult + public sealed class SystemStorageFolderQueryResult : BaseStorageFolderQueryResult { private StorageFolderQueryResult StorageFolderQueryResult { get; } diff --git a/src/Files.App/Utils/Storage/StorageItems/FtpStorageFile.cs b/src/Files.App/Utils/Storage/StorageItems/FtpStorageFile.cs index 5de2ffe9359e..8eab122824f1 100644 --- a/src/Files.App/Utils/Storage/StorageItems/FtpStorageFile.cs +++ b/src/Files.App/Utils/Storage/StorageItems/FtpStorageFile.cs @@ -292,7 +292,7 @@ private async void FtpDataStreamingHandlerAsync(StreamedFileDataRequest request) } } - private class FtpFileBasicProperties : BaseBasicProperties + private sealed class FtpFileBasicProperties : BaseBasicProperties { public override ulong Size { get; } diff --git a/src/Files.App/Utils/Storage/StorageItems/FtpStorageFolder.cs b/src/Files.App/Utils/Storage/StorageItems/FtpStorageFolder.cs index df6984cd1dba..1e4997bf72d6 100644 --- a/src/Files.App/Utils/Storage/StorageItems/FtpStorageFolder.cs +++ b/src/Files.App/Utils/Storage/StorageItems/FtpStorageFolder.cs @@ -362,7 +362,7 @@ private AsyncFtpClient GetFtpClient() return new(host, credentials, port); } - private class FtpFolderBasicProperties : BaseBasicProperties + private sealed class FtpFolderBasicProperties : BaseBasicProperties { public override ulong Size { get; } diff --git a/src/Files.App/Utils/Storage/StorageItems/NativeStorageFile.cs b/src/Files.App/Utils/Storage/StorageItems/NativeStorageFile.cs index 6c3fca60ecc4..9e51228cd85d 100644 --- a/src/Files.App/Utils/Storage/StorageItems/NativeStorageFile.cs +++ b/src/Files.App/Utils/Storage/StorageItems/NativeStorageFile.cs @@ -17,7 +17,7 @@ namespace Files.App.Utils.Storage /// Shortcuts and alternate data stream. /// Uses *FromApp methods for file operations /// - public class NativeStorageFile : BaseStorageFile + public sealed class NativeStorageFile : BaseStorageFile { public override string Path { get; } public override string Name { get; } diff --git a/src/Files.App/Utils/Storage/StorageItems/ShellStorageFile.cs b/src/Files.App/Utils/Storage/StorageItems/ShellStorageFile.cs index 3622fc1f078a..aa75c1909940 100644 --- a/src/Files.App/Utils/Storage/StorageItems/ShellStorageFile.cs +++ b/src/Files.App/Utils/Storage/StorageItems/ShellStorageFile.cs @@ -10,7 +10,7 @@ namespace Files.App.Utils.Storage { - public class ShortcutStorageFile : ShellStorageFile, IShortcutStorageItem + public sealed class ShortcutStorageFile : ShellStorageFile, IShortcutStorageItem { public string TargetPath { get; } public string Arguments { get; } @@ -26,7 +26,7 @@ public ShortcutStorageFile(ShellLinkItem item) : base(item) } } - public class BinStorageFile : ShellStorageFile, IBinStorageItem + public sealed class BinStorageFile : ShellStorageFile, IBinStorageItem { public string OriginalPath { get; } public DateTimeOffset DateDeleted { get; } @@ -174,7 +174,7 @@ private Task GetBasicProperties() return Task.FromResult(new BaseBasicProperties()); } - private class ShellFileBasicProperties : BaseBasicProperties + private sealed class ShellFileBasicProperties : BaseBasicProperties { private readonly ShellFileItem file; diff --git a/src/Files.App/Utils/Storage/StorageItems/ShellStorageFolder.cs b/src/Files.App/Utils/Storage/StorageItems/ShellStorageFolder.cs index 957583624c8a..c461cd09efc2 100644 --- a/src/Files.App/Utils/Storage/StorageItems/ShellStorageFolder.cs +++ b/src/Files.App/Utils/Storage/StorageItems/ShellStorageFolder.cs @@ -9,7 +9,7 @@ namespace Files.App.Utils.Storage { - public class ShortcutStorageFolder : ShellStorageFolder, IShortcutStorageItem + public sealed class ShortcutStorageFolder : ShellStorageFolder, IShortcutStorageItem { public string TargetPath { get; } public string Arguments { get; } @@ -33,7 +33,7 @@ public interface IShortcutStorageItem : IStorageItem bool RunAsAdmin { get; } } - public class BinStorageFolder : ShellStorageFolder, IBinStorageItem + public sealed class BinStorageFolder : ShellStorageFolder, IBinStorageItem { public string OriginalPath { get; } public DateTimeOffset DateDeleted { get; } @@ -292,7 +292,7 @@ public override IAsyncOperation GetThumbnailAsync(Thumbnai }); } - private class ShellFolderBasicProperties : BaseBasicProperties + private sealed class ShellFolderBasicProperties : BaseBasicProperties { private readonly ShellFileItem folder; diff --git a/src/Files.App/Utils/Storage/StorageItems/StreamWithContentType.cs b/src/Files.App/Utils/Storage/StorageItems/StreamWithContentType.cs index 268f74a2d531..d1971d9fe17d 100644 --- a/src/Files.App/Utils/Storage/StorageItems/StreamWithContentType.cs +++ b/src/Files.App/Utils/Storage/StorageItems/StreamWithContentType.cs @@ -10,7 +10,7 @@ namespace Files.App.Utils.Storage { - public class InputStreamWithDisposeCallback : IInputStream + public sealed class InputStreamWithDisposeCallback : IInputStream { private Stream stream; private IInputStream iStream; @@ -35,7 +35,7 @@ public void Dispose() } } - public class NonSeekableRandomAccessStreamForWrite : IRandomAccessStream + public sealed class NonSeekableRandomAccessStreamForWrite : IRandomAccessStream { private Stream stream; private IOutputStream oStream; @@ -131,7 +131,7 @@ public void Dispose() } } - public class NonSeekableRandomAccessStreamForRead : IRandomAccessStream + public sealed class NonSeekableRandomAccessStreamForRead : IRandomAccessStream { private Stream stream; private IRandomAccessStream imrac; @@ -227,7 +227,7 @@ public void Dispose() } } - public class StreamWithContentType : IRandomAccessStreamWithContentType + public sealed class StreamWithContentType : IRandomAccessStreamWithContentType { private IRandomAccessStream baseStream; @@ -269,7 +269,7 @@ public void Dispose() public string ContentType { get; set; } = "application/octet-stream"; } - public class ComStreamWrapper : Stream + public sealed class ComStreamWrapper : Stream { private IStream iStream; private STATSTG iStreamStat; diff --git a/src/Files.App/Utils/Storage/StorageItems/SystemStorageFile.cs b/src/Files.App/Utils/Storage/StorageItems/SystemStorageFile.cs index ca6e35cf19f6..9a812aa205ab 100644 --- a/src/Files.App/Utils/Storage/StorageItems/SystemStorageFile.cs +++ b/src/Files.App/Utils/Storage/StorageItems/SystemStorageFile.cs @@ -173,7 +173,7 @@ public override IAsyncOperation GetThumbnailAsync(Thumbnai public override IAsyncOperation GetThumbnailAsync(ThumbnailMode mode, uint requestedSize, ThumbnailOptions options) => File.GetThumbnailAsync(mode, requestedSize, options); - private class SystemFileBasicProperties : BaseBasicProperties + private sealed class SystemFileBasicProperties : BaseBasicProperties { private readonly IStorageItemExtraProperties basicProps; private readonly DateTimeOffset? dateCreated; diff --git a/src/Files.App/Utils/Storage/StorageItems/SystemStorageFolder.cs b/src/Files.App/Utils/Storage/StorageItems/SystemStorageFolder.cs index 5b7991a71a23..95ffd811adad 100644 --- a/src/Files.App/Utils/Storage/StorageItems/SystemStorageFolder.cs +++ b/src/Files.App/Utils/Storage/StorageItems/SystemStorageFolder.cs @@ -151,7 +151,7 @@ public override IAsyncOperation GetThumbnailAsync(Thumbnai public override IAsyncOperation GetThumbnailAsync(ThumbnailMode mode, uint requestedSize, ThumbnailOptions options) => Folder.GetThumbnailAsync(mode, requestedSize, options); - private class SystemFolderBasicProperties : BaseBasicProperties + private sealed class SystemFolderBasicProperties : BaseBasicProperties { private readonly IStorageItemExtraProperties basicProps; private readonly DateTimeOffset? dateCreated; diff --git a/src/Files.App/Utils/Storage/StorageItems/VirtualStorageFile.cs b/src/Files.App/Utils/Storage/StorageItems/VirtualStorageFile.cs index e0e209c18acb..06f9032f3ab0 100644 --- a/src/Files.App/Utils/Storage/StorageItems/VirtualStorageFile.cs +++ b/src/Files.App/Utils/Storage/StorageItems/VirtualStorageFile.cs @@ -11,7 +11,7 @@ namespace Files.App.Utils.Storage { - public class VirtualStorageFile : BaseStorageFile + public sealed class VirtualStorageFile : BaseStorageFile { public override string Path { get; } public override string Name { get; } diff --git a/src/Files.App/Utils/Storage/StorageItems/VirtualStorageFolder.cs b/src/Files.App/Utils/Storage/StorageItems/VirtualStorageFolder.cs index 6e0a39e14827..7ce69520e063 100644 --- a/src/Files.App/Utils/Storage/StorageItems/VirtualStorageFolder.cs +++ b/src/Files.App/Utils/Storage/StorageItems/VirtualStorageFolder.cs @@ -9,7 +9,7 @@ namespace Files.App.Utils.Storage { - public class VirtualStorageFolder : BaseStorageFolder + public sealed class VirtualStorageFolder : BaseStorageFolder { public override string Path { get; } public override string Name { get; } diff --git a/src/Files.App/Utils/Storage/StorageItems/VirtualStorageItem.cs b/src/Files.App/Utils/Storage/StorageItems/VirtualStorageItem.cs index fcbc0babc789..f72c891f7125 100644 --- a/src/Files.App/Utils/Storage/StorageItems/VirtualStorageItem.cs +++ b/src/Files.App/Utils/Storage/StorageItems/VirtualStorageItem.cs @@ -15,7 +15,7 @@ namespace Files.App.Utils.Storage /// representing a standard filesystem item. As such, VirtualStorageItem does not support hidden, /// shortcut, or link items. /// - public class VirtualStorageItem : IStorageItem + public sealed class VirtualStorageItem : IStorageItem { private static BasicProperties props; diff --git a/src/Files.App/Utils/Storage/StorageItems/ZipStorageFile.cs b/src/Files.App/Utils/Storage/StorageItems/ZipStorageFile.cs index c15d6df9bc31..a5eafabb7e95 100644 --- a/src/Files.App/Utils/Storage/StorageItems/ZipStorageFile.cs +++ b/src/Files.App/Utils/Storage/StorageItems/ZipStorageFile.cs @@ -518,7 +518,7 @@ private StreamedFileDataRequestedHandler ZipDataStreamingHandler(string name) }; } - private class ZipFileBasicProperties : BaseBasicProperties + private sealed class ZipFileBasicProperties : BaseBasicProperties { private ArchiveFileInfo entry; diff --git a/src/Files.App/Utils/Storage/StorageItems/ZipStorageFolder.cs b/src/Files.App/Utils/Storage/StorageItems/ZipStorageFolder.cs index 40977ad73dc1..f68080e65be0 100644 --- a/src/Files.App/Utils/Storage/StorageItems/ZipStorageFolder.cs +++ b/src/Files.App/Utils/Storage/StorageItems/ZipStorageFolder.cs @@ -645,7 +645,7 @@ public IAsyncOperation CreateFileAsync(Stream contents, string }, ((IPasswordProtectedItem)this).RetryWithCredentialsAsync)); } - private class ZipFolderBasicProperties : BaseBasicProperties + private sealed class ZipFolderBasicProperties : BaseBasicProperties { private ArchiveFileInfo entry; diff --git a/src/Files.App/Utils/Taskbar/SystemTrayIcon.cs b/src/Files.App/Utils/Taskbar/SystemTrayIcon.cs index 30234cdeb1bf..313ecf4a48f3 100644 --- a/src/Files.App/Utils/Taskbar/SystemTrayIcon.cs +++ b/src/Files.App/Utils/Taskbar/SystemTrayIcon.cs @@ -16,7 +16,7 @@ namespace Files.App.Utils.Taskbar /// /// Represents a tray icon of Notification Area so-called System Tray. /// - public class SystemTrayIcon : IDisposable + public sealed class SystemTrayIcon : IDisposable { // Constants diff --git a/src/Files.App/Utils/Taskbar/SystemTrayIconWindow.cs b/src/Files.App/Utils/Taskbar/SystemTrayIconWindow.cs index d7007c20a289..3faa283152e2 100644 --- a/src/Files.App/Utils/Taskbar/SystemTrayIconWindow.cs +++ b/src/Files.App/Utils/Taskbar/SystemTrayIconWindow.cs @@ -13,7 +13,7 @@ namespace Files.App.Utils.Taskbar ///
/// This is provided to handle context menu and retrieve mouse events, not a regular window class. ///
- public class SystemTrayIconWindow : IDisposable + public sealed class SystemTrayIconWindow : IDisposable { private SystemTrayIcon _trayIcon; diff --git a/src/Files.App/ViewModels/Dialogs/AddBranchDialogViewModel.cs b/src/Files.App/ViewModels/Dialogs/AddBranchDialogViewModel.cs index a8f00a08935f..1a958ffad57e 100644 --- a/src/Files.App/ViewModels/Dialogs/AddBranchDialogViewModel.cs +++ b/src/Files.App/ViewModels/Dialogs/AddBranchDialogViewModel.cs @@ -1,6 +1,6 @@ namespace Files.App.ViewModels.Dialogs { - public class AddBranchDialogViewModel : ObservableObject + public sealed class AddBranchDialogViewModel : ObservableObject { private readonly string _repositoryPath; diff --git a/src/Files.App/ViewModels/Dialogs/CreateShortcutDialogViewModel.cs b/src/Files.App/ViewModels/Dialogs/CreateShortcutDialogViewModel.cs index 958200e24356..7d522f05813f 100644 --- a/src/Files.App/ViewModels/Dialogs/CreateShortcutDialogViewModel.cs +++ b/src/Files.App/ViewModels/Dialogs/CreateShortcutDialogViewModel.cs @@ -9,7 +9,7 @@ namespace Files.App.ViewModels.Dialogs { - public class CreateShortcutDialogViewModel : ObservableObject + public sealed class CreateShortcutDialogViewModel : ObservableObject { // User's working directory public readonly string WorkingDirectory; diff --git a/src/Files.App/ViewModels/Dialogs/DecompressArchiveDialogViewModel.cs b/src/Files.App/ViewModels/Dialogs/DecompressArchiveDialogViewModel.cs index bf090c285bac..64d410ef3840 100644 --- a/src/Files.App/ViewModels/Dialogs/DecompressArchiveDialogViewModel.cs +++ b/src/Files.App/ViewModels/Dialogs/DecompressArchiveDialogViewModel.cs @@ -8,7 +8,7 @@ namespace Files.App.ViewModels.Dialogs { - public class DecompressArchiveDialogViewModel : ObservableObject + public sealed class DecompressArchiveDialogViewModel : ObservableObject { private readonly IStorageFile archive; diff --git a/src/Files.App/ViewModels/Dialogs/DynamicDialogViewModel.cs b/src/Files.App/ViewModels/Dialogs/DynamicDialogViewModel.cs index dd9653a20117..ec3c7cf49af7 100644 --- a/src/Files.App/ViewModels/Dialogs/DynamicDialogViewModel.cs +++ b/src/Files.App/ViewModels/Dialogs/DynamicDialogViewModel.cs @@ -9,7 +9,7 @@ namespace Files.App.ViewModels.Dialogs { - public class DynamicDialogViewModel : ObservableObject, IDisposable + public sealed class DynamicDialogViewModel : ObservableObject, IDisposable { #region Public Properties diff --git a/src/Files.App/ViewModels/Dialogs/ReorderSidebarItemsDialogViewModel.cs b/src/Files.App/ViewModels/Dialogs/ReorderSidebarItemsDialogViewModel.cs index 3e2f4275ce6e..d8df0b682af3 100644 --- a/src/Files.App/ViewModels/Dialogs/ReorderSidebarItemsDialogViewModel.cs +++ b/src/Files.App/ViewModels/Dialogs/ReorderSidebarItemsDialogViewModel.cs @@ -5,7 +5,7 @@ namespace Files.App.ViewModels.Dialogs { - public class ReorderSidebarItemsDialogViewModel : ObservableObject + public sealed class ReorderSidebarItemsDialogViewModel : ObservableObject { private readonly IQuickAccessService quickAccessService = Ioc.Default.GetRequiredService(); diff --git a/src/Files.App/ViewModels/HomeViewModel.cs b/src/Files.App/ViewModels/HomeViewModel.cs index 78f626bd0c2c..ba0ce88d7f1d 100644 --- a/src/Files.App/ViewModels/HomeViewModel.cs +++ b/src/Files.App/ViewModels/HomeViewModel.cs @@ -6,7 +6,7 @@ namespace Files.App.ViewModels { - public class HomeViewModel : ObservableObject, IDisposable + public sealed class HomeViewModel : ObservableObject, IDisposable { public ObservableCollection WidgetItems { get; } = new(); diff --git a/src/Files.App/ViewModels/Layouts/BaseLayoutViewModel.cs b/src/Files.App/ViewModels/Layouts/BaseLayoutViewModel.cs index ae0e4030d8ed..9a6a9995b932 100644 --- a/src/Files.App/ViewModels/Layouts/BaseLayoutViewModel.cs +++ b/src/Files.App/ViewModels/Layouts/BaseLayoutViewModel.cs @@ -15,7 +15,7 @@ namespace Files.App.ViewModels.Layouts /// /// Represents ViewModel for . /// - public class BaseLayoutViewModel : IDisposable + public sealed class BaseLayoutViewModel : IDisposable { protected ICommandManager Commands { get; } = Ioc.Default.GetRequiredService(); diff --git a/src/Files.App/ViewModels/MainPageViewModel.cs b/src/Files.App/ViewModels/MainPageViewModel.cs index 8e4586f1d0ac..781bb2c178fc 100644 --- a/src/Files.App/ViewModels/MainPageViewModel.cs +++ b/src/Files.App/ViewModels/MainPageViewModel.cs @@ -11,7 +11,7 @@ namespace Files.App.ViewModels /// /// Represents ViewModel of . /// - public class MainPageViewModel : ObservableObject + public sealed class MainPageViewModel : ObservableObject { // Dependency injections diff --git a/src/Files.App/ViewModels/Properties/CompatibilityViewModel.cs b/src/Files.App/ViewModels/Properties/CompatibilityViewModel.cs index fa744a107a4f..e0ce1db58bbf 100644 --- a/src/Files.App/ViewModels/Properties/CompatibilityViewModel.cs +++ b/src/Files.App/ViewModels/Properties/CompatibilityViewModel.cs @@ -8,7 +8,7 @@ namespace Files.App.ViewModels.Properties /// /// Represents view model of . /// - public class CompatibilityViewModel : ObservableObject + public sealed class CompatibilityViewModel : ObservableObject { // Dependency injections diff --git a/src/Files.App/ViewModels/Properties/CustomizationViewModel.cs b/src/Files.App/ViewModels/Properties/CustomizationViewModel.cs index 87a12c11f291..3ae35fe0e6a4 100644 --- a/src/Files.App/ViewModels/Properties/CustomizationViewModel.cs +++ b/src/Files.App/ViewModels/Properties/CustomizationViewModel.cs @@ -6,7 +6,7 @@ namespace Files.App.ViewModels.Properties { - public class CustomizationViewModel : ObservableObject + public sealed class CustomizationViewModel : ObservableObject { private static string DefaultIconDllFilePath => Path.Combine(Constants.UserEnvironmentPaths.SystemRootPath, "System32", "SHELL32.dll"); diff --git a/src/Files.App/ViewModels/Properties/HashesViewModel.cs b/src/Files.App/ViewModels/Properties/HashesViewModel.cs index 30bf42550237..f40ec77bc060 100644 --- a/src/Files.App/ViewModels/Properties/HashesViewModel.cs +++ b/src/Files.App/ViewModels/Properties/HashesViewModel.cs @@ -7,7 +7,7 @@ namespace Files.App.ViewModels.Properties { - public class HashesViewModel : ObservableObject, IDisposable + public sealed class HashesViewModel : ObservableObject, IDisposable { private IUserSettingsService UserSettingsService { get; } = Ioc.Default.GetService()!; diff --git a/src/Files.App/ViewModels/Properties/Items/CombinedFileProperties.cs b/src/Files.App/ViewModels/Properties/Items/CombinedFileProperties.cs index 73a79d4eed5b..9a1b83a2a6b6 100644 --- a/src/Files.App/ViewModels/Properties/Items/CombinedFileProperties.cs +++ b/src/Files.App/ViewModels/Properties/Items/CombinedFileProperties.cs @@ -5,7 +5,7 @@ namespace Files.App.ViewModels.Properties { - internal class CombinedFileProperties : CombinedProperties, IFileProperties + internal sealed class CombinedFileProperties : CombinedProperties, IFileProperties { public CombinedFileProperties( SelectedItemsPropertiesViewModel viewModel, diff --git a/src/Files.App/ViewModels/Properties/Items/CombinedProperties.cs b/src/Files.App/ViewModels/Properties/Items/CombinedProperties.cs index b2d53ef07832..a13e30134b30 100644 --- a/src/Files.App/ViewModels/Properties/Items/CombinedProperties.cs +++ b/src/Files.App/ViewModels/Properties/Items/CombinedProperties.cs @@ -33,7 +33,7 @@ internal class CombinedProperties : BaseProperties ViewModel.PropertyChanged += ViewModel_PropertyChanged; } - public override void GetBaseProperties() + public sealed override void GetBaseProperties() { if (List is not null) { diff --git a/src/Files.App/ViewModels/Properties/Items/DriveProperties.cs b/src/Files.App/ViewModels/Properties/Items/DriveProperties.cs index f1fae6a74656..b7a1a8c8172e 100644 --- a/src/Files.App/ViewModels/Properties/Items/DriveProperties.cs +++ b/src/Files.App/ViewModels/Properties/Items/DriveProperties.cs @@ -9,7 +9,7 @@ namespace Files.App.ViewModels.Properties { - internal class DriveProperties : BaseProperties + internal sealed class DriveProperties : BaseProperties { public DriveItem Drive { get; } diff --git a/src/Files.App/ViewModels/Properties/Items/FileProperties.cs b/src/Files.App/ViewModels/Properties/Items/FileProperties.cs index 2a4203a45509..d6dd2d85921a 100644 --- a/src/Files.App/ViewModels/Properties/Items/FileProperties.cs +++ b/src/Files.App/ViewModels/Properties/Items/FileProperties.cs @@ -7,7 +7,7 @@ namespace Files.App.ViewModels.Properties { - public class FileProperties : BaseProperties, IFileProperties + public sealed class FileProperties : BaseProperties, IFileProperties { public ListedItem Item { get; } diff --git a/src/Files.App/ViewModels/Properties/Items/FileProperty.cs b/src/Files.App/ViewModels/Properties/Items/FileProperty.cs index bf69b6a7a26f..bd547c6e14ae 100644 --- a/src/Files.App/ViewModels/Properties/Items/FileProperty.cs +++ b/src/Files.App/ViewModels/Properties/Items/FileProperty.cs @@ -12,7 +12,7 @@ namespace Files.App.ViewModels.Properties /// /// This class is represents a system file property from the Windows.Storage API /// - public class FileProperty : ObservableObject + public sealed class FileProperty : ObservableObject { /// /// The name to display diff --git a/src/Files.App/ViewModels/Properties/Items/FilePropertySection.cs b/src/Files.App/ViewModels/Properties/Items/FilePropertySection.cs index d43c445ea2c0..eee8bb2d1d62 100644 --- a/src/Files.App/ViewModels/Properties/Items/FilePropertySection.cs +++ b/src/Files.App/ViewModels/Properties/Items/FilePropertySection.cs @@ -7,7 +7,7 @@ namespace Files.App.ViewModels.Properties /// /// This class is used for grouping file properties into sections so that it can be used as a grouped ListView data source /// - public class FilePropertySection : List + public sealed class FilePropertySection : List { public FilePropertySection(IEnumerable items) : base(items) diff --git a/src/Files.App/ViewModels/Properties/Items/FolderProperties.cs b/src/Files.App/ViewModels/Properties/Items/FolderProperties.cs index b1791215461d..84149c699dea 100644 --- a/src/Files.App/ViewModels/Properties/Items/FolderProperties.cs +++ b/src/Files.App/ViewModels/Properties/Items/FolderProperties.cs @@ -8,7 +8,7 @@ namespace Files.App.ViewModels.Properties { - internal class FolderProperties : BaseProperties + internal sealed class FolderProperties : BaseProperties { public ListedItem Item { get; } diff --git a/src/Files.App/ViewModels/Properties/Items/LibraryProperties.cs b/src/Files.App/ViewModels/Properties/Items/LibraryProperties.cs index 04ec22eb3dcc..b89862acf7fe 100644 --- a/src/Files.App/ViewModels/Properties/Items/LibraryProperties.cs +++ b/src/Files.App/ViewModels/Properties/Items/LibraryProperties.cs @@ -6,7 +6,7 @@ namespace Files.App.ViewModels.Properties { - internal class LibraryProperties : BaseProperties + internal sealed class LibraryProperties : BaseProperties { public LibraryItem Library { get; private set; } diff --git a/src/Files.App/ViewModels/Properties/MainPropertiesViewModel.cs b/src/Files.App/ViewModels/Properties/MainPropertiesViewModel.cs index 8d60b2f2fe0d..adce93d08f15 100644 --- a/src/Files.App/ViewModels/Properties/MainPropertiesViewModel.cs +++ b/src/Files.App/ViewModels/Properties/MainPropertiesViewModel.cs @@ -9,7 +9,7 @@ namespace Files.App.ViewModels.Properties { - public class MainPropertiesViewModel : ObservableObject + public sealed class MainPropertiesViewModel : ObservableObject { public CancellationTokenSource ChangedPropertiesCancellationTokenSource { get; } diff --git a/src/Files.App/ViewModels/Properties/SecurityAdvancedViewModel.cs b/src/Files.App/ViewModels/Properties/SecurityAdvancedViewModel.cs index d8cb7507ca56..6233b591266d 100644 --- a/src/Files.App/ViewModels/Properties/SecurityAdvancedViewModel.cs +++ b/src/Files.App/ViewModels/Properties/SecurityAdvancedViewModel.cs @@ -7,7 +7,7 @@ namespace Files.App.ViewModels.Properties { - public class SecurityAdvancedViewModel : ObservableObject + public sealed class SecurityAdvancedViewModel : ObservableObject { private readonly PropertiesPageNavigationParameter _navigationParameter; diff --git a/src/Files.App/ViewModels/Properties/SecurityViewModel.cs b/src/Files.App/ViewModels/Properties/SecurityViewModel.cs index be47892e2447..4e162e96b6a7 100644 --- a/src/Files.App/ViewModels/Properties/SecurityViewModel.cs +++ b/src/Files.App/ViewModels/Properties/SecurityViewModel.cs @@ -8,7 +8,7 @@ namespace Files.App.ViewModels.Properties { - public class SecurityViewModel : ObservableObject + public sealed class SecurityViewModel : ObservableObject { private readonly PropertiesPageNavigationParameter _navigationParameter; diff --git a/src/Files.App/ViewModels/Settings/AboutViewModel.cs b/src/Files.App/ViewModels/Settings/AboutViewModel.cs index 72d3f8513e8d..33ceee30dc14 100644 --- a/src/Files.App/ViewModels/Settings/AboutViewModel.cs +++ b/src/Files.App/ViewModels/Settings/AboutViewModel.cs @@ -10,7 +10,7 @@ namespace Files.App.ViewModels.Settings { - public class AboutViewModel : ObservableObject + public sealed class AboutViewModel : ObservableObject { protected readonly IFileTagsSettingsService FileTagsSettingsService = Ioc.Default.GetRequiredService(); diff --git a/src/Files.App/ViewModels/Settings/AdvancedViewModel.cs b/src/Files.App/ViewModels/Settings/AdvancedViewModel.cs index 97086116d3ca..84cef37ff61e 100644 --- a/src/Files.App/ViewModels/Settings/AdvancedViewModel.cs +++ b/src/Files.App/ViewModels/Settings/AdvancedViewModel.cs @@ -14,7 +14,7 @@ namespace Files.App.ViewModels.Settings { - public class AdvancedViewModel : ObservableObject + public sealed class AdvancedViewModel : ObservableObject { private IUserSettingsService UserSettingsService { get; } = Ioc.Default.GetRequiredService(); diff --git a/src/Files.App/ViewModels/Settings/AppearanceViewModel.cs b/src/Files.App/ViewModels/Settings/AppearanceViewModel.cs index 683711080198..0c71d6ba95fa 100644 --- a/src/Files.App/ViewModels/Settings/AppearanceViewModel.cs +++ b/src/Files.App/ViewModels/Settings/AppearanceViewModel.cs @@ -6,7 +6,7 @@ namespace Files.App.ViewModels.Settings { - public class AppearanceViewModel : ObservableObject + public sealed class AppearanceViewModel : ObservableObject { private readonly IUserSettingsService UserSettingsService; private readonly IResourcesService ResourcesService; diff --git a/src/Files.App/ViewModels/Settings/FoldersViewModel.cs b/src/Files.App/ViewModels/Settings/FoldersViewModel.cs index e68de0d823ac..b610a287ccfe 100644 --- a/src/Files.App/ViewModels/Settings/FoldersViewModel.cs +++ b/src/Files.App/ViewModels/Settings/FoldersViewModel.cs @@ -3,7 +3,7 @@ namespace Files.App.ViewModels.Settings { - public class FoldersViewModel : ObservableObject + public sealed class FoldersViewModel : ObservableObject { private IUserSettingsService UserSettingsService { get; } = Ioc.Default.GetRequiredService(); diff --git a/src/Files.App/ViewModels/Settings/GeneralViewModel.cs b/src/Files.App/ViewModels/Settings/GeneralViewModel.cs index 114892cfeef9..40450e3bf268 100644 --- a/src/Files.App/ViewModels/Settings/GeneralViewModel.cs +++ b/src/Files.App/ViewModels/Settings/GeneralViewModel.cs @@ -12,7 +12,7 @@ namespace Files.App.ViewModels.Settings { - public class GeneralViewModel : ObservableObject, IDisposable + public sealed class GeneralViewModel : ObservableObject, IDisposable { private IUserSettingsService UserSettingsService { get; } = Ioc.Default.GetRequiredService(); @@ -512,7 +512,7 @@ public void Dispose() } } - public class PageOnStartupViewModel + public sealed class PageOnStartupViewModel { public string Text { @@ -525,7 +525,7 @@ internal PageOnStartupViewModel(string path) => Path = path; } - public class AppLanguageItem + public sealed class AppLanguageItem { public string LanguagID { get; set; } @@ -554,7 +554,7 @@ public override string ToString() } } - public class DateTimeFormatItem + public sealed class DateTimeFormatItem { public string Label { get; } diff --git a/src/Files.App/ViewModels/Settings/GitViewModel.cs b/src/Files.App/ViewModels/Settings/GitViewModel.cs index 00c7d72402f8..339215d387c7 100644 --- a/src/Files.App/ViewModels/Settings/GitViewModel.cs +++ b/src/Files.App/ViewModels/Settings/GitViewModel.cs @@ -5,7 +5,7 @@ namespace Files.App.ViewModels.Settings { - public class GitViewModel : ObservableObject + public sealed class GitViewModel : ObservableObject { protected readonly IFileTagsSettingsService FileTagsSettingsService = Ioc.Default.GetRequiredService(); diff --git a/src/Files.App/ViewModels/Settings/LayoutViewModel.cs b/src/Files.App/ViewModels/Settings/LayoutViewModel.cs index 9eb0043da881..7d33a834e958 100644 --- a/src/Files.App/ViewModels/Settings/LayoutViewModel.cs +++ b/src/Files.App/ViewModels/Settings/LayoutViewModel.cs @@ -3,7 +3,7 @@ namespace Files.App.ViewModels.Settings { - public class LayoutViewModel : ObservableObject + public sealed class LayoutViewModel : ObservableObject { private IUserSettingsService UserSettingsService { get; } = Ioc.Default.GetRequiredService(); diff --git a/src/Files.App/ViewModels/Settings/TagsViewModel.cs b/src/Files.App/ViewModels/Settings/TagsViewModel.cs index 5adf03746260..42b46c6cdcd4 100644 --- a/src/Files.App/ViewModels/Settings/TagsViewModel.cs +++ b/src/Files.App/ViewModels/Settings/TagsViewModel.cs @@ -5,7 +5,7 @@ namespace Files.App.ViewModels.Settings { - public class TagsViewModel : ObservableObject + public sealed class TagsViewModel : ObservableObject { private readonly IFileTagsSettingsService fileTagsSettingsService = Ioc.Default.GetRequiredService(); @@ -102,7 +102,7 @@ public void DeleteExistingTag(ListedTagViewModel item) } } - public class NewTagViewModel : ObservableObject + public sealed class NewTagViewModel : ObservableObject { private string name = string.Empty; public string Name diff --git a/src/Files.App/ViewModels/SettingsViewModel.cs b/src/Files.App/ViewModels/SettingsViewModel.cs index 719b430f7c66..5e1d66bac6c1 100644 --- a/src/Files.App/ViewModels/SettingsViewModel.cs +++ b/src/Files.App/ViewModels/SettingsViewModel.cs @@ -10,7 +10,7 @@ namespace Files.App.ViewModels { [Obsolete("Do not use this class as Settings store anymore, settings have been merged to IUserSettingsService.")] - public class SettingsViewModel : ObservableObject + public sealed class SettingsViewModel : ObservableObject { private readonly ApplicationDataContainer localSettings = ApplicationData.Current.LocalSettings; diff --git a/src/Files.App/ViewModels/UserControls/AddressToolbarViewModel.cs b/src/Files.App/ViewModels/UserControls/AddressToolbarViewModel.cs index 29f235f519ed..586649423739 100644 --- a/src/Files.App/ViewModels/UserControls/AddressToolbarViewModel.cs +++ b/src/Files.App/ViewModels/UserControls/AddressToolbarViewModel.cs @@ -15,7 +15,7 @@ namespace Files.App.ViewModels.UserControls { - public class AddressToolbarViewModel : ObservableObject, IAddressToolbarViewModel, IDisposable + public sealed class AddressToolbarViewModel : ObservableObject, IAddressToolbarViewModel, IDisposable { private const int MAX_SUGGESTIONS = 10; diff --git a/src/Files.App/ViewModels/UserControls/InfoPaneViewModel.cs b/src/Files.App/ViewModels/UserControls/InfoPaneViewModel.cs index 9fe48a204112..ee5385ac98a9 100644 --- a/src/Files.App/ViewModels/UserControls/InfoPaneViewModel.cs +++ b/src/Files.App/ViewModels/UserControls/InfoPaneViewModel.cs @@ -10,7 +10,7 @@ namespace Files.App.ViewModels.UserControls { - public class InfoPaneViewModel : ObservableObject, IDisposable + public sealed class InfoPaneViewModel : ObservableObject, IDisposable { private IInfoPaneSettingsService infoPaneSettingsService { get; } = Ioc.Default.GetRequiredService(); private IContentPageContext contentPageContext { get; } = Ioc.Default.GetRequiredService(); diff --git a/src/Files.App/ViewModels/UserControls/Previews/ArchivePreviewViewModel.cs b/src/Files.App/ViewModels/UserControls/Previews/ArchivePreviewViewModel.cs index 8b6431be4e82..e0e060b3bf56 100644 --- a/src/Files.App/ViewModels/UserControls/Previews/ArchivePreviewViewModel.cs +++ b/src/Files.App/ViewModels/UserControls/Previews/ArchivePreviewViewModel.cs @@ -7,7 +7,7 @@ namespace Files.App.ViewModels.Previews { - public class ArchivePreviewViewModel : BasePreviewModel + public sealed class ArchivePreviewViewModel : BasePreviewModel { public ArchivePreviewViewModel(ListedItem item) : base(item) diff --git a/src/Files.App/ViewModels/UserControls/Previews/BasePreviewModel.cs b/src/Files.App/ViewModels/UserControls/Previews/BasePreviewModel.cs index e1d797f1adb2..d5e4e0461e95 100644 --- a/src/Files.App/ViewModels/UserControls/Previews/BasePreviewModel.cs +++ b/src/Files.App/ViewModels/UserControls/Previews/BasePreviewModel.cs @@ -129,7 +129,7 @@ private async Task> GetSystemFilePropertiesAsync() return list.Where(i => i.ValueText is not null).ToList(); } - private class DetailsOnlyPreviewModel : BasePreviewModel + private sealed class DetailsOnlyPreviewModel : BasePreviewModel { public DetailsOnlyPreviewModel(ListedItem item) : base(item) { } diff --git a/src/Files.App/ViewModels/UserControls/Previews/BasicPreviewViewModel.cs b/src/Files.App/ViewModels/UserControls/Previews/BasicPreviewViewModel.cs index b8987e3ba3fa..43586005f1d3 100644 --- a/src/Files.App/ViewModels/UserControls/Previews/BasicPreviewViewModel.cs +++ b/src/Files.App/ViewModels/UserControls/Previews/BasicPreviewViewModel.cs @@ -3,7 +3,7 @@ namespace Files.App.ViewModels.Previews { - public class BasicPreviewViewModel : BasePreviewModel + public sealed class BasicPreviewViewModel : BasePreviewModel { public BasicPreviewViewModel(ListedItem item) : base(item) { } } diff --git a/src/Files.App/ViewModels/UserControls/Previews/CodePreviewViewModel.cs b/src/Files.App/ViewModels/UserControls/Previews/CodePreviewViewModel.cs index b76f22cdacb3..98f5bc947c4a 100644 --- a/src/Files.App/ViewModels/UserControls/Previews/CodePreviewViewModel.cs +++ b/src/Files.App/ViewModels/UserControls/Previews/CodePreviewViewModel.cs @@ -6,7 +6,7 @@ namespace Files.App.ViewModels.Previews { - public class CodePreviewViewModel : BasePreviewModel + public sealed class CodePreviewViewModel : BasePreviewModel { private static readonly Lazy> extensions = new(GetDictionary); diff --git a/src/Files.App/ViewModels/UserControls/Previews/FolderPreviewViewModel.cs b/src/Files.App/ViewModels/UserControls/Previews/FolderPreviewViewModel.cs index f27c6d52aa70..e0bfa3d4bc8f 100644 --- a/src/Files.App/ViewModels/UserControls/Previews/FolderPreviewViewModel.cs +++ b/src/Files.App/ViewModels/UserControls/Previews/FolderPreviewViewModel.cs @@ -8,7 +8,7 @@ namespace Files.App.ViewModels.Previews { - public class FolderPreviewViewModel + public sealed class FolderPreviewViewModel { private static readonly IDateTimeFormatter dateTimeFormatter = Ioc.Default.GetRequiredService(); diff --git a/src/Files.App/ViewModels/UserControls/Previews/HtmlPreviewViewModel.cs b/src/Files.App/ViewModels/UserControls/Previews/HtmlPreviewViewModel.cs index a1fe85695991..02622cfc5209 100644 --- a/src/Files.App/ViewModels/UserControls/Previews/HtmlPreviewViewModel.cs +++ b/src/Files.App/ViewModels/UserControls/Previews/HtmlPreviewViewModel.cs @@ -5,7 +5,7 @@ namespace Files.App.ViewModels.Previews { - public class HtmlPreviewViewModel : BasePreviewModel + public sealed class HtmlPreviewViewModel : BasePreviewModel { public HtmlPreviewViewModel(ListedItem item) : base(item) diff --git a/src/Files.App/ViewModels/UserControls/Previews/ImagePreviewViewModel.cs b/src/Files.App/ViewModels/UserControls/Previews/ImagePreviewViewModel.cs index 50851d08f3b7..6bcb91cb8fbe 100644 --- a/src/Files.App/ViewModels/UserControls/Previews/ImagePreviewViewModel.cs +++ b/src/Files.App/ViewModels/UserControls/Previews/ImagePreviewViewModel.cs @@ -10,7 +10,7 @@ namespace Files.App.ViewModels.Previews { - public class ImagePreviewViewModel : BasePreviewModel + public sealed class ImagePreviewViewModel : BasePreviewModel { private ImageSource imageSource; public ImageSource ImageSource diff --git a/src/Files.App/ViewModels/UserControls/Previews/MarkdownPreviewViewModel.cs b/src/Files.App/ViewModels/UserControls/Previews/MarkdownPreviewViewModel.cs index 74203c4fff43..f8edfa4023a6 100644 --- a/src/Files.App/ViewModels/UserControls/Previews/MarkdownPreviewViewModel.cs +++ b/src/Files.App/ViewModels/UserControls/Previews/MarkdownPreviewViewModel.cs @@ -5,7 +5,7 @@ namespace Files.App.ViewModels.Previews { - public class MarkdownPreviewViewModel : BasePreviewModel + public sealed class MarkdownPreviewViewModel : BasePreviewModel { private string textValue; public string TextValue diff --git a/src/Files.App/ViewModels/UserControls/Previews/MediaPreviewViewModel.cs b/src/Files.App/ViewModels/UserControls/Previews/MediaPreviewViewModel.cs index e71c4f51d03a..970ce5a1ff69 100644 --- a/src/Files.App/ViewModels/UserControls/Previews/MediaPreviewViewModel.cs +++ b/src/Files.App/ViewModels/UserControls/Previews/MediaPreviewViewModel.cs @@ -7,7 +7,7 @@ namespace Files.App.ViewModels.Previews { - public class MediaPreviewViewModel : BasePreviewModel + public sealed class MediaPreviewViewModel : BasePreviewModel { public event EventHandler TogglePlaybackRequested; diff --git a/src/Files.App/ViewModels/UserControls/Previews/PDFPreviewViewModel.cs b/src/Files.App/ViewModels/UserControls/Previews/PDFPreviewViewModel.cs index bae667447058..671936ab7c05 100644 --- a/src/Files.App/ViewModels/UserControls/Previews/PDFPreviewViewModel.cs +++ b/src/Files.App/ViewModels/UserControls/Previews/PDFPreviewViewModel.cs @@ -11,7 +11,7 @@ namespace Files.App.ViewModels.Previews { - public class PDFPreviewViewModel : BasePreviewModel + public sealed class PDFPreviewViewModel : BasePreviewModel { private Visibility loadingBarVisibility; public Visibility LoadingBarVisibility diff --git a/src/Files.App/ViewModels/UserControls/Previews/RichTextPreviewViewModel.cs b/src/Files.App/ViewModels/UserControls/Previews/RichTextPreviewViewModel.cs index f9fa521bd75d..5d891e6c9174 100644 --- a/src/Files.App/ViewModels/UserControls/Previews/RichTextPreviewViewModel.cs +++ b/src/Files.App/ViewModels/UserControls/Previews/RichTextPreviewViewModel.cs @@ -6,7 +6,7 @@ namespace Files.App.ViewModels.Previews { - public class RichTextPreviewViewModel : BasePreviewModel + public sealed class RichTextPreviewViewModel : BasePreviewModel { public IRandomAccessStream Stream { get; set; } diff --git a/src/Files.App/ViewModels/UserControls/Previews/ShellPreviewViewModel.cs b/src/Files.App/ViewModels/UserControls/Previews/ShellPreviewViewModel.cs index 1165661616f8..8c31365eb5fa 100644 --- a/src/Files.App/ViewModels/UserControls/Previews/ShellPreviewViewModel.cs +++ b/src/Files.App/ViewModels/UserControls/Previews/ShellPreviewViewModel.cs @@ -12,7 +12,7 @@ namespace Files.App.ViewModels.Previews { - public class ShellPreviewViewModel : BasePreviewModel + public sealed class ShellPreviewViewModel : BasePreviewModel { public ShellPreviewViewModel(ListedItem item) : base(item) diff --git a/src/Files.App/ViewModels/UserControls/Previews/ShortcutPreviewViewModel.cs b/src/Files.App/ViewModels/UserControls/Previews/ShortcutPreviewViewModel.cs index 50bfaf2a2c21..46f6f964fe9b 100644 --- a/src/Files.App/ViewModels/UserControls/Previews/ShortcutPreviewViewModel.cs +++ b/src/Files.App/ViewModels/UserControls/Previews/ShortcutPreviewViewModel.cs @@ -5,7 +5,7 @@ namespace Files.App.ViewModels.Previews { - internal class ShortcutPreviewViewModel : BasePreviewModel + internal sealed class ShortcutPreviewViewModel : BasePreviewModel { public ShortcutPreviewViewModel(ListedItem item) : base(item) { } diff --git a/src/Files.App/ViewModels/UserControls/Previews/TextPreviewViewModel.cs b/src/Files.App/ViewModels/UserControls/Previews/TextPreviewViewModel.cs index 375eb4b643c9..1081792c7d8f 100644 --- a/src/Files.App/ViewModels/UserControls/Previews/TextPreviewViewModel.cs +++ b/src/Files.App/ViewModels/UserControls/Previews/TextPreviewViewModel.cs @@ -6,7 +6,7 @@ namespace Files.App.ViewModels.Previews { - public class TextPreviewViewModel : BasePreviewModel + public sealed class TextPreviewViewModel : BasePreviewModel { private string textValue; public string TextValue diff --git a/src/Files.App/ViewModels/UserControls/SearchBoxViewModel.cs b/src/Files.App/ViewModels/UserControls/SearchBoxViewModel.cs index f094f6aa4cb9..35a1b735976d 100644 --- a/src/Files.App/ViewModels/UserControls/SearchBoxViewModel.cs +++ b/src/Files.App/ViewModels/UserControls/SearchBoxViewModel.cs @@ -9,7 +9,7 @@ namespace Files.App.ViewModels.UserControls { - public class SearchBoxViewModel : ObservableObject, ISearchBoxViewModel + public sealed class SearchBoxViewModel : ObservableObject, ISearchBoxViewModel { private string query; public string Query @@ -124,7 +124,7 @@ public void AddRecentQueries() oldQueries.ForEach(Suggestions.Add); } - private class SuggestionComparer : IEqualityComparer, IComparer + private sealed class SuggestionComparer : IEqualityComparer, IComparer { public int Compare(SuggestionModel x, SuggestionModel y) => y.ItemPath.CompareTo(x.ItemPath); diff --git a/src/Files.App/ViewModels/UserControls/SidebarViewModel.cs b/src/Files.App/ViewModels/UserControls/SidebarViewModel.cs index 3610e63ede67..806a8fe06d7c 100644 --- a/src/Files.App/ViewModels/UserControls/SidebarViewModel.cs +++ b/src/Files.App/ViewModels/UserControls/SidebarViewModel.cs @@ -22,7 +22,7 @@ namespace Files.App.ViewModels.UserControls { - public class SidebarViewModel : ObservableObject, IDisposable, ISidebarViewModel + public sealed class SidebarViewModel : ObservableObject, IDisposable, ISidebarViewModel { private IUserSettingsService UserSettingsService { get; } = Ioc.Default.GetRequiredService(); private ICommandManager Commands { get; } = Ioc.Default.GetRequiredService(); diff --git a/src/Files.App/ViewModels/UserControls/StatusCenterViewModel.cs b/src/Files.App/ViewModels/UserControls/StatusCenterViewModel.cs index 1affa0d20012..d2cff1eb1815 100644 --- a/src/Files.App/ViewModels/UserControls/StatusCenterViewModel.cs +++ b/src/Files.App/ViewModels/UserControls/StatusCenterViewModel.cs @@ -3,7 +3,7 @@ namespace Files.App.ViewModels.UserControls { - public class StatusCenterViewModel : ObservableObject + public sealed class StatusCenterViewModel : ObservableObject { public ObservableCollection StatusCenterItems { get; } = new(); diff --git a/src/Files.App/ViewModels/UserControls/Widgets/DrivesWidgetViewModel.cs b/src/Files.App/ViewModels/UserControls/Widgets/DrivesWidgetViewModel.cs index 1242885ba725..a24c04b3d7d5 100644 --- a/src/Files.App/ViewModels/UserControls/Widgets/DrivesWidgetViewModel.cs +++ b/src/Files.App/ViewModels/UserControls/Widgets/DrivesWidgetViewModel.cs @@ -6,7 +6,7 @@ namespace Files.App.ViewModels.UserControls.Widgets /// /// Represents view model of . /// - public class DrivesWidgetViewModel + public sealed class DrivesWidgetViewModel { public ObservableCollection Items { get; } = []; } diff --git a/src/Files.App/ViewModels/UserControls/Widgets/QuickAccessWidgetViewModel.cs b/src/Files.App/ViewModels/UserControls/Widgets/QuickAccessWidgetViewModel.cs index 743f15330f72..2d3c7559355d 100644 --- a/src/Files.App/ViewModels/UserControls/Widgets/QuickAccessWidgetViewModel.cs +++ b/src/Files.App/ViewModels/UserControls/Widgets/QuickAccessWidgetViewModel.cs @@ -6,7 +6,7 @@ namespace Files.App.ViewModels.UserControls.Widgets /// /// Represents view model of . /// - public class QuickAccessWidgetViewModel + public sealed class QuickAccessWidgetViewModel { public ObservableCollection Items { get; } = []; } diff --git a/src/Files.App/ViewModels/UserControls/Widgets/RecentFilesWidgetViewModel.cs b/src/Files.App/ViewModels/UserControls/Widgets/RecentFilesWidgetViewModel.cs index 88824e6ccbb4..733d80906029 100644 --- a/src/Files.App/ViewModels/UserControls/Widgets/RecentFilesWidgetViewModel.cs +++ b/src/Files.App/ViewModels/UserControls/Widgets/RecentFilesWidgetViewModel.cs @@ -6,7 +6,7 @@ namespace Files.App.ViewModels.UserControls.Widgets /// /// Represents view model of . /// - public class RecentFilesWidgetViewModel + public sealed class RecentFilesWidgetViewModel { public ObservableCollection Items { get; } = []; } diff --git a/src/Files.App/Views/Layouts/BaseLayoutPage.cs b/src/Files.App/Views/Layouts/BaseLayoutPage.cs index 7bbd63700280..d61acbe0229d 100644 --- a/src/Files.App/Views/Layouts/BaseLayoutPage.cs +++ b/src/Files.App/Views/Layouts/BaseLayoutPage.cs @@ -1432,7 +1432,7 @@ protected async Task ValidateItemNameInputTextAsync(TextBox textBox, TextBoxBefo } } - public class ContextMenuExtensions : DependencyObject + public sealed class ContextMenuExtensions : DependencyObject { public static ItemsControl GetItemsControl(DependencyObject obj) { diff --git a/src/Files.App/Views/Properties/LibraryPage.xaml.cs b/src/Files.App/Views/Properties/LibraryPage.xaml.cs index a6f44df7d116..49ff5e48bc33 100644 --- a/src/Files.App/Views/Properties/LibraryPage.xaml.cs +++ b/src/Files.App/Views/Properties/LibraryPage.xaml.cs @@ -232,7 +232,7 @@ public override void Dispose() } - public class LibraryFolder : ObservableObject + public sealed class LibraryFolder : ObservableObject { public string Path { get; set; } diff --git a/src/Files.Core.SourceGenerator/DependencyPropertyGenerator.cs b/src/Files.Core.SourceGenerator/DependencyPropertyGenerator.cs index b1277cbd2580..14e67d8ab23e 100644 --- a/src/Files.Core.SourceGenerator/DependencyPropertyGenerator.cs +++ b/src/Files.Core.SourceGenerator/DependencyPropertyGenerator.cs @@ -12,7 +12,7 @@ namespace Files.Core.SourceGenerator { [Generator] - public class DependencyPropertyGenerator : TypeWithAttributeGenerator + public sealed class DependencyPropertyGenerator : TypeWithAttributeGenerator { internal override string AttributeName => "DependencyPropertyAttribute`1"; diff --git a/src/Files.Core.SourceGenerator/Utilities/UsingCollector.cs b/src/Files.Core.SourceGenerator/Utilities/UsingCollector.cs index 4600aff63195..97d9ad55588a 100644 --- a/src/Files.Core.SourceGenerator/Utilities/UsingCollector.cs +++ b/src/Files.Core.SourceGenerator/Utilities/UsingCollector.cs @@ -7,7 +7,7 @@ namespace Files.Core.SourceGenerator.Utilities { - internal class UsingCollector : CSharpSyntaxWalker + internal sealed class UsingCollector : CSharpSyntaxWalker { private readonly HashSet _namespaces; diff --git a/src/Files.Core/Data/Items/FileTagsDb.cs b/src/Files.Core/Data/Items/FileTagsDb.cs index c4b52f48b97d..58eb6180e288 100644 --- a/src/Files.Core/Data/Items/FileTagsDb.cs +++ b/src/Files.Core/Data/Items/FileTagsDb.cs @@ -8,7 +8,7 @@ namespace Files.Core.Data.Items { - public class FileTagsDb : IDisposable + public sealed class FileTagsDb : IDisposable { private readonly LiteDatabase db; @@ -222,7 +222,7 @@ private void CheckDbVersion(string filename) IO.File.Delete(filename); // recreate DB with correct version } - public class TaggedFile + public sealed class TaggedFile { [BsonId] public int Id { get; set; } public ulong? Frn { get; set; } diff --git a/src/Files.Core/Data/Items/IconFileInfo.cs b/src/Files.Core/Data/Items/IconFileInfo.cs index 95277ad8b7df..baf95c435595 100644 --- a/src/Files.Core/Data/Items/IconFileInfo.cs +++ b/src/Files.Core/Data/Items/IconFileInfo.cs @@ -3,7 +3,7 @@ namespace Files.Core.Data.Items { - public class IconFileInfo + public sealed class IconFileInfo { public byte[] IconData { get; } diff --git a/src/Files.Core/Data/Items/ShellLibraryItem.cs b/src/Files.Core/Data/Items/ShellLibraryItem.cs index ab86ffae5d44..47a7d464f587 100644 --- a/src/Files.Core/Data/Items/ShellLibraryItem.cs +++ b/src/Files.Core/Data/Items/ShellLibraryItem.cs @@ -5,7 +5,7 @@ namespace Files.Core.Data.Items { - public class ShellLibraryItem + public sealed class ShellLibraryItem { public const string EXTENSION = ".library-ms"; diff --git a/src/Files.Core/Data/Items/ShellLinkItem.cs b/src/Files.Core/Data/Items/ShellLinkItem.cs index 3da1333f6382..af5555c143b9 100644 --- a/src/Files.Core/Data/Items/ShellLinkItem.cs +++ b/src/Files.Core/Data/Items/ShellLinkItem.cs @@ -3,7 +3,7 @@ namespace Files.Core.Data.Items { - public class ShellLinkItem : ShellFileItem + public sealed class ShellLinkItem : ShellFileItem { public string TargetPath { get; set; } diff --git a/src/Files.Core/Data/Items/ShellNewEntry.cs b/src/Files.Core/Data/Items/ShellNewEntry.cs index 1dc4c0bc9247..44aec91e410c 100644 --- a/src/Files.Core/Data/Items/ShellNewEntry.cs +++ b/src/Files.Core/Data/Items/ShellNewEntry.cs @@ -3,7 +3,7 @@ namespace Files.Core.Data.Items { - public class ShellNewEntry + public sealed class ShellNewEntry { public string Extension { get; set; } diff --git a/src/Files.Core/Data/Items/ShellOperationResult.cs b/src/Files.Core/Data/Items/ShellOperationResult.cs index be080d202a9a..2be4956ccea0 100644 --- a/src/Files.Core/Data/Items/ShellOperationResult.cs +++ b/src/Files.Core/Data/Items/ShellOperationResult.cs @@ -3,7 +3,7 @@ namespace Files.Core.Data.Items { - public class ShellOperationResult + public sealed class ShellOperationResult { public ShellOperationResult() { @@ -23,7 +23,7 @@ public ShellOperationResult() Items.GroupBy(x => x.Source).Select(x => x.Last()).ToList(); } - public class ShellOperationItemResult + public sealed class ShellOperationItemResult { public bool Succeeded { get; set; } public int HResult { get; set; } diff --git a/src/Files.Core/Data/Items/Win32Process.cs b/src/Files.Core/Data/Items/Win32Process.cs index 946a4a7c5fdc..b35efb94f033 100644 --- a/src/Files.Core/Data/Items/Win32Process.cs +++ b/src/Files.Core/Data/Items/Win32Process.cs @@ -3,7 +3,7 @@ namespace Files.Core.Data.Items { - public class Win32Process + public sealed class Win32Process { public string Name { get; set; } diff --git a/src/Files.Core/Data/Items/WindowsCompatibilityOptions.cs b/src/Files.Core/Data/Items/WindowsCompatibilityOptions.cs index 59be2abf75b4..08d667cfdd02 100644 --- a/src/Files.Core/Data/Items/WindowsCompatibilityOptions.cs +++ b/src/Files.Core/Data/Items/WindowsCompatibilityOptions.cs @@ -5,7 +5,7 @@ namespace Files.Core.Data.Items { - public class WindowsCompatibilityOptions + public sealed class WindowsCompatibilityOptions { // Constants diff --git a/src/Files.Core/Data/Models/HashInfoItem.cs b/src/Files.Core/Data/Models/HashInfoItem.cs index efb225d12620..a23e3149e5cd 100644 --- a/src/Files.Core/Data/Models/HashInfoItem.cs +++ b/src/Files.Core/Data/Models/HashInfoItem.cs @@ -3,7 +3,7 @@ namespace Files.Core.Data.Models { - public class HashInfoItem : ObservableObject + public sealed class HashInfoItem : ObservableObject { private string _Algorithm; public string Algorithm diff --git a/src/Files.Core/Helpers/NativeFindStorageItemHelper.cs b/src/Files.Core/Helpers/NativeFindStorageItemHelper.cs index 6bfeb1b8e043..d61030f42b64 100644 --- a/src/Files.Core/Helpers/NativeFindStorageItemHelper.cs +++ b/src/Files.Core/Helpers/NativeFindStorageItemHelper.cs @@ -9,7 +9,7 @@ namespace Files.Core.Helpers /// /// Provides a bunch of Win32API for native find storage items. /// - public class NativeFindStorageItemHelper + public sealed class NativeFindStorageItemHelper { [StructLayout(LayoutKind.Sequential)] public struct SYSTEMTIME diff --git a/src/Files.Core/Services/SizeProvider/CachedSizeProvider.cs b/src/Files.Core/Services/SizeProvider/CachedSizeProvider.cs index 58c76499a3b2..6fcc1ac6b503 100644 --- a/src/Files.Core/Services/SizeProvider/CachedSizeProvider.cs +++ b/src/Files.Core/Services/SizeProvider/CachedSizeProvider.cs @@ -11,7 +11,7 @@ namespace Files.Core.Services.SizeProvider { - public class CachedSizeProvider : ISizeProvider + public sealed class CachedSizeProvider : ISizeProvider { private readonly ConcurrentDictionary sizes = new(); diff --git a/src/Files.Core/Services/SizeProvider/DrivesSizeProvider.cs b/src/Files.Core/Services/SizeProvider/DrivesSizeProvider.cs index 40391138c004..d10c54515127 100644 --- a/src/Files.Core/Services/SizeProvider/DrivesSizeProvider.cs +++ b/src/Files.Core/Services/SizeProvider/DrivesSizeProvider.cs @@ -10,7 +10,7 @@ namespace Files.Core.Services.SizeProvider { - public class DrivesSizeProvider : ISizeProvider + public sealed class DrivesSizeProvider : ISizeProvider { private readonly ConcurrentDictionary providers = new(); diff --git a/src/Files.Core/Services/SizeProvider/NoSizeProvider.cs b/src/Files.Core/Services/SizeProvider/NoSizeProvider.cs index 2f4e7aac3449..faa14a4a606f 100644 --- a/src/Files.Core/Services/SizeProvider/NoSizeProvider.cs +++ b/src/Files.Core/Services/SizeProvider/NoSizeProvider.cs @@ -7,7 +7,7 @@ namespace Files.Core.Services.SizeProvider { - public class NoSizeProvider : ISizeProvider + public sealed class NoSizeProvider : ISizeProvider { public event EventHandler? SizeChanged; diff --git a/src/Files.Core/Services/SizeProvider/SizeChangedEventArgs.cs b/src/Files.Core/Services/SizeProvider/SizeChangedEventArgs.cs index c0debd78899d..668e97531856 100644 --- a/src/Files.Core/Services/SizeProvider/SizeChangedEventArgs.cs +++ b/src/Files.Core/Services/SizeProvider/SizeChangedEventArgs.cs @@ -5,7 +5,7 @@ namespace Files.Core.Services.SizeProvider { - public class SizeChangedEventArgs : EventArgs + public sealed class SizeChangedEventArgs : EventArgs { public string Path { get; } public ulong NewSize { get; } diff --git a/src/Files.Core/Utils/Cloud/CloudProvider.cs b/src/Files.Core/Utils/Cloud/CloudProvider.cs index 537d759e3f32..775bd9f29f7f 100644 --- a/src/Files.Core/Utils/Cloud/CloudProvider.cs +++ b/src/Files.Core/Utils/Cloud/CloudProvider.cs @@ -3,7 +3,7 @@ namespace Files.Core.Utils.Cloud { - public class CloudProvider : ICloudProvider + public sealed class CloudProvider : ICloudProvider { public CloudProviders ID { get; } diff --git a/src/Files.Core/Utils/CommandLine/CommandLineParser.cs b/src/Files.Core/Utils/CommandLine/CommandLineParser.cs index b0ae89f64829..d531a4ddb671 100644 --- a/src/Files.Core/Utils/CommandLine/CommandLineParser.cs +++ b/src/Files.Core/Utils/CommandLine/CommandLineParser.cs @@ -8,7 +8,7 @@ namespace Files.Core.Utils.CommandLine /// /// Provides static helper for parsing of command line arguments on Windows. /// - public class CommandLineParser + public sealed class CommandLineParser { /// /// Parses raw command line string. diff --git a/src/Files.Core/Utils/CommandLine/ParsedCommand.cs b/src/Files.Core/Utils/CommandLine/ParsedCommand.cs index 8ca41591cd16..a90b97a56014 100644 --- a/src/Files.Core/Utils/CommandLine/ParsedCommand.cs +++ b/src/Files.Core/Utils/CommandLine/ParsedCommand.cs @@ -6,7 +6,7 @@ namespace Files.Core.Utils.CommandLine /// /// Represents a parsed command node on Windows. /// - public class ParsedCommand + public sealed class ParsedCommand { /// /// Gets or sets parsed command type. diff --git a/src/Files.Core/Utils/CommandLine/ParsedCommands.cs b/src/Files.Core/Utils/CommandLine/ParsedCommands.cs index 8e5ab2fe04e9..e4436f6e3f58 100644 --- a/src/Files.Core/Utils/CommandLine/ParsedCommands.cs +++ b/src/Files.Core/Utils/CommandLine/ParsedCommands.cs @@ -6,7 +6,7 @@ namespace Files.Core.Utils.CommandLine /// /// Represents a collection of parsed command. /// - public class ParsedCommands : List + public sealed class ParsedCommands : List { } } diff --git a/src/Files.Core/ViewModels/FileTags/ListedTagViewModel.cs b/src/Files.Core/ViewModels/FileTags/ListedTagViewModel.cs index c1f5f82c9dcb..46357edee972 100644 --- a/src/Files.Core/ViewModels/FileTags/ListedTagViewModel.cs +++ b/src/Files.Core/ViewModels/FileTags/ListedTagViewModel.cs @@ -3,7 +3,7 @@ namespace Files.Core.ViewModels.FileTags { - public class ListedTagViewModel : ObservableObject + public sealed class ListedTagViewModel : ObservableObject { private TagViewModel _Tag; public TagViewModel Tag diff --git a/src/Files.Shared/Helpers/AsyncManualResetEvent.cs b/src/Files.Shared/Helpers/AsyncManualResetEvent.cs index c85814077fb7..a1361a253c00 100644 --- a/src/Files.Shared/Helpers/AsyncManualResetEvent.cs +++ b/src/Files.Shared/Helpers/AsyncManualResetEvent.cs @@ -6,7 +6,7 @@ namespace Files.Shared.Helpers; -public class AsyncManualResetEvent +public sealed class AsyncManualResetEvent { private volatile TaskCompletionSource m_tcs = new TaskCompletionSource(); diff --git a/src/Files.Shared/Utils/Logger/FileLogger.cs b/src/Files.Shared/Utils/Logger/FileLogger.cs index 1e026f558d25..5e4a5d52ca95 100644 --- a/src/Files.Shared/Utils/Logger/FileLogger.cs +++ b/src/Files.Shared/Utils/Logger/FileLogger.cs @@ -10,7 +10,7 @@ namespace Files.Shared { - public class FileLogger : ILogger + public sealed class FileLogger : ILogger { private readonly SemaphoreSlim semaphoreSlim = new(1); private readonly string filePath; diff --git a/src/Files.Shared/Utils/Logger/FileLoggerProvider.cs b/src/Files.Shared/Utils/Logger/FileLoggerProvider.cs index 2f45e9384438..0b826b2aeb87 100644 --- a/src/Files.Shared/Utils/Logger/FileLoggerProvider.cs +++ b/src/Files.Shared/Utils/Logger/FileLoggerProvider.cs @@ -6,7 +6,7 @@ namespace Files.Shared { - public class FileLoggerProvider : ILoggerProvider + public sealed class FileLoggerProvider : ILoggerProvider { private readonly string path; diff --git a/tests/Files.InteractionTests/Helper/AxeHelper.cs b/tests/Files.InteractionTests/Helper/AxeHelper.cs index 668dd894dfc9..b56a0b41f025 100644 --- a/tests/Files.InteractionTests/Helper/AxeHelper.cs +++ b/tests/Files.InteractionTests/Helper/AxeHelper.cs @@ -8,7 +8,7 @@ namespace Files.InteractionTests.Helper { - public class AxeHelper + public sealed class AxeHelper { public static IScanner AccessibilityScanner; diff --git a/tests/Files.InteractionTests/SessionManager.cs b/tests/Files.InteractionTests/SessionManager.cs index c494d0609310..788b6b12a6c1 100644 --- a/tests/Files.InteractionTests/SessionManager.cs +++ b/tests/Files.InteractionTests/SessionManager.cs @@ -11,7 +11,7 @@ namespace Files.InteractionTests { [TestClass] - public class SessionManager + public sealed class SessionManager { private const string WindowsApplicationDriverUrl = "http://127.0.0.1:4723"; private static string[] FilesAppIDs = new string[]{ diff --git a/tests/Files.InteractionTests/Tests/FolderTests.cs b/tests/Files.InteractionTests/Tests/FolderTests.cs index 33ffa80c25fa..7bcf37afdaca 100644 --- a/tests/Files.InteractionTests/Tests/FolderTests.cs +++ b/tests/Files.InteractionTests/Tests/FolderTests.cs @@ -8,7 +8,7 @@ namespace Files.InteractionTests.Tests { [TestClass] - public class FolderTests + public sealed class FolderTests { [TestCleanup] diff --git a/tests/Files.InteractionTests/Tests/GeneralAppTests.cs b/tests/Files.InteractionTests/Tests/GeneralAppTests.cs index 3b93ccc68146..4f1f18c980e7 100644 --- a/tests/Files.InteractionTests/Tests/GeneralAppTests.cs +++ b/tests/Files.InteractionTests/Tests/GeneralAppTests.cs @@ -4,7 +4,7 @@ namespace Files.InteractionTests.Tests { [TestClass] - public class GeneralAppTests + public sealed class GeneralAppTests { [TestMethod] public void SessionGetsInitialized() diff --git a/tests/Files.InteractionTests/Tests/SettingsTests.cs b/tests/Files.InteractionTests/Tests/SettingsTests.cs index 72f975c84a50..b1dca87c8f1b 100644 --- a/tests/Files.InteractionTests/Tests/SettingsTests.cs +++ b/tests/Files.InteractionTests/Tests/SettingsTests.cs @@ -8,7 +8,7 @@ namespace Files.InteractionTests.Tests { [TestClass] - public class SettingsTests + public sealed class SettingsTests { [TestCleanup] From 846bde1721d3e77530e065e5ae8f678e8f18b1fd Mon Sep 17 00:00:00 2001 From: gumbarros Date: Tue, 19 Mar 2024 17:09:52 -0300 Subject: [PATCH 2/2] Fix comment at ManagementEventWatcher.cs --- src/Files.App/Helpers/WMI/ManagementEventWatcher.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Files.App/Helpers/WMI/ManagementEventWatcher.cs b/src/Files.App/Helpers/WMI/ManagementEventWatcher.cs index 9cf0a16af65d..94903eaf8240 100644 --- a/src/Files.App/Helpers/WMI/ManagementEventWatcher.cs +++ b/src/Files.App/Helpers/WMI/ManagementEventWatcher.cs @@ -11,7 +11,7 @@ namespace Files.App.Helpers public delegate void EventArrivedEventHandler(object sender, EventArrivedEventArgs e); /// - /// A public sealed class used to start/stop the subscription to specific indication source, + /// A public class used to start/stop the subscription to specific indication source, /// and listen to the incoming indications, event /// will be raised for each cimindication. /// Original Sourced from: https://codereview.stackexchange.com/questions/255055/trying-to-replace-managementeventwatcher-class-in-system-management-to-switch-to