diff --git a/MareSynchronos/FileCache/CacheMonitor.cs b/MareSynchronos/FileCache/CacheMonitor.cs index 393dc39..34d8713 100644 --- a/MareSynchronos/FileCache/CacheMonitor.cs +++ b/MareSynchronos/FileCache/CacheMonitor.cs @@ -33,7 +33,7 @@ public sealed class CacheMonitor : DisposableMediatorSubscriberBase _fileCompactor = fileCompactor; Mediator.Subscribe(this, (_) => { - StartPenumbraWatcher(_ipcManager.Penumbra.PenumbraModDirectory); + StartPenumbraWatcher(_ipcManager.Penumbra.ModDirectory); StartMareWatcher(configService.Current.CacheFolder); InvokeScan(); }); @@ -42,7 +42,7 @@ public sealed class CacheMonitor : DisposableMediatorSubscriberBase Mediator.Subscribe(this, (_) => { StartMareWatcher(configService.Current.CacheFolder); - StartPenumbraWatcher(_ipcManager.Penumbra.PenumbraModDirectory); + StartPenumbraWatcher(_ipcManager.Penumbra.ModDirectory); InvokeScan(); }); Mediator.Subscribe(this, (msg) => @@ -50,9 +50,9 @@ public sealed class CacheMonitor : DisposableMediatorSubscriberBase StartPenumbraWatcher(msg.ModDirectory); InvokeScan(); }); - if (_ipcManager.Penumbra.APIAvailable && !string.IsNullOrEmpty(_ipcManager.Penumbra.PenumbraModDirectory)) + if (_ipcManager.Penumbra.APIAvailable && !string.IsNullOrEmpty(_ipcManager.Penumbra.ModDirectory)) { - StartPenumbraWatcher(_ipcManager.Penumbra.PenumbraModDirectory); + StartPenumbraWatcher(_ipcManager.Penumbra.ModDirectory); } if (configService.Current.HasValidSetup()) { @@ -466,7 +466,7 @@ public sealed class CacheMonitor : DisposableMediatorSubscriberBase private void FullFileScan(CancellationToken ct) { TotalFiles = 1; - var penumbraDir = _ipcManager.Penumbra.PenumbraModDirectory; + var penumbraDir = _ipcManager.Penumbra.ModDirectory; bool penDirExists = true; bool cacheDirExists = true; if (string.IsNullOrEmpty(penumbraDir) || !Directory.Exists(penumbraDir)) diff --git a/MareSynchronos/FileCache/FileCacheManager.cs b/MareSynchronos/FileCache/FileCacheManager.cs index 5f8e590..49be997 100644 --- a/MareSynchronos/FileCache/FileCacheManager.cs +++ b/MareSynchronos/FileCache/FileCacheManager.cs @@ -53,8 +53,8 @@ public sealed class FileCacheManager : IHostedService if (!fi.Exists) return null; _logger.LogTrace("Creating file entry for {path}", path); var fullName = fi.FullName.ToLowerInvariant(); - if (!fullName.Contains(_ipcManager.Penumbra.PenumbraModDirectory!.ToLowerInvariant(), StringComparison.Ordinal)) return null; - string prefixedPath = fullName.Replace(_ipcManager.Penumbra.PenumbraModDirectory!.ToLowerInvariant(), PenumbraPrefix + "\\", StringComparison.Ordinal).Replace("\\\\", "\\", StringComparison.Ordinal); + if (!fullName.Contains(_ipcManager.Penumbra.ModDirectory!.ToLowerInvariant(), StringComparison.Ordinal)) return null; + string prefixedPath = fullName.Replace(_ipcManager.Penumbra.ModDirectory!.ToLowerInvariant(), PenumbraPrefix + "\\", StringComparison.Ordinal).Replace("\\\\", "\\", StringComparison.Ordinal); return CreateFileCacheEntity(fi, prefixedPath); } @@ -174,7 +174,7 @@ public sealed class FileCacheManager : IHostedService private FileCacheEntity? GetFileCacheByPath(string path) { var cleanedPath = path.Replace("/", "\\", StringComparison.OrdinalIgnoreCase).ToLowerInvariant() - .Replace(_ipcManager.Penumbra.PenumbraModDirectory!.ToLowerInvariant(), "", StringComparison.OrdinalIgnoreCase); + .Replace(_ipcManager.Penumbra.ModDirectory!.ToLowerInvariant(), "", StringComparison.OrdinalIgnoreCase); var entry = _fileCaches.SelectMany(v => v.Value).FirstOrDefault(f => f.ResolvedFilepath.EndsWith(cleanedPath, StringComparison.OrdinalIgnoreCase)); if (entry == null) @@ -196,7 +196,7 @@ public sealed class FileCacheManager : IHostedService { var cleanedPaths = paths.Distinct(StringComparer.OrdinalIgnoreCase).ToDictionary(p => p, p => p.Replace("/", "\\", StringComparison.OrdinalIgnoreCase) - .Replace(_ipcManager.Penumbra.PenumbraModDirectory!, _ipcManager.Penumbra.PenumbraModDirectory!.EndsWith('\\') ? PenumbraPrefix + '\\' : PenumbraPrefix, StringComparison.OrdinalIgnoreCase) + .Replace(_ipcManager.Penumbra.ModDirectory!, _ipcManager.Penumbra.ModDirectory!.EndsWith('\\') ? PenumbraPrefix + '\\' : PenumbraPrefix, StringComparison.OrdinalIgnoreCase) .Replace(_configService.Current.CacheFolder, _configService.Current.CacheFolder.EndsWith('\\') ? CachePrefix + '\\' : CachePrefix, StringComparison.OrdinalIgnoreCase) .Replace("\\\\", "\\", StringComparison.Ordinal), StringComparer.OrdinalIgnoreCase); @@ -368,7 +368,7 @@ public sealed class FileCacheManager : IHostedService { if (fileCache.PrefixedFilePath.StartsWith(PenumbraPrefix, StringComparison.OrdinalIgnoreCase)) { - fileCache.SetResolvedFilePath(fileCache.PrefixedFilePath.Replace(PenumbraPrefix, _ipcManager.Penumbra.PenumbraModDirectory, StringComparison.Ordinal)); + fileCache.SetResolvedFilePath(fileCache.PrefixedFilePath.Replace(PenumbraPrefix, _ipcManager.Penumbra.ModDirectory, StringComparison.Ordinal)); } else if (fileCache.PrefixedFilePath.StartsWith(CachePrefix, StringComparison.OrdinalIgnoreCase)) { diff --git a/MareSynchronos/Interop/Ipc/IpcCallerPenumbra.cs b/MareSynchronos/Interop/Ipc/IpcCallerPenumbra.cs index d9c05d2..763e0bd 100644 --- a/MareSynchronos/Interop/Ipc/IpcCallerPenumbra.cs +++ b/MareSynchronos/Interop/Ipc/IpcCallerPenumbra.cs @@ -1,4 +1,4 @@ -using Dalamud.Interface.ImGuiNotification; +using Dalamud.Interface.ImGuiNotification; using Dalamud.Plugin; using MareSynchronos.MareConfiguration.Models; using MareSynchronos.PlayerData.Handlers; @@ -20,7 +20,7 @@ public sealed class IpcCallerPenumbra : DisposableMediatorSubscriberBase, IIpcCa private readonly RedrawManager _redrawManager; private bool _shownPenumbraUnavailable = false; private string? _penumbraModDirectory; - public string? PenumbraModDirectory + public string? ModDirectory { get => _penumbraModDirectory; private set @@ -128,11 +128,11 @@ public sealed class IpcCallerPenumbra : DisposableMediatorSubscriberBase, IIpcCa { if (!APIAvailable) { - PenumbraModDirectory = string.Empty; + ModDirectory = string.Empty; } else { - PenumbraModDirectory = _penumbraResolveModDir!.Invoke().ToLowerInvariant(); + ModDirectory = _penumbraResolveModDir!.Invoke().ToLowerInvariant(); } } @@ -327,8 +327,8 @@ public sealed class IpcCallerPenumbra : DisposableMediatorSubscriberBase, IIpcCa private void PenumbraInit() { APIAvailable = true; - PenumbraModDirectory = _penumbraResolveModDir.Invoke(); + ModDirectory = _penumbraResolveModDir.Invoke(); _mareMediator.Publish(new PenumbraInitializedMessage()); _penumbraRedraw!.Invoke(0, setting: RedrawType.Redraw); } -} +} \ No newline at end of file diff --git a/MareSynchronos/UI/SettingsUi.cs b/MareSynchronos/UI/SettingsUi.cs index 845a21a..2afe4fa 100644 --- a/MareSynchronos/UI/SettingsUi.cs +++ b/MareSynchronos/UI/SettingsUi.cs @@ -750,7 +750,7 @@ public class SettingsUi : WindowMediatorSubscriberBase using var id = ImRaii.PushId("penumbraMonitor"); if (UiSharedService.NormalizedIconTextButton(FontAwesomeIcon.ArrowsToCircle, "Try to reinitialize Monitor")) { - _cacheMonitor.StartPenumbraWatcher(_ipcManager.Penumbra.PenumbraModDirectory); + _cacheMonitor.StartPenumbraWatcher(_ipcManager.Penumbra.ModDirectory); } } @@ -770,7 +770,7 @@ public class SettingsUi : WindowMediatorSubscriberBase if (UiSharedService.NormalizedIconTextButton(FontAwesomeIcon.Play, "Resume Monitoring")) { _cacheMonitor.StartMareWatcher(_configService.Current.CacheFolder); - _cacheMonitor.StartPenumbraWatcher(_ipcManager.Penumbra.PenumbraModDirectory); + _cacheMonitor.StartPenumbraWatcher(_ipcManager.Penumbra.ModDirectory); _cacheMonitor.InvokeScan(); } UiSharedService.AttachToolTip("Attempts to resume monitoring for both Penumbra and Loporrit Storage. " diff --git a/MareSynchronos/UI/UISharedService.cs b/MareSynchronos/UI/UISharedService.cs index 19b7a72..95f1e8b 100644 --- a/MareSynchronos/UI/UISharedService.cs +++ b/MareSynchronos/UI/UISharedService.cs @@ -123,7 +123,7 @@ public partial class UiSharedService : DisposableMediatorSubscriberBase public bool EditTrackerPosition { get; set; } - public bool HasValidPenumbraModPath => !(_ipcManager.Penumbra.PenumbraModDirectory ?? string.Empty).IsNullOrEmpty() && Directory.Exists(_ipcManager.Penumbra.PenumbraModDirectory); + public bool HasValidPenumbraModPath => !(_ipcManager.Penumbra.ModDirectory ?? string.Empty).IsNullOrEmpty() && Directory.Exists(_ipcManager.Penumbra.ModDirectory); public bool IsInGpose => _dalamudUtil.IsInCutscene; @@ -601,7 +601,7 @@ public partial class UiSharedService : DisposableMediatorSubscriberBase if (!success) return; _isOneDrive = path.Contains("onedrive", StringComparison.OrdinalIgnoreCase); - _isPenumbraDirectory = string.Equals(path.ToLowerInvariant(), _ipcManager.Penumbra.PenumbraModDirectory?.ToLowerInvariant(), StringComparison.Ordinal); + _isPenumbraDirectory = string.Equals(path.ToLowerInvariant(), _ipcManager.Penumbra.ModDirectory?.ToLowerInvariant(), StringComparison.Ordinal); _isDirectoryWritable = IsDirectoryWritable(path); _cacheDirectoryHasOtherFilesThanCache = Directory.GetFiles(path, "*", SearchOption.AllDirectories).Any(f => Path.GetFileNameWithoutExtension(f).Length != 40) || Directory.GetDirectories(path).Any();