diff --git a/src/Files.App.Storage/Storables/FtpStorage/FtpHelpers.cs b/src/Files.App.Storage/Ftp/FtpHelpers.cs similarity index 98% rename from src/Files.App.Storage/Storables/FtpStorage/FtpHelpers.cs rename to src/Files.App.Storage/Ftp/FtpHelpers.cs index 15d0d920c773..6c2cec698daf 100644 --- a/src/Files.App.Storage/Storables/FtpStorage/FtpHelpers.cs +++ b/src/Files.App.Storage/Ftp/FtpHelpers.cs @@ -4,7 +4,7 @@ using Files.Shared.Extensions; using FluentFTP; -namespace Files.App.Storage.Storables +namespace Files.App.Storage { internal static class FtpHelpers { diff --git a/src/Files.App.Storage/Storables/FtpStorage/FtpManager.cs b/src/Files.App.Storage/Ftp/FtpManager.cs similarity index 88% rename from src/Files.App.Storage/Storables/FtpStorage/FtpManager.cs rename to src/Files.App.Storage/Ftp/FtpManager.cs index 5a9efb6fc595..db737c199771 100644 --- a/src/Files.App.Storage/Storables/FtpStorage/FtpManager.cs +++ b/src/Files.App.Storage/Ftp/FtpManager.cs @@ -3,7 +3,7 @@ using System.Net; -namespace Files.App.Storage.Storables +namespace Files.App.Storage { public static class FtpManager { diff --git a/src/Files.App.Storage/Storables/FtpStorage/FtpStorable.cs b/src/Files.App.Storage/Ftp/FtpStorable.cs similarity index 95% rename from src/Files.App.Storage/Storables/FtpStorage/FtpStorable.cs rename to src/Files.App.Storage/Ftp/FtpStorable.cs index 3d927df0de68..9cf6f855b2ee 100644 --- a/src/Files.App.Storage/Storables/FtpStorage/FtpStorable.cs +++ b/src/Files.App.Storage/Ftp/FtpStorable.cs @@ -3,7 +3,7 @@ using FluentFTP; -namespace Files.App.Storage.Storables +namespace Files.App.Storage { public abstract class FtpStorable : IStorableChild { diff --git a/src/Files.App.Storage/Storables/FtpStorage/FtpStorageFile.cs b/src/Files.App.Storage/Ftp/FtpStorageFile.cs similarity index 95% rename from src/Files.App.Storage/Storables/FtpStorage/FtpStorageFile.cs rename to src/Files.App.Storage/Ftp/FtpStorageFile.cs index 35ecb890e9c0..decfdcaabfd6 100644 --- a/src/Files.App.Storage/Storables/FtpStorage/FtpStorageFile.cs +++ b/src/Files.App.Storage/Ftp/FtpStorageFile.cs @@ -3,7 +3,7 @@ using System.IO; -namespace Files.App.Storage.Storables +namespace Files.App.Storage { public sealed class FtpStorageFile : FtpStorable, IChildFile { diff --git a/src/Files.App.Storage/Storables/FtpStorage/FtpStorageFolder.cs b/src/Files.App.Storage/Ftp/FtpStorageFolder.cs similarity index 99% rename from src/Files.App.Storage/Storables/FtpStorage/FtpStorageFolder.cs rename to src/Files.App.Storage/Ftp/FtpStorageFolder.cs index 3a5d838079fa..83b01dccaa88 100644 --- a/src/Files.App.Storage/Storables/FtpStorage/FtpStorageFolder.cs +++ b/src/Files.App.Storage/Ftp/FtpStorageFolder.cs @@ -6,7 +6,7 @@ using System.IO; using System.Runtime.CompilerServices; -namespace Files.App.Storage.Storables +namespace Files.App.Storage { public sealed class FtpStorageFolder : FtpStorable, IModifiableFolder, IChildFolder, IDirectCopy, IDirectMove, IGetFirstByName { diff --git a/src/Files.App.Storage/Storables/FtpStorage/FtpStorageService.cs b/src/Files.App.Storage/Ftp/FtpStorageService.cs similarity index 97% rename from src/Files.App.Storage/Storables/FtpStorage/FtpStorageService.cs rename to src/Files.App.Storage/Ftp/FtpStorageService.cs index 7e97f7e07d3f..20df207f45f1 100644 --- a/src/Files.App.Storage/Storables/FtpStorage/FtpStorageService.cs +++ b/src/Files.App.Storage/Ftp/FtpStorageService.cs @@ -4,7 +4,7 @@ using FluentFTP; using System.IO; -namespace Files.App.Storage.Storables +namespace Files.App.Storage { /// public sealed class FtpStorageService : IFtpStorageService diff --git a/src/Files.App.Storage/Storables/HomeFolder/HomeFolder.cs b/src/Files.App.Storage/Legacy/HomeFolder/HomeFolder.cs similarity index 100% rename from src/Files.App.Storage/Storables/HomeFolder/HomeFolder.cs rename to src/Files.App.Storage/Legacy/HomeFolder/HomeFolder.cs diff --git a/src/Files.App.Storage/Storables/HomeFolder/IHomeFolder.cs b/src/Files.App.Storage/Legacy/HomeFolder/IHomeFolder.cs similarity index 100% rename from src/Files.App.Storage/Storables/HomeFolder/IHomeFolder.cs rename to src/Files.App.Storage/Legacy/HomeFolder/IHomeFolder.cs diff --git a/src/Files.App.Storage/Storables/NativeStorageLegacy/NativeStorageService.cs b/src/Files.App.Storage/Legacy/NativeStorageLegacy/NativeStorageService.cs similarity index 100% rename from src/Files.App.Storage/Storables/NativeStorageLegacy/NativeStorageService.cs rename to src/Files.App.Storage/Legacy/NativeStorageLegacy/NativeStorageService.cs diff --git a/src/Files.App.Storage/Watchers/RecycleBinWatcher.cs b/src/Files.App.Storage/Legacy/RecycleBinWatcher.cs similarity index 100% rename from src/Files.App.Storage/Watchers/RecycleBinWatcher.cs rename to src/Files.App.Storage/Legacy/RecycleBinWatcher.cs diff --git a/src/Files.App.Storage/Storables/WindowsStorage/IFolderSettings.cs b/src/Files.App.Storage/Storables/WindowsStorage/IFolderSettings.cs deleted file mode 100644 index 55a16c37bc58..000000000000 --- a/src/Files.App.Storage/Storables/WindowsStorage/IFolderSettings.cs +++ /dev/null @@ -1,6 +0,0 @@ -namespace Files.App.Storage -{ - public interface IFolderSettings - { - } -} diff --git a/src/Files.App.Storage/Storables/WindowsStorage/WindowsStorableHelpers.Icon.cs b/src/Files.App.Storage/Windows/Helpers/WindowsStorableHelpers.Icon.cs similarity index 100% rename from src/Files.App.Storage/Storables/WindowsStorage/WindowsStorableHelpers.Icon.cs rename to src/Files.App.Storage/Windows/Helpers/WindowsStorableHelpers.Icon.cs diff --git a/src/Files.App.Storage/Storables/WindowsStorage/WindowsStorableHelpers.PowerShell.cs b/src/Files.App.Storage/Windows/Helpers/WindowsStorableHelpers.PowerShell.cs similarity index 100% rename from src/Files.App.Storage/Storables/WindowsStorage/WindowsStorableHelpers.PowerShell.cs rename to src/Files.App.Storage/Windows/Helpers/WindowsStorableHelpers.PowerShell.cs diff --git a/src/Files.App.Storage/Storables/WindowsStorage/WindowsStorableHelpers.Process.cs b/src/Files.App.Storage/Windows/Helpers/WindowsStorableHelpers.Process.cs similarity index 100% rename from src/Files.App.Storage/Storables/WindowsStorage/WindowsStorableHelpers.Process.cs rename to src/Files.App.Storage/Windows/Helpers/WindowsStorableHelpers.Process.cs diff --git a/src/Files.App.Storage/Storables/WindowsStorage/WindowsStorableHelpers.Shell.cs b/src/Files.App.Storage/Windows/Helpers/WindowsStorableHelpers.Shell.cs similarity index 97% rename from src/Files.App.Storage/Storables/WindowsStorage/WindowsStorableHelpers.Shell.cs rename to src/Files.App.Storage/Windows/Helpers/WindowsStorableHelpers.Shell.cs index f63a2502009b..41eb10877af7 100644 --- a/src/Files.App.Storage/Storables/WindowsStorage/WindowsStorableHelpers.Shell.cs +++ b/src/Files.App.Storage/Windows/Helpers/WindowsStorableHelpers.Shell.cs @@ -201,7 +201,7 @@ public static HRESULT TryUnpinFolderFromQuickAccess(this IWindowsFolder @this) return HRESULT.S_OK; } - public static IEnumerable GetShellNewItems(this IWindowsFolder @this) + public static IEnumerable GetShellNewItems(this IWindowsFolder @this) { HRESULT hr = default; @@ -249,7 +249,7 @@ public static IEnumerable GetShellNewItems(this IWindowsFolder return []; // Enumerates and populates the list - List shellNewItems = []; + List shellNewItems = []; for (uint dwIndex = 0; dwIndex < dwCount; dwIndex++) { MENUITEMINFOW mii = default; @@ -264,7 +264,7 @@ public static IEnumerable GetShellNewItems(this IWindowsFolder { Id = mii.wID, Name = mii.dwTypeData.ToString(), - Type = (ContextMenuType)mii.fState, + Type = (WindowsContextMenuType)mii.fState, }); } @@ -274,7 +274,7 @@ public static IEnumerable GetShellNewItems(this IWindowsFolder return shellNewItems; } - public static bool InvokeShellNewItem(this IWindowsFolder @this, ContextMenuItem item) + public static bool InvokeShellNewItem(this IWindowsFolder @this, WindowsContextMenuItem item) { HRESULT hr = default; diff --git a/src/Files.App.Storage/Storables/WindowsStorage/WindowsStorableHelpers.Storage.cs b/src/Files.App.Storage/Windows/Helpers/WindowsStorableHelpers.Storage.cs similarity index 100% rename from src/Files.App.Storage/Storables/WindowsStorage/WindowsStorableHelpers.Storage.cs rename to src/Files.App.Storage/Windows/Helpers/WindowsStorableHelpers.Storage.cs diff --git a/src/Files.App.Storage/Storables/WindowsStorage/IWindowsFile.cs b/src/Files.App.Storage/Windows/IWindowsFile.cs similarity index 100% rename from src/Files.App.Storage/Storables/WindowsStorage/IWindowsFile.cs rename to src/Files.App.Storage/Windows/IWindowsFile.cs diff --git a/src/Files.App.Storage/Storables/WindowsStorage/IWindowsFolder.cs b/src/Files.App.Storage/Windows/IWindowsFolder.cs similarity index 100% rename from src/Files.App.Storage/Storables/WindowsStorage/IWindowsFolder.cs rename to src/Files.App.Storage/Windows/IWindowsFolder.cs diff --git a/src/Files.App.Storage/Storables/WindowsStorage/IWindowsStorable.cs b/src/Files.App.Storage/Windows/IWindowsStorable.cs similarity index 100% rename from src/Files.App.Storage/Storables/WindowsStorage/IWindowsStorable.cs rename to src/Files.App.Storage/Windows/IWindowsStorable.cs diff --git a/src/Files.App.Storage/Storables/WindowsStorage/JumpListDestinationType.cs b/src/Files.App.Storage/Windows/Managers/JumpListDestinationType.cs similarity index 100% rename from src/Files.App.Storage/Storables/WindowsStorage/JumpListDestinationType.cs rename to src/Files.App.Storage/Windows/Managers/JumpListDestinationType.cs diff --git a/src/Files.App.Storage/Storables/WindowsStorage/JumpListItem.cs b/src/Files.App.Storage/Windows/Managers/JumpListItem.cs similarity index 100% rename from src/Files.App.Storage/Storables/WindowsStorage/JumpListItem.cs rename to src/Files.App.Storage/Windows/Managers/JumpListItem.cs diff --git a/src/Files.App.Storage/Storables/WindowsStorage/JumpListItemType.cs b/src/Files.App.Storage/Windows/Managers/JumpListItemType.cs similarity index 100% rename from src/Files.App.Storage/Storables/WindowsStorage/JumpListItemType.cs rename to src/Files.App.Storage/Windows/Managers/JumpListItemType.cs diff --git a/src/Files.App.Storage/Storables/WindowsStorage/JumpListManager.cs b/src/Files.App.Storage/Windows/Managers/JumpListManager.cs similarity index 100% rename from src/Files.App.Storage/Storables/WindowsStorage/JumpListManager.cs rename to src/Files.App.Storage/Windows/Managers/JumpListManager.cs diff --git a/src/Files.App.Storage/Storables/WindowsStorage/STATask.cs b/src/Files.App.Storage/Windows/Managers/STATask.cs similarity index 100% rename from src/Files.App.Storage/Storables/WindowsStorage/STATask.cs rename to src/Files.App.Storage/Windows/Managers/STATask.cs diff --git a/src/Files.App.Storage/Storables/WindowsStorage/SystemTrayManager.cs b/src/Files.App.Storage/Windows/Managers/SystemTrayManager.cs similarity index 100% rename from src/Files.App.Storage/Storables/WindowsStorage/SystemTrayManager.cs rename to src/Files.App.Storage/Windows/Managers/SystemTrayManager.cs diff --git a/src/Files.App.Storage/Storables/WindowsStorage/TaskbarManager.cs b/src/Files.App.Storage/Windows/Managers/TaskbarManager.cs similarity index 100% rename from src/Files.App.Storage/Storables/WindowsStorage/TaskbarManager.cs rename to src/Files.App.Storage/Windows/Managers/TaskbarManager.cs diff --git a/src/Files.App.Storage/Storables/WindowsStorage/ContextMenuItem.cs b/src/Files.App.Storage/Windows/Managers/WindowsContextMenuItem.cs similarity index 75% rename from src/Files.App.Storage/Storables/WindowsStorage/ContextMenuItem.cs rename to src/Files.App.Storage/Windows/Managers/WindowsContextMenuItem.cs index 179f6d83b75a..03af85e6a03e 100644 --- a/src/Files.App.Storage/Storables/WindowsStorage/ContextMenuItem.cs +++ b/src/Files.App.Storage/Windows/Managers/WindowsContextMenuItem.cs @@ -6,9 +6,9 @@ namespace Files.App.Storage /// /// Represents a Windows Shell ContextMenu item. /// - public partial class ContextMenuItem + public partial class WindowsContextMenuItem { - public ContextMenuType Type { get; set; } + public WindowsContextMenuType Type { get; set; } public uint Id { get; set; } diff --git a/src/Files.App.Storage/Storables/WindowsStorage/ContextMenuType.cs b/src/Files.App.Storage/Windows/Managers/WindowsContextMenuType.cs similarity index 86% rename from src/Files.App.Storage/Storables/WindowsStorage/ContextMenuType.cs rename to src/Files.App.Storage/Windows/Managers/WindowsContextMenuType.cs index 31e3b939a30f..904a089fac19 100644 --- a/src/Files.App.Storage/Storables/WindowsStorage/ContextMenuType.cs +++ b/src/Files.App.Storage/Windows/Managers/WindowsContextMenuType.cs @@ -3,7 +3,7 @@ namespace Files.App.Storage { - public enum ContextMenuType + public enum WindowsContextMenuType { Normal = 0x00000000, diff --git a/src/Files.App.Storage/Storables/WindowsStorage/WindowsBulkOperations.cs b/src/Files.App.Storage/Windows/WindowsBulkOperations.cs similarity index 100% rename from src/Files.App.Storage/Storables/WindowsStorage/WindowsBulkOperations.cs rename to src/Files.App.Storage/Windows/WindowsBulkOperations.cs diff --git a/src/Files.App.Storage/Storables/WindowsStorage/WindowsBulkOperationsEventArgs.cs b/src/Files.App.Storage/Windows/WindowsBulkOperationsEventArgs.cs similarity index 100% rename from src/Files.App.Storage/Storables/WindowsStorage/WindowsBulkOperationsEventArgs.cs rename to src/Files.App.Storage/Windows/WindowsBulkOperationsEventArgs.cs diff --git a/src/Files.App.Storage/Storables/WindowsStorage/WindowsBulkOperationsSink.Methods.cs b/src/Files.App.Storage/Windows/WindowsBulkOperationsSink.Methods.cs similarity index 100% rename from src/Files.App.Storage/Storables/WindowsStorage/WindowsBulkOperationsSink.Methods.cs rename to src/Files.App.Storage/Windows/WindowsBulkOperationsSink.Methods.cs diff --git a/src/Files.App.Storage/Storables/WindowsStorage/WindowsBulkOperationsSink.VTable.cs b/src/Files.App.Storage/Windows/WindowsBulkOperationsSink.VTable.cs similarity index 100% rename from src/Files.App.Storage/Storables/WindowsStorage/WindowsBulkOperationsSink.VTable.cs rename to src/Files.App.Storage/Windows/WindowsBulkOperationsSink.VTable.cs diff --git a/src/Files.App.Storage/Storables/WindowsStorage/WindowsFile.cs b/src/Files.App.Storage/Windows/WindowsFile.cs similarity index 100% rename from src/Files.App.Storage/Storables/WindowsStorage/WindowsFile.cs rename to src/Files.App.Storage/Windows/WindowsFile.cs diff --git a/src/Files.App.Storage/Storables/WindowsStorage/WindowsFolder.cs b/src/Files.App.Storage/Windows/WindowsFolder.cs similarity index 100% rename from src/Files.App.Storage/Storables/WindowsStorage/WindowsFolder.cs rename to src/Files.App.Storage/Windows/WindowsFolder.cs diff --git a/src/Files.App.Storage/Storables/WindowsStorage/WindowsStorable.cs b/src/Files.App.Storage/Windows/WindowsStorable.cs similarity index 95% rename from src/Files.App.Storage/Storables/WindowsStorage/WindowsStorable.cs rename to src/Files.App.Storage/Windows/WindowsStorable.cs index bde2995b6490..d7ed69cc2f31 100644 --- a/src/Files.App.Storage/Storables/WindowsStorage/WindowsStorable.cs +++ b/src/Files.App.Storage/Windows/WindowsStorable.cs @@ -11,6 +11,7 @@ namespace Files.App.Storage { public unsafe abstract class WindowsStorable : IWindowsStorable { + /// public IShellItem* ThisPtr { [MethodImpl(MethodImplOptions.AggressiveInlining)] @@ -20,6 +21,7 @@ public IShellItem* ThisPtr set; } + /// public IContextMenu* ContextMenu { [MethodImpl(MethodImplOptions.AggressiveInlining)] @@ -29,8 +31,10 @@ public IContextMenu* ContextMenu set; } + /// public string Id => this.GetDisplayName(SIGDN.SIGDN_FILESYSPATH); + /// public string Name => this.GetDisplayName(SIGDN.SIGDN_PARENTRELATIVEFORUI); public static WindowsStorable? TryParse(string szPath) @@ -54,6 +58,7 @@ public IContextMenu* ContextMenu return isFolder ? new WindowsFolder(pShellItem) : new WindowsFile(pShellItem); } + /// public unsafe Task GetParentAsync(CancellationToken cancellationToken = default) { cancellationToken.ThrowIfCancellationRequested(); @@ -72,6 +77,7 @@ public override bool Equals(object? obj) return Equals(obj as IWindowsStorable); } + /// public override int GetHashCode() { return HashCode.Combine(Id, Name);