From 4fc30166bf1d326021e8bc46f48010a15338725a Mon Sep 17 00:00:00 2001 From: Jeremy Wu Date: Thu, 5 Mar 2020 23:29:07 +1100 Subject: [PATCH] separate get data location code from constant file --- .../UserSettings/DataLocation.cs | 31 +++++++++++++++++++ Wox.Infrastructure/Wox.cs | 22 +------------ 2 files changed, 32 insertions(+), 21 deletions(-) create mode 100644 Wox.Infrastructure/UserSettings/DataLocation.cs diff --git a/Wox.Infrastructure/UserSettings/DataLocation.cs b/Wox.Infrastructure/UserSettings/DataLocation.cs new file mode 100644 index 000000000..f100cdfeb --- /dev/null +++ b/Wox.Infrastructure/UserSettings/DataLocation.cs @@ -0,0 +1,31 @@ +using System; +using System.Collections.Generic; +using System.IO; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace Wox.Infrastructure.UserSettings +{ + public static class DataLocation + { + public static bool PortableDataLocationInUse; + public const string PortableFolderName = "UserData"; + public static string PortableDataPath = Path.Combine(Constant.ProgramDirectory, PortableFolderName); + public static string RoamingDataPath = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData), Constant.Wox); + public static string DataDirectory() + { + if (Directory.Exists(PortableDataPath)) + { + PortableDataLocationInUse = true; + return PortableDataPath; + } + else + { + return RoamingDataPath; + } + } + + public static readonly string PluginsDirectory = Path.Combine(DataDirectory(), Constant.Plugins); + } +} diff --git a/Wox.Infrastructure/Wox.cs b/Wox.Infrastructure/Wox.cs index d9599e07a..8c57bf20d 100644 --- a/Wox.Infrastructure/Wox.cs +++ b/Wox.Infrastructure/Wox.cs @@ -1,4 +1,3 @@ -using System; using System.Diagnostics; using System.IO; using System.Reflection; @@ -15,26 +14,7 @@ namespace Wox.Infrastructure public static readonly string ExecutablePath = Path.Combine(ProgramDirectory, Wox + ".exe"); public static readonly string ApplicationDirectory = Directory.GetParent(ProgramDirectory).ToString(); public static readonly string RootDirectory = Directory.GetParent(ApplicationDirectory).ToString(); - - public static bool IsPortableMode; - public const string PortableFolderName = "UserData"; - public static string PortableDataPath = Path.Combine(ProgramDirectory, PortableFolderName); - public static string RoamingDataPath = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData), Wox); - public static string DetermineDataDirectory() - { - if (Directory.Exists(PortableDataPath)) - { - IsPortableMode = true; - return PortableDataPath; - } - else - { - return RoamingDataPath; - } - } - - public static readonly string DataDirectory = DetermineDataDirectory(); - public static readonly string PluginsDirectory = Path.Combine(DataDirectory, Plugins); + public static readonly string PreinstalledDirectory = Path.Combine(ProgramDirectory, Plugins); public const string Issue = "https://github.com/Wox-launcher/Wox/issues/new"; public static readonly string Version = FileVersionInfo.GetVersionInfo(Assembly.Location.NonNull()).ProductVersion;