changed lightless references from you know what
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
using Dalamud.Interface.Utility.Raii;
|
||||
using LightlessSync.API.Dto.CharaData;
|
||||
using LightlessSync.MareConfiguration.Models;
|
||||
using LightlessSync.LightlessConfiguration.Models;
|
||||
using LightlessSync.Services.CharaData.Models;
|
||||
using System.Text;
|
||||
|
||||
|
||||
@@ -560,10 +560,10 @@ internal sealed partial class CharaDataHubUi
|
||||
|
||||
private void DrawMcdOnline()
|
||||
{
|
||||
_uiSharedService.BigText("Mare Character Data Online");
|
||||
_uiSharedService.BigText("Lightless Character Data Online");
|
||||
|
||||
DrawHelpFoldout("In this tab you can create, view and edit your own Mare Character Data that is stored on the server." + Environment.NewLine + Environment.NewLine
|
||||
+ "Mare Character Data Online functions similar to the previous MCDF standard for exporting your character, except that you do not have to send a file to the other person but solely a code." + Environment.NewLine + Environment.NewLine
|
||||
DrawHelpFoldout("In this tab you can create, view and edit your own Lightless Character Data that is stored on the server." + Environment.NewLine + Environment.NewLine
|
||||
+ "Lightless Character Data Online functions similar to the previous MCDF standard for exporting your character, except that you do not have to send a file to the other person but solely a code." + Environment.NewLine + Environment.NewLine
|
||||
+ "There would be a bit too much to explain here on what you can do here in its entirety, however, all elements in this tab have help texts attached what they are used for. Please review them carefully." + Environment.NewLine + Environment.NewLine
|
||||
+ "Be mindful that when you share your Character Data with other people there is a chance that, with the help of unsanctioned 3rd party plugins, your appearance could be stolen irreversibly, just like when using MCDF.");
|
||||
|
||||
|
||||
@@ -56,7 +56,7 @@ internal partial class CharaDataHubUi
|
||||
_configService.Current.NearbyDrawWisps = showWisps;
|
||||
_configService.Save();
|
||||
}
|
||||
_uiSharedService.DrawHelpText("When enabled, Mare will draw floating wisps where other's poses are in the world.");
|
||||
_uiSharedService.DrawHelpText("When enabled, Lightless will draw floating wisps where other's poses are in the world.");
|
||||
int poseDetectionDistance = _configService.Current.NearbyDistanceFilter;
|
||||
UiSharedService.ScaledNextItemWidth(100);
|
||||
if (ImGui.SliderInt("Detection Distance", ref poseDetectionDistance, 5, 1000))
|
||||
@@ -71,7 +71,7 @@ internal partial class CharaDataHubUi
|
||||
_configService.Current.NearbyShowAlways = alwaysShow;
|
||||
_configService.Save();
|
||||
}
|
||||
_uiSharedService.DrawHelpText("This will allow Mare to continue the calculation of position of wisps etc. active outside of the 'Poses Nearby' tab." + UiSharedService.TooltipSeparator
|
||||
_uiSharedService.DrawHelpText("This will allow Lightless to continue the calculation of position of wisps etc. active outside of the 'Poses Nearby' tab." + UiSharedService.TooltipSeparator
|
||||
+ "Note: The wisps etc. will disappear during combat and performing.");
|
||||
});
|
||||
|
||||
|
||||
@@ -5,8 +5,8 @@ using Dalamud.Interface.ImGuiFileDialog;
|
||||
using Dalamud.Interface.Utility;
|
||||
using Dalamud.Interface.Utility.Raii;
|
||||
using LightlessSync.API.Dto.CharaData;
|
||||
using LightlessSync.MareConfiguration;
|
||||
using LightlessSync.MareConfiguration.Models;
|
||||
using LightlessSync.LightlessConfiguration;
|
||||
using LightlessSync.LightlessConfiguration.Models;
|
||||
using LightlessSync.PlayerData.Pairs;
|
||||
using LightlessSync.Services;
|
||||
using LightlessSync.Services.CharaData;
|
||||
@@ -74,7 +74,7 @@ internal sealed partial class CharaDataHubUi : WindowMediatorSubscriberBase
|
||||
private (string Id, string? Alias, string AliasOrId, string? Note)[]? _openComboHybridEntries = null;
|
||||
private bool _comboHybridUsedLastFrame = false;
|
||||
|
||||
public CharaDataHubUi(ILogger<CharaDataHubUi> logger, MareMediator mediator, PerformanceCollectorService performanceCollectorService,
|
||||
public CharaDataHubUi(ILogger<CharaDataHubUi> logger, LightlessMediator mediator, PerformanceCollectorService performanceCollectorService,
|
||||
CharaDataManager charaDataManager, CharaDataNearbyManager charaDataNearbyManager, CharaDataConfigService configService,
|
||||
UiSharedService uiSharedService, ServerConfigurationManager serverConfigurationManager,
|
||||
DalamudUtilService dalamudUtilService, FileDialogManager fileDialogManager, PairManager pairManager,
|
||||
@@ -92,7 +92,7 @@ internal sealed partial class CharaDataHubUi : WindowMediatorSubscriberBase
|
||||
_fileDialogManager = fileDialogManager;
|
||||
_pairManager = pairManager;
|
||||
_charaDataGposeTogetherManager = charaDataGposeTogetherManager;
|
||||
Mediator.Subscribe<GposeStartMessage>(this, (_) => IsOpen |= _configService.Current.OpenMareHubOnGposeStart);
|
||||
Mediator.Subscribe<GposeStartMessage>(this, (_) => IsOpen |= _configService.Current.OpenLightlessHubOnGposeStart);
|
||||
Mediator.Subscribe<OpenCharaDataHubWithFilterMessage>(this, (msg) =>
|
||||
{
|
||||
IsOpen = true;
|
||||
@@ -863,9 +863,9 @@ internal sealed partial class CharaDataHubUi : WindowMediatorSubscriberBase
|
||||
|
||||
private void DrawMcdfExport()
|
||||
{
|
||||
_uiSharedService.BigText("Mare Character Data File Export");
|
||||
_uiSharedService.BigText("Lightless Character Data File Export");
|
||||
|
||||
DrawHelpFoldout("This feature allows you to pack your character into a MCDF file and manually send it to other people. MCDF files can officially only be imported during GPose through Mare. " +
|
||||
DrawHelpFoldout("This feature allows you to pack your character into a MCDF file and manually send it to other people. MCDF files can officially only be imported during GPose through Lightless. " +
|
||||
"Be aware that the possibility exists that people write unofficial custom exporters to extract the containing data.");
|
||||
|
||||
ImGuiHelpers.ScaledDummy(5);
|
||||
@@ -891,7 +891,7 @@ internal sealed partial class CharaDataHubUi : WindowMediatorSubscriberBase
|
||||
_configService.Current.LastSavedCharaDataLocation = Path.GetDirectoryName(path) ?? string.Empty;
|
||||
_configService.Save();
|
||||
|
||||
_charaDataManager.SaveMareCharaFile(_exportDescription, path);
|
||||
_charaDataManager.SaveLightlessCharaFile(_exportDescription, path);
|
||||
_exportDescription = string.Empty;
|
||||
}, Directory.Exists(_configService.Current.LastSavedCharaDataLocation) ? _configService.Current.LastSavedCharaDataLocation : null);
|
||||
}
|
||||
@@ -1048,10 +1048,10 @@ internal sealed partial class CharaDataHubUi : WindowMediatorSubscriberBase
|
||||
ImGuiHelpers.ScaledDummy(5);
|
||||
_uiSharedService.BigText("Settings");
|
||||
ImGuiHelpers.ScaledDummy(5);
|
||||
bool openInGpose = _configService.Current.OpenMareHubOnGposeStart;
|
||||
bool openInGpose = _configService.Current.OpenLightlessHubOnGposeStart;
|
||||
if (ImGui.Checkbox("Open Character Data Hub when GPose loads", ref openInGpose))
|
||||
{
|
||||
_configService.Current.OpenMareHubOnGposeStart = openInGpose;
|
||||
_configService.Current.OpenLightlessHubOnGposeStart = openInGpose;
|
||||
_configService.Save();
|
||||
}
|
||||
_uiSharedService.DrawHelpText("This will automatically open the import menu when loading into Gpose. If unchecked you can open the menu manually with /light gpose");
|
||||
|
||||
@@ -7,7 +7,7 @@ using Dalamud.Utility;
|
||||
using LightlessSync.API.Data.Extensions;
|
||||
using LightlessSync.API.Dto.Group;
|
||||
using LightlessSync.Interop.Ipc;
|
||||
using LightlessSync.MareConfiguration;
|
||||
using LightlessSync.LightlessConfiguration;
|
||||
using LightlessSync.PlayerData.Handlers;
|
||||
using LightlessSync.PlayerData.Pairs;
|
||||
using LightlessSync.Services;
|
||||
@@ -31,7 +31,7 @@ namespace LightlessSync.UI;
|
||||
public class CompactUi : WindowMediatorSubscriberBase
|
||||
{
|
||||
private readonly ApiController _apiController;
|
||||
private readonly MareConfigService _configService;
|
||||
private readonly LightlessConfigService _configService;
|
||||
private readonly ConcurrentDictionary<GameObjectHandler, Dictionary<string, FileDownloadStatus>> _currentDownloads = new();
|
||||
private readonly DrawEntityFactory _drawEntityFactory;
|
||||
private readonly FileUploadManager _fileTransferManager;
|
||||
@@ -54,8 +54,8 @@ public class CompactUi : WindowMediatorSubscriberBase
|
||||
private bool _wasOpen;
|
||||
private float _windowContentWidth;
|
||||
|
||||
public CompactUi(ILogger<CompactUi> logger, UiSharedService uiShared, MareConfigService configService, ApiController apiController, PairManager pairManager,
|
||||
ServerConfigurationManager serverManager, MareMediator mediator, FileUploadManager fileTransferManager,
|
||||
public CompactUi(ILogger<CompactUi> logger, UiSharedService uiShared, LightlessConfigService configService, ApiController apiController, PairManager pairManager,
|
||||
ServerConfigurationManager serverManager, LightlessMediator mediator, FileUploadManager fileTransferManager,
|
||||
TagHandler tagHandler, DrawEntityFactory drawEntityFactory, SelectTagForPairUi selectTagForPairUi, SelectPairForTagUi selectPairForTagUi,
|
||||
PerformanceCollectorService performanceCollectorService, IpcManager ipcManager)
|
||||
: base(logger, mediator, "###LightlessSyncMainUI", performanceCollectorService)
|
||||
@@ -88,7 +88,7 @@ public class CompactUi : WindowMediatorSubscriberBase
|
||||
ShowTooltip = () =>
|
||||
{
|
||||
ImGui.BeginTooltip();
|
||||
ImGui.Text("Open Mare Settings");
|
||||
ImGui.Text("Open Lightless Settings");
|
||||
ImGui.EndTooltip();
|
||||
}
|
||||
},
|
||||
@@ -103,7 +103,7 @@ public class CompactUi : WindowMediatorSubscriberBase
|
||||
ShowTooltip = () =>
|
||||
{
|
||||
ImGui.BeginTooltip();
|
||||
ImGui.Text("Open Mare Event Viewer");
|
||||
ImGui.Text("Open Lightless Event Viewer");
|
||||
ImGui.EndTooltip();
|
||||
}
|
||||
}
|
||||
@@ -169,7 +169,7 @@ public class CompactUi : WindowMediatorSubscriberBase
|
||||
var penumAvailable = _ipcManager.Penumbra.APIAvailable;
|
||||
var glamAvailable = _ipcManager.Glamourer.APIAvailable;
|
||||
|
||||
UiSharedService.ColorTextWrapped($"One or more Plugins essential for Mare operation are unavailable. Enable or update following plugins:", ImGuiColors.DalamudRed);
|
||||
UiSharedService.ColorTextWrapped($"One or more Plugins essential for Lightless operation are unavailable. Enable or update following plugins:", ImGuiColors.DalamudRed);
|
||||
using var indent = ImRaii.PushIndent(10f);
|
||||
if (!penumAvailable)
|
||||
{
|
||||
@@ -578,7 +578,7 @@ public class CompactUi : WindowMediatorSubscriberBase
|
||||
ServerState.MultiChara => "Your Character Configuration has multiple characters configured with same name and world. You will not be able to connect until you fix this issue. Remove the duplicates from the configuration in Settings -> Service Settings -> Character Management and reconnect manually after.",
|
||||
ServerState.OAuthMisconfigured => "OAuth2 is enabled but not fully configured, verify in the Settings -> Service Settings that you have OAuth2 connected and, importantly, a UID assigned to your current character.",
|
||||
ServerState.OAuthLoginTokenStale => "Your OAuth2 login token is stale and cannot be used to renew. Go to the Settings -> Service Settings and unlink then relink your OAuth2 configuration.",
|
||||
ServerState.NoAutoLogon => "This character has automatic login into Mare disabled. Press the connect button to connect to Mare.",
|
||||
ServerState.NoAutoLogon => "This character has automatic login into Lightless disabled. Press the connect button to connect to Lightless.",
|
||||
_ => string.Empty
|
||||
};
|
||||
}
|
||||
|
||||
@@ -18,17 +18,17 @@ public class DrawFolderGroup : DrawFolderBase
|
||||
private readonly ApiController _apiController;
|
||||
private readonly GroupFullInfoDto _groupFullInfoDto;
|
||||
private readonly IdDisplayHandler _idDisplayHandler;
|
||||
private readonly MareMediator _mareMediator;
|
||||
private readonly LightlessMediator _lightlessMediator;
|
||||
|
||||
public DrawFolderGroup(string id, GroupFullInfoDto groupFullInfoDto, ApiController apiController,
|
||||
IImmutableList<DrawUserPair> drawPairs, IImmutableList<Pair> allPairs, TagHandler tagHandler, IdDisplayHandler idDisplayHandler,
|
||||
MareMediator mareMediator, UiSharedService uiSharedService) :
|
||||
LightlessMediator lightlessMediator, UiSharedService uiSharedService) :
|
||||
base(id, drawPairs, allPairs, tagHandler, uiSharedService)
|
||||
{
|
||||
_groupFullInfoDto = groupFullInfoDto;
|
||||
_apiController = apiController;
|
||||
_idDisplayHandler = idDisplayHandler;
|
||||
_mareMediator = mareMediator;
|
||||
_lightlessMediator = lightlessMediator;
|
||||
}
|
||||
|
||||
protected override bool RenderIfEmpty => true;
|
||||
@@ -154,7 +154,7 @@ public class DrawFolderGroup : DrawFolderBase
|
||||
if (_uiSharedService.IconTextButton(FontAwesomeIcon.Cog, "Open Admin Panel", menuWidth, true))
|
||||
{
|
||||
ImGui.CloseCurrentPopup();
|
||||
_mareMediator.Publish(new OpenSyncshellAdminPanel(_groupFullInfoDto));
|
||||
_lightlessMediator.Publish(new OpenSyncshellAdminPanel(_groupFullInfoDto));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -6,7 +6,7 @@ using Dalamud.Interface.Utility.Raii;
|
||||
using LightlessSync.API.Data.Extensions;
|
||||
using LightlessSync.API.Dto.Group;
|
||||
using LightlessSync.API.Dto.User;
|
||||
using LightlessSync.MareConfiguration;
|
||||
using LightlessSync.LightlessConfiguration;
|
||||
using LightlessSync.PlayerData.Pairs;
|
||||
using LightlessSync.Services;
|
||||
using LightlessSync.Services.Mediator;
|
||||
@@ -20,7 +20,7 @@ public class DrawUserPair
|
||||
{
|
||||
protected readonly ApiController _apiController;
|
||||
protected readonly IdDisplayHandler _displayHandler;
|
||||
protected readonly MareMediator _mediator;
|
||||
protected readonly LightlessMediator _mediator;
|
||||
protected readonly List<GroupFullInfoDto> _syncedGroups;
|
||||
private readonly GroupFullInfoDto? _currentGroup;
|
||||
protected Pair _pair;
|
||||
@@ -36,7 +36,7 @@ public class DrawUserPair
|
||||
public DrawUserPair(string id, Pair entry, List<GroupFullInfoDto> syncedGroups,
|
||||
GroupFullInfoDto? currentGroup,
|
||||
ApiController apiController, IdDisplayHandler uIDDisplayHandler,
|
||||
MareMediator mareMediator, SelectTagForPairUi selectTagForPairUi,
|
||||
LightlessMediator lightlessMediator, SelectTagForPairUi selectTagForPairUi,
|
||||
ServerConfigurationManager serverConfigurationManager,
|
||||
UiSharedService uiSharedService, PlayerPerformanceConfigService performanceConfigService,
|
||||
CharaDataManager charaDataManager)
|
||||
@@ -47,7 +47,7 @@ public class DrawUserPair
|
||||
_currentGroup = currentGroup;
|
||||
_apiController = apiController;
|
||||
_displayHandler = uIDDisplayHandler;
|
||||
_mediator = mareMediator;
|
||||
_mediator = lightlessMediator;
|
||||
_selectTagForPairUi = selectTagForPairUi;
|
||||
_serverConfigurationManager = serverConfigurationManager;
|
||||
_uiSharedService = uiSharedService;
|
||||
|
||||
@@ -26,22 +26,22 @@ public class CensusPopupHandler : IPopupHandler
|
||||
var start = 0f;
|
||||
using (_uiSharedService.UidFont.Push())
|
||||
{
|
||||
start = ImGui.GetCursorPosY() - ImGui.CalcTextSize("Mare Census Data").Y;
|
||||
UiSharedService.TextWrapped("Mare Census Participation");
|
||||
start = ImGui.GetCursorPosY() - ImGui.CalcTextSize("Lightless Census Data").Y;
|
||||
UiSharedService.TextWrapped("Lightless Census Participation");
|
||||
}
|
||||
ImGuiHelpers.ScaledDummy(5f);
|
||||
UiSharedService.TextWrapped("If you are seeing this popup you are updating from a Mare version that did not collect census data. Please read the following carefully.");
|
||||
UiSharedService.TextWrapped("If you are seeing this popup you are updating from a Lightless version that did not collect census data. Please read the following carefully.");
|
||||
ImGui.Separator();
|
||||
UiSharedService.TextWrapped("Mare Census is a data collecting service that can be used for statistical purposes. " +
|
||||
"All data collected through Mare Census is temporary and will be stored associated with your UID on the connected service as long as you are connected. " +
|
||||
UiSharedService.TextWrapped("Lightless Census is a data collecting service that can be used for statistical purposes. " +
|
||||
"All data collected through Lightless Census is temporary and will be stored associated with your UID on the connected service as long as you are connected. " +
|
||||
"The data cannot be used for long term tracking of individuals.");
|
||||
UiSharedService.TextWrapped("If enabled, Mare Census will collect following data:" + Environment.NewLine
|
||||
UiSharedService.TextWrapped("If enabled, Lightless Census will collect following data:" + Environment.NewLine
|
||||
+ "- Currently connected World" + Environment.NewLine
|
||||
+ "- Current Gender (reflecting Glamourer changes)" + Environment.NewLine
|
||||
+ "- Current Race (reflecting Glamourer changes)" + Environment.NewLine
|
||||
+ "- Current Clan (i.e. Seeker of the Sun, Keeper of the Moon, etc., reflecting Glamourer changes)");
|
||||
UiSharedService.TextWrapped("To consent to collecting census data press the appropriate button below.");
|
||||
UiSharedService.TextWrapped("This setting can be changed anytime in the Mare Settings.");
|
||||
UiSharedService.TextWrapped("This setting can be changed anytime in the Lightless Settings.");
|
||||
var width = ImGui.GetWindowContentRegionMax().X - ImGui.GetWindowContentRegionMin().X;
|
||||
var buttonSize = ImGuiHelpers.GetButtonSize("I consent to send my census data");
|
||||
ImGuiHelpers.ScaledDummy(5f);
|
||||
|
||||
@@ -16,9 +16,9 @@ public class PopupHandler : WindowMediatorSubscriberBase
|
||||
private readonly UiSharedService _uiSharedService;
|
||||
private IPopupHandler? _currentHandler = null;
|
||||
|
||||
public PopupHandler(ILogger<PopupHandler> logger, MareMediator mediator, IEnumerable<IPopupHandler> popupHandlers,
|
||||
public PopupHandler(ILogger<PopupHandler> logger, LightlessMediator mediator, IEnumerable<IPopupHandler> popupHandlers,
|
||||
PerformanceCollectorService performanceCollectorService, UiSharedService uiSharedService)
|
||||
: base(logger, mediator, "MarePopupHandler", performanceCollectorService)
|
||||
: base(logger, mediator, "LightlessPopupHandler", performanceCollectorService)
|
||||
{
|
||||
Flags = ImGuiWindowFlags.NoBringToFrontOnFocus
|
||||
| ImGuiWindowFlags.NoDecoration
|
||||
|
||||
@@ -18,9 +18,9 @@ public class CreateSyncshellUI : WindowMediatorSubscriberBase
|
||||
private bool _errorGroupCreate;
|
||||
private GroupJoinDto? _lastCreatedGroup;
|
||||
|
||||
public CreateSyncshellUI(ILogger<CreateSyncshellUI> logger, MareMediator mareMediator, ApiController apiController, UiSharedService uiSharedService,
|
||||
public CreateSyncshellUI(ILogger<CreateSyncshellUI> logger, LightlessMediator lightlessMediator, ApiController apiController, UiSharedService uiSharedService,
|
||||
PerformanceCollectorService performanceCollectorService)
|
||||
: base(logger, mareMediator, "Create new Syncshell###LightlessSyncCreateSyncshell", performanceCollectorService)
|
||||
: base(logger, lightlessMediator, "Create new Syncshell###LightlessSyncCreateSyncshell", performanceCollectorService)
|
||||
{
|
||||
_apiController = apiController;
|
||||
_uiSharedService = uiSharedService;
|
||||
@@ -76,7 +76,7 @@ public class CreateSyncshellUI : WindowMediatorSubscriberBase
|
||||
ImGui.AlignTextToFramePadding();
|
||||
ImGui.TextUnformatted("- VFX");
|
||||
_uiSharedService.BooleanToColoredIcon(!_apiController.DefaultPermissions!.DisableGroupVFX);
|
||||
UiSharedService.TextWrapped("(Those preferred permissions can be changed anytime after Syncshell creation, your defaults can be changed anytime in the Mare Settings)");
|
||||
UiSharedService.TextWrapped("(Those preferred permissions can be changed anytime after Syncshell creation, your defaults can be changed anytime in the Lightless Settings)");
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
@@ -6,7 +6,7 @@ using Dalamud.Interface.Utility.Raii;
|
||||
using LightlessSync.API.Data.Enum;
|
||||
using LightlessSync.FileCache;
|
||||
using LightlessSync.Interop.Ipc;
|
||||
using LightlessSync.MareConfiguration;
|
||||
using LightlessSync.LightlessConfiguration;
|
||||
using LightlessSync.Services;
|
||||
using LightlessSync.Services.Mediator;
|
||||
using LightlessSync.Utils;
|
||||
@@ -39,12 +39,12 @@ public class DataAnalysisUi : WindowMediatorSubscriberBase
|
||||
private bool _showModal = false;
|
||||
private CancellationTokenSource _transientRecordCts = new();
|
||||
|
||||
public DataAnalysisUi(ILogger<DataAnalysisUi> logger, MareMediator mediator,
|
||||
public DataAnalysisUi(ILogger<DataAnalysisUi> logger, LightlessMediator mediator,
|
||||
CharacterAnalyzer characterAnalyzer, IpcManager ipcManager,
|
||||
PerformanceCollectorService performanceCollectorService, UiSharedService uiSharedService,
|
||||
PlayerPerformanceConfigService playerPerformanceConfig, TransientResourceManager transientResourceManager,
|
||||
TransientConfigService transientConfigService)
|
||||
: base(logger, mediator, "Mare Character Data Analysis", performanceCollectorService)
|
||||
: base(logger, mediator, "Lightless Character Data Analysis", performanceCollectorService)
|
||||
{
|
||||
_characterAnalyzer = characterAnalyzer;
|
||||
_ipcManager = ipcManager;
|
||||
@@ -166,10 +166,10 @@ public class DataAnalysisUi : WindowMediatorSubscriberBase
|
||||
UiSharedService.DrawTree("What is this? (Explanation / Help)", () =>
|
||||
{
|
||||
UiSharedService.TextWrapped("This tab allows you to see which transient files are attached to your character.");
|
||||
UiSharedService.TextWrapped("Transient files are files that cannot be resolved to your character permanently. Mare gathers these files in the background while you execute animations, VFX, sound effects, etc.");
|
||||
UiSharedService.TextWrapped("When sending your character data to others, Mare will combine the files listed in \"All Jobs\" and the corresponding currently used job.");
|
||||
UiSharedService.TextWrapped("Transient files are files that cannot be resolved to your character permanently. Lightless gathers these files in the background while you execute animations, VFX, sound effects, etc.");
|
||||
UiSharedService.TextWrapped("When sending your character data to others, Lightless will combine the files listed in \"All Jobs\" and the corresponding currently used job.");
|
||||
UiSharedService.TextWrapped("The purpose of this tab is primarily informational for you to see which files you are carrying with you. You can remove added game paths, however if you are using the animations etc. again, "
|
||||
+ "Mare will automatically attach these after using them. If you disable associated mods in Penumbra, the associated entries here will also be deleted automatically.");
|
||||
+ "Lightless will automatically attach these after using them. If you disable associated mods in Penumbra, the associated entries here will also be deleted automatically.");
|
||||
});
|
||||
|
||||
ImGuiHelpers.ScaledDummy(5);
|
||||
@@ -292,7 +292,7 @@ public class DataAnalysisUi : WindowMediatorSubscriberBase
|
||||
}
|
||||
}
|
||||
UiSharedService.AttachToolTip("Hold CTRL to delete all game paths from the displayed list"
|
||||
+ UiSharedService.TooltipSeparator + "You usually do not need to do this. All animation and VFX data will be automatically handled through Mare.");
|
||||
+ UiSharedService.TooltipSeparator + "You usually do not need to do this. All animation and VFX data will be automatically handled through Lightless.");
|
||||
ImGuiHelpers.ScaledDummy(5);
|
||||
ImGuiHelpers.ScaledDummy(30);
|
||||
ImGui.SameLine();
|
||||
@@ -366,7 +366,7 @@ public class DataAnalysisUi : WindowMediatorSubscriberBase
|
||||
{
|
||||
UiSharedService.TextWrapped("This tab allows you to attempt to fix mods that do not sync correctly, especially those with modded models and animations." + Environment.NewLine + Environment.NewLine
|
||||
+ "To use this, start the recording, execute one or multiple emotes/animations you want to attempt to fix and check if new data appears in the table below." + Environment.NewLine
|
||||
+ "If it doesn't, Mare is not able to catch the data or already has recorded the animation files (check 'Show previously added transient files' to see if not all is already present)." + Environment.NewLine + Environment.NewLine
|
||||
+ "If it doesn't, Lightless is not able to catch the data or already has recorded the animation files (check 'Show previously added transient files' to see if not all is already present)." + Environment.NewLine + Environment.NewLine
|
||||
+ "For most animations, vfx, etc. it is enough to just run them once unless they have random variations. Longer animations do not require to play out in their entirety to be captured.");
|
||||
ImGuiHelpers.ScaledDummy(5);
|
||||
UiSharedService.DrawGroupedCenteredColorText("Important Note: If you need to fix an animation that should apply across multiple jobs, you need to repeat this process with at least one additional job, " +
|
||||
@@ -406,7 +406,7 @@ public class DataAnalysisUi : WindowMediatorSubscriberBase
|
||||
|
||||
ImGuiHelpers.ScaledDummy(5);
|
||||
ImGui.Checkbox("Show previously added transient files in the recording", ref _showAlreadyAddedTransients);
|
||||
_uiSharedService.DrawHelpText("Use this only if you want to see what was previously already caught by Mare");
|
||||
_uiSharedService.DrawHelpText("Use this only if you want to see what was previously already caught by Lightless");
|
||||
ImGuiHelpers.ScaledDummy(5);
|
||||
|
||||
using (ImRaii.Disabled(_transientResourceManager.IsTransientRecording || _transientResourceManager.RecordedTransients.All(k => !k.AddTransient) || !_acknowledgeReview))
|
||||
@@ -476,7 +476,7 @@ public class DataAnalysisUi : WindowMediatorSubscriberBase
|
||||
{
|
||||
UiSharedService.DrawTree("What is this? (Explanation / Help)", () =>
|
||||
{
|
||||
UiSharedService.TextWrapped("This tab shows you all files and their sizes that are currently in use through your character and associated entities in Mare");
|
||||
UiSharedService.TextWrapped("This tab shows you all files and their sizes that are currently in use through your character and associated entities in Lightless");
|
||||
});
|
||||
|
||||
if (_cachedAnalysis!.Count == 0) return;
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
using Dalamud.Bindings.ImGui;
|
||||
using Dalamud.Interface.Colors;
|
||||
using LightlessSync.MareConfiguration;
|
||||
using LightlessSync.LightlessConfiguration;
|
||||
using LightlessSync.PlayerData.Handlers;
|
||||
using LightlessSync.Services;
|
||||
using LightlessSync.Services.Mediator;
|
||||
@@ -14,15 +14,15 @@ namespace LightlessSync.UI;
|
||||
|
||||
public class DownloadUi : WindowMediatorSubscriberBase
|
||||
{
|
||||
private readonly MareConfigService _configService;
|
||||
private readonly LightlessConfigService _configService;
|
||||
private readonly ConcurrentDictionary<GameObjectHandler, Dictionary<string, FileDownloadStatus>> _currentDownloads = new();
|
||||
private readonly DalamudUtilService _dalamudUtilService;
|
||||
private readonly FileUploadManager _fileTransferManager;
|
||||
private readonly UiSharedService _uiShared;
|
||||
private readonly ConcurrentDictionary<GameObjectHandler, bool> _uploadingPlayers = new();
|
||||
|
||||
public DownloadUi(ILogger<DownloadUi> logger, DalamudUtilService dalamudUtilService, MareConfigService configService,
|
||||
FileUploadManager fileTransferManager, MareMediator mediator, UiSharedService uiShared, PerformanceCollectorService performanceCollectorService)
|
||||
public DownloadUi(ILogger<DownloadUi> logger, DalamudUtilService dalamudUtilService, LightlessConfigService configService,
|
||||
FileUploadManager fileTransferManager, LightlessMediator mediator, UiSharedService uiShared, PerformanceCollectorService performanceCollectorService)
|
||||
: base(logger, mediator, "Lightless Sync Downloads", performanceCollectorService)
|
||||
{
|
||||
_dalamudUtilService = dalamudUtilService;
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
using LightlessSync.API.Dto.Group;
|
||||
using LightlessSync.MareConfiguration;
|
||||
using LightlessSync.LightlessConfiguration;
|
||||
using LightlessSync.PlayerData.Pairs;
|
||||
using LightlessSync.Services;
|
||||
using LightlessSync.Services.Mediator;
|
||||
@@ -16,7 +16,7 @@ public class DrawEntityFactory
|
||||
{
|
||||
private readonly ILogger<DrawEntityFactory> _logger;
|
||||
private readonly ApiController _apiController;
|
||||
private readonly MareMediator _mediator;
|
||||
private readonly LightlessMediator _mediator;
|
||||
private readonly SelectPairForTagUi _selectPairForTagUi;
|
||||
private readonly ServerConfigurationManager _serverConfigurationManager;
|
||||
private readonly UiSharedService _uiSharedService;
|
||||
@@ -27,7 +27,7 @@ public class DrawEntityFactory
|
||||
private readonly IdDisplayHandler _uidDisplayHandler;
|
||||
|
||||
public DrawEntityFactory(ILogger<DrawEntityFactory> logger, ApiController apiController, IdDisplayHandler uidDisplayHandler,
|
||||
SelectTagForPairUi selectTagForPairUi, MareMediator mediator,
|
||||
SelectTagForPairUi selectTagForPairUi, LightlessMediator mediator,
|
||||
TagHandler tagHandler, SelectPairForTagUi selectPairForTagUi,
|
||||
ServerConfigurationManager serverConfigurationManager, UiSharedService uiSharedService,
|
||||
PlayerPerformanceConfigService playerPerformanceConfigService, CharaDataManager charaDataManager)
|
||||
|
||||
@@ -2,8 +2,8 @@
|
||||
using Dalamud.Game.Text.SeStringHandling;
|
||||
using Dalamud.Game.Text.SeStringHandling.Payloads;
|
||||
using Dalamud.Plugin.Services;
|
||||
using LightlessSync.MareConfiguration;
|
||||
using LightlessSync.MareConfiguration.Configurations;
|
||||
using LightlessSync.LightlessConfiguration;
|
||||
using LightlessSync.LightlessConfiguration.Configurations;
|
||||
using LightlessSync.PlayerData.Pairs;
|
||||
using LightlessSync.Services.Mediator;
|
||||
using LightlessSync.WebAPI;
|
||||
@@ -17,24 +17,24 @@ public sealed class DtrEntry : IDisposable, IHostedService
|
||||
{
|
||||
private readonly ApiController _apiController;
|
||||
private readonly CancellationTokenSource _cancellationTokenSource = new();
|
||||
private readonly ConfigurationServiceBase<MareConfig> _configService;
|
||||
private readonly ConfigurationServiceBase<LightlessConfig> _configService;
|
||||
private readonly IDtrBar _dtrBar;
|
||||
private readonly Lazy<IDtrBarEntry> _entry;
|
||||
private readonly ILogger<DtrEntry> _logger;
|
||||
private readonly MareMediator _mareMediator;
|
||||
private readonly LightlessMediator _lightlessMediator;
|
||||
private readonly PairManager _pairManager;
|
||||
private Task? _runTask;
|
||||
private string? _text;
|
||||
private string? _tooltip;
|
||||
private Colors _colors;
|
||||
|
||||
public DtrEntry(ILogger<DtrEntry> logger, IDtrBar dtrBar, ConfigurationServiceBase<MareConfig> configService, MareMediator mareMediator, PairManager pairManager, ApiController apiController)
|
||||
public DtrEntry(ILogger<DtrEntry> logger, IDtrBar dtrBar, ConfigurationServiceBase<LightlessConfig> configService, LightlessMediator lightlessMediator, PairManager pairManager, ApiController apiController)
|
||||
{
|
||||
_logger = logger;
|
||||
_dtrBar = dtrBar;
|
||||
_entry = new(CreateEntry);
|
||||
_configService = configService;
|
||||
_mareMediator = mareMediator;
|
||||
_lightlessMediator = lightlessMediator;
|
||||
_pairManager = pairManager;
|
||||
_apiController = apiController;
|
||||
}
|
||||
@@ -89,7 +89,7 @@ public sealed class DtrEntry : IDisposable, IHostedService
|
||||
{
|
||||
_logger.LogTrace("Creating new DtrBar entry");
|
||||
var entry = _dtrBar.Get("Lightless Sync");
|
||||
entry.OnClick = _ => _mareMediator.Publish(new UiToggleMessage(typeof(CompactUi)));
|
||||
entry.OnClick = _ => _lightlessMediator.Publish(new UiToggleMessage(typeof(CompactUi)));
|
||||
|
||||
return entry;
|
||||
}
|
||||
|
||||
@@ -19,7 +19,7 @@ public class EditProfileUi : WindowMediatorSubscriberBase
|
||||
{
|
||||
private readonly ApiController _apiController;
|
||||
private readonly FileDialogManager _fileDialogManager;
|
||||
private readonly MareProfileManager _mareProfileManager;
|
||||
private readonly LightlessProfileManager _lightlessProfileManager;
|
||||
private readonly UiSharedService _uiSharedService;
|
||||
private bool _adjustedForScollBarsLocalProfile = false;
|
||||
private bool _adjustedForScollBarsOnlineProfile = false;
|
||||
@@ -30,9 +30,9 @@ public class EditProfileUi : WindowMediatorSubscriberBase
|
||||
private bool _showFileDialogError = false;
|
||||
private bool _wasOpen;
|
||||
|
||||
public EditProfileUi(ILogger<EditProfileUi> logger, MareMediator mediator,
|
||||
public EditProfileUi(ILogger<EditProfileUi> logger, LightlessMediator mediator,
|
||||
ApiController apiController, UiSharedService uiSharedService, FileDialogManager fileDialogManager,
|
||||
MareProfileManager mareProfileManager, PerformanceCollectorService performanceCollectorService)
|
||||
LightlessProfileManager lightlessProfileManager, PerformanceCollectorService performanceCollectorService)
|
||||
: base(logger, mediator, "Lightless Sync Edit Profile###LightlessSyncEditProfileUI", performanceCollectorService)
|
||||
{
|
||||
IsOpen = false;
|
||||
@@ -44,7 +44,7 @@ public class EditProfileUi : WindowMediatorSubscriberBase
|
||||
_apiController = apiController;
|
||||
_uiSharedService = uiSharedService;
|
||||
_fileDialogManager = fileDialogManager;
|
||||
_mareProfileManager = mareProfileManager;
|
||||
_lightlessProfileManager = lightlessProfileManager;
|
||||
|
||||
Mediator.Subscribe<GposeStartMessage>(this, (_) => { _wasOpen = IsOpen; IsOpen = false; });
|
||||
Mediator.Subscribe<GposeEndMessage>(this, (_) => IsOpen = _wasOpen);
|
||||
@@ -63,7 +63,7 @@ public class EditProfileUi : WindowMediatorSubscriberBase
|
||||
{
|
||||
_uiSharedService.BigText("Current Profile (as saved on server)");
|
||||
|
||||
var profile = _mareProfileManager.GetMareProfile(new UserData(_apiController.UID));
|
||||
var profile = _lightlessProfileManager.GetLightlessProfile(new UserData(_apiController.UID));
|
||||
|
||||
if (profile.IsFlagged)
|
||||
{
|
||||
@@ -126,7 +126,7 @@ public class EditProfileUi : WindowMediatorSubscriberBase
|
||||
$"- Other users have the possibility to report your profile for breaking the rules.{Environment.NewLine}" +
|
||||
$"- !!! AVOID: anything as profile image that can be considered highly illegal or obscene (bestiality, anything that could be considered a sexual act with a minor (that includes Lalafells), etc.){Environment.NewLine}" +
|
||||
$"- !!! AVOID: slurs of any kind in the description that can be considered highly offensive{Environment.NewLine}" +
|
||||
$"- In case of valid reports from other users this can lead to disabling your profile forever or terminating your Mare account indefinitely.{Environment.NewLine}" +
|
||||
$"- In case of valid reports from other users this can lead to disabling your profile forever or terminating your Lightless account indefinitely.{Environment.NewLine}" +
|
||||
$"- Judgement of your profile validity from reports through staff is not up to debate and the decisions to disable your profile/account permanent.{Environment.NewLine}" +
|
||||
$"- If your profile picture or profile description could be considered NSFW, enable the toggle below.");
|
||||
ImGui.Separator();
|
||||
|
||||
@@ -37,7 +37,7 @@ internal class EventViewerUI : WindowMediatorSubscriberBase
|
||||
}
|
||||
}
|
||||
|
||||
public EventViewerUI(ILogger<EventViewerUI> logger, MareMediator mediator,
|
||||
public EventViewerUI(ILogger<EventViewerUI> logger, LightlessMediator mediator,
|
||||
EventAggregator eventAggregator, UiSharedService uiSharedService, PerformanceCollectorService performanceCollectorService)
|
||||
: base(logger, mediator, "Event Viewer", performanceCollectorService)
|
||||
{
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
using Dalamud.Interface;
|
||||
using Dalamud.Interface.Utility.Raii;
|
||||
using LightlessSync.API.Dto.Group;
|
||||
using LightlessSync.MareConfiguration;
|
||||
using LightlessSync.LightlessConfiguration;
|
||||
using LightlessSync.PlayerData.Pairs;
|
||||
using LightlessSync.Services.Mediator;
|
||||
using LightlessSync.Services.ServerConfiguration;
|
||||
@@ -11,8 +11,8 @@ namespace LightlessSync.UI.Handlers;
|
||||
|
||||
public class IdDisplayHandler
|
||||
{
|
||||
private readonly MareConfigService _mareConfigService;
|
||||
private readonly MareMediator _mediator;
|
||||
private readonly LightlessConfigService _lightlessConfigService;
|
||||
private readonly LightlessMediator _mediator;
|
||||
private readonly ServerConfigurationManager _serverManager;
|
||||
private readonly Dictionary<string, bool> _showIdForEntry = new(StringComparer.Ordinal);
|
||||
private string _editComment = string.Empty;
|
||||
@@ -22,11 +22,11 @@ public class IdDisplayHandler
|
||||
private bool _popupShown = false;
|
||||
private DateTime? _popupTime;
|
||||
|
||||
public IdDisplayHandler(MareMediator mediator, ServerConfigurationManager serverManager, MareConfigService mareConfigService)
|
||||
public IdDisplayHandler(LightlessMediator mediator, ServerConfigurationManager serverManager, LightlessConfigService lightlessConfigService)
|
||||
{
|
||||
_mediator = mediator;
|
||||
_serverManager = serverManager;
|
||||
_mareConfigService = mareConfigService;
|
||||
_lightlessConfigService = lightlessConfigService;
|
||||
}
|
||||
|
||||
public void DrawGroupText(string id, GroupFullInfoDto group, float textPosX, Func<float> editBoxWidth)
|
||||
@@ -99,12 +99,12 @@ public class IdDisplayHandler
|
||||
{
|
||||
if (!string.Equals(_lastMouseOverUid, id))
|
||||
{
|
||||
_popupTime = DateTime.UtcNow.AddSeconds(_mareConfigService.Current.ProfileDelay);
|
||||
_popupTime = DateTime.UtcNow.AddSeconds(_lightlessConfigService.Current.ProfileDelay);
|
||||
}
|
||||
|
||||
_lastMouseOverUid = id;
|
||||
|
||||
if (_popupTime > DateTime.UtcNow || !_mareConfigService.Current.ProfilesShow)
|
||||
if (_popupTime > DateTime.UtcNow || !_lightlessConfigService.Current.ProfilesShow)
|
||||
{
|
||||
ImGui.SetTooltip("Left click to switch between UID display and nick" + Environment.NewLine
|
||||
+ "Right click to change nick for " + pair.UserData.AliasOrUID + Environment.NewLine
|
||||
@@ -222,11 +222,11 @@ public class IdDisplayHandler
|
||||
playerText = pair.UserData.AliasOrUID;
|
||||
}
|
||||
|
||||
if (_mareConfigService.Current.ShowCharacterNameInsteadOfNotesForVisible && pair.IsVisible && !showUidInsteadOfName)
|
||||
if (_lightlessConfigService.Current.ShowCharacterNameInsteadOfNotesForVisible && pair.IsVisible && !showUidInsteadOfName)
|
||||
{
|
||||
playerText = pair.PlayerName;
|
||||
textIsUid = false;
|
||||
if (_mareConfigService.Current.PreferNotesOverNamesForVisible)
|
||||
if (_lightlessConfigService.Current.PreferNotesOverNamesForVisible)
|
||||
{
|
||||
var note = pair.GetNote();
|
||||
if (note != null)
|
||||
|
||||
@@ -4,12 +4,12 @@ namespace LightlessSync.UI.Handlers;
|
||||
|
||||
public class TagHandler
|
||||
{
|
||||
public const string CustomAllTag = "Mare_All";
|
||||
public const string CustomOfflineTag = "Mare_Offline";
|
||||
public const string CustomOfflineSyncshellTag = "Mare_OfflineSyncshell";
|
||||
public const string CustomOnlineTag = "Mare_Online";
|
||||
public const string CustomUnpairedTag = "Mare_Unpaired";
|
||||
public const string CustomVisibleTag = "Mare_Visible";
|
||||
public const string CustomAllTag = "Lightless_All";
|
||||
public const string CustomOfflineTag = "Lightless_Offline";
|
||||
public const string CustomOfflineSyncshellTag = "Lightless_OfflineSyncshell";
|
||||
public const string CustomOnlineTag = "Lightless_Online";
|
||||
public const string CustomUnpairedTag = "Lightless_Unpaired";
|
||||
public const string CustomVisibleTag = "Lightless_Visible";
|
||||
private readonly ServerConfigurationManager _serverConfigurationManager;
|
||||
|
||||
public TagHandler(ServerConfigurationManager serverConfigurationManager)
|
||||
|
||||
@@ -5,8 +5,8 @@ using Dalamud.Interface.Utility.Raii;
|
||||
using Dalamud.Utility;
|
||||
using LightlessSync.FileCache;
|
||||
using LightlessSync.Localization;
|
||||
using LightlessSync.MareConfiguration;
|
||||
using LightlessSync.MareConfiguration.Models;
|
||||
using LightlessSync.LightlessConfiguration;
|
||||
using LightlessSync.LightlessConfiguration.Models;
|
||||
using LightlessSync.Services;
|
||||
using LightlessSync.Services.Mediator;
|
||||
using LightlessSync.Services.ServerConfiguration;
|
||||
@@ -18,7 +18,7 @@ namespace LightlessSync.UI;
|
||||
|
||||
public partial class IntroUi : WindowMediatorSubscriberBase
|
||||
{
|
||||
private readonly MareConfigService _configService;
|
||||
private readonly LightlessConfigService _configService;
|
||||
private readonly CacheMonitor _cacheMonitor;
|
||||
private readonly Dictionary<string, string> _languages = new(StringComparer.Ordinal) { { "English", "en" }, { "Deutsch", "de" }, { "Français", "fr" } };
|
||||
private readonly ServerConfigurationManager _serverConfigurationManager;
|
||||
@@ -33,9 +33,9 @@ public partial class IntroUi : WindowMediatorSubscriberBase
|
||||
private string[]? _tosParagraphs;
|
||||
private bool _useLegacyLogin = false;
|
||||
|
||||
public IntroUi(ILogger<IntroUi> logger, UiSharedService uiShared, MareConfigService configService,
|
||||
CacheMonitor fileCacheManager, ServerConfigurationManager serverConfigurationManager, MareMediator mareMediator,
|
||||
PerformanceCollectorService performanceCollectorService, DalamudUtilService dalamudUtilService) : base(logger, mareMediator, "Lightless Sync Setup", performanceCollectorService)
|
||||
public IntroUi(ILogger<IntroUi> logger, UiSharedService uiShared, LightlessConfigService configService,
|
||||
CacheMonitor fileCacheManager, ServerConfigurationManager serverConfigurationManager, LightlessMediator lightlessMediator,
|
||||
PerformanceCollectorService performanceCollectorService, DalamudUtilService dalamudUtilService) : base(logger, lightlessMediator, "Lightless Sync Setup", performanceCollectorService)
|
||||
{
|
||||
_uiShared = uiShared;
|
||||
_configService = configService;
|
||||
@@ -196,8 +196,8 @@ public partial class IntroUi : WindowMediatorSubscriberBase
|
||||
_configService.Current.UseCompactor = useFileCompactor;
|
||||
_configService.Save();
|
||||
}
|
||||
UiSharedService.ColorTextWrapped("The File Compactor can save a tremendeous amount of space on the hard disk for downloads through Mare. It will incur a minor CPU penalty on download but can speed up " +
|
||||
"loading of other characters. It is recommended to keep it enabled. You can change this setting later anytime in the Mare settings.", ImGuiColors.DalamudYellow);
|
||||
UiSharedService.ColorTextWrapped("The File Compactor can save a tremendeous amount of space on the hard disk for downloads through Lightless. It will incur a minor CPU penalty on download but can speed up " +
|
||||
"loading of other characters. It is recommended to keep it enabled. You can change this setting later anytime in the Lightless settings.", ImGuiColors.DalamudYellow);
|
||||
}
|
||||
}
|
||||
else if (!_uiShared.ApiController.ServerAlive)
|
||||
@@ -207,7 +207,7 @@ public partial class IntroUi : WindowMediatorSubscriberBase
|
||||
ImGui.Separator();
|
||||
UiSharedService.TextWrapped("To be able to use Lightless Sync you will have to register an account.");
|
||||
UiSharedService.TextWrapped("For the official Lightless Sync Servers the account creation will be handled on the official Lightless Sync Discord. Due to security risks for the server, there is no way to handle this sensibly otherwise.");
|
||||
UiSharedService.TextWrapped("If you want to register at the main server \"" + WebAPI.ApiController.MainServer + "\" join the Discord and follow the instructions as described in #mare-service.");
|
||||
UiSharedService.TextWrapped("If you want to register at the main server \"" + WebAPI.ApiController.MainServer + "\" join the Discord and follow the instructions as described in #lightless-service.");
|
||||
|
||||
if (ImGui.Button("Join the Light Public Syncshells Discord"))
|
||||
{
|
||||
|
||||
@@ -24,7 +24,7 @@ internal class JoinSyncshellUI : WindowMediatorSubscriberBase
|
||||
private string _previousPassword = string.Empty;
|
||||
private string _syncshellPassword = string.Empty;
|
||||
|
||||
public JoinSyncshellUI(ILogger<JoinSyncshellUI> logger, MareMediator mediator,
|
||||
public JoinSyncshellUI(ILogger<JoinSyncshellUI> logger, LightlessMediator mediator,
|
||||
UiSharedService uiSharedService, ApiController apiController, PerformanceCollectorService performanceCollectorService)
|
||||
: base(logger, mediator, "Join existing Syncshell###LightlessSyncJoinSyncshell", performanceCollectorService)
|
||||
{
|
||||
|
||||
@@ -20,7 +20,7 @@ public class PermissionWindowUI : WindowMediatorSubscriberBase
|
||||
private readonly ApiController _apiController;
|
||||
private UserPermissions _ownPermissions;
|
||||
|
||||
public PermissionWindowUI(ILogger<PermissionWindowUI> logger, Pair pair, MareMediator mediator, UiSharedService uiSharedService,
|
||||
public PermissionWindowUI(ILogger<PermissionWindowUI> logger, Pair pair, LightlessMediator mediator, UiSharedService uiSharedService,
|
||||
ApiController apiController, PerformanceCollectorService performanceCollectorService)
|
||||
: base(logger, mediator, "Permissions for " + pair.UserData.AliasOrUID + "###LightlessSyncPermissions" + pair.UserData.UID, performanceCollectorService)
|
||||
{
|
||||
@@ -175,7 +175,7 @@ public class PermissionWindowUI : WindowMediatorSubscriberBase
|
||||
new(StringComparer.Ordinal)
|
||||
));
|
||||
}
|
||||
UiSharedService.AttachToolTip("This will set all permissions to your defined default permissions in the Mare Settings");
|
||||
UiSharedService.AttachToolTip("This will set all permissions to your defined default permissions in the Lightless Settings");
|
||||
|
||||
var ySize = ImGui.GetCursorPosY() + style.FramePadding.Y * ImGuiHelpers.GlobalScale + style.FrameBorderSize;
|
||||
ImGui.SetWindowSize(new(400, ySize));
|
||||
|
||||
@@ -3,7 +3,7 @@ using Dalamud.Interface.Colors;
|
||||
using Dalamud.Interface.Textures.TextureWraps;
|
||||
using Dalamud.Interface.Utility;
|
||||
using LightlessSync.API.Data.Extensions;
|
||||
using LightlessSync.MareConfiguration;
|
||||
using LightlessSync.LightlessConfiguration;
|
||||
using LightlessSync.PlayerData.Pairs;
|
||||
using LightlessSync.Services;
|
||||
using LightlessSync.Services.Mediator;
|
||||
@@ -15,7 +15,7 @@ namespace LightlessSync.UI;
|
||||
|
||||
public class PopoutProfileUi : WindowMediatorSubscriberBase
|
||||
{
|
||||
private readonly MareProfileManager _mareProfileManager;
|
||||
private readonly LightlessProfileManager _lightlessProfileManager;
|
||||
private readonly PairManager _pairManager;
|
||||
private readonly ServerConfigurationManager _serverManager;
|
||||
private readonly UiSharedService _uiSharedService;
|
||||
@@ -27,13 +27,13 @@ public class PopoutProfileUi : WindowMediatorSubscriberBase
|
||||
private IDalamudTextureWrap? _supporterTextureWrap;
|
||||
private IDalamudTextureWrap? _textureWrap;
|
||||
|
||||
public PopoutProfileUi(ILogger<PopoutProfileUi> logger, MareMediator mediator, UiSharedService uiBuilder,
|
||||
ServerConfigurationManager serverManager, MareConfigService mareConfigService,
|
||||
MareProfileManager mareProfileManager, PairManager pairManager, PerformanceCollectorService performanceCollectorService) : base(logger, mediator, "###LightlessSyncPopoutProfileUI", performanceCollectorService)
|
||||
public PopoutProfileUi(ILogger<PopoutProfileUi> logger, LightlessMediator mediator, UiSharedService uiBuilder,
|
||||
ServerConfigurationManager serverManager, LightlessConfigService lightlessConfigService,
|
||||
LightlessProfileManager lightlessProfileManager, PairManager pairManager, PerformanceCollectorService performanceCollectorService) : base(logger, mediator, "###LightlessSyncPopoutProfileUI", performanceCollectorService)
|
||||
{
|
||||
_uiSharedService = uiBuilder;
|
||||
_serverManager = serverManager;
|
||||
_mareProfileManager = mareProfileManager;
|
||||
_lightlessProfileManager = lightlessProfileManager;
|
||||
_pairManager = pairManager;
|
||||
Flags = ImGuiWindowFlags.NoDecoration;
|
||||
|
||||
@@ -59,7 +59,7 @@ public class PopoutProfileUi : WindowMediatorSubscriberBase
|
||||
_lastMainSize = msg.Size;
|
||||
}
|
||||
var mainPos = msg.Position == Vector2.Zero ? _lastMainPos : msg.Position;
|
||||
if (mareConfigService.Current.ProfilePopoutRight)
|
||||
if (lightlessConfigService.Current.ProfilePopoutRight)
|
||||
{
|
||||
Position = new(mainPos.X + _lastMainSize.X * ImGuiHelpers.GlobalScale, mainPos.Y);
|
||||
}
|
||||
@@ -85,22 +85,22 @@ public class PopoutProfileUi : WindowMediatorSubscriberBase
|
||||
{
|
||||
var spacing = ImGui.GetStyle().ItemSpacing;
|
||||
|
||||
var mareProfile = _mareProfileManager.GetMareProfile(_pair.UserData);
|
||||
var lightlessProfile = _lightlessProfileManager.GetLightlessProfile(_pair.UserData);
|
||||
|
||||
if (_textureWrap == null || !mareProfile.ImageData.Value.SequenceEqual(_lastProfilePicture))
|
||||
if (_textureWrap == null || !lightlessProfile.ImageData.Value.SequenceEqual(_lastProfilePicture))
|
||||
{
|
||||
_textureWrap?.Dispose();
|
||||
_lastProfilePicture = mareProfile.ImageData.Value;
|
||||
_lastProfilePicture = lightlessProfile.ImageData.Value;
|
||||
_textureWrap = _uiSharedService.LoadImage(_lastProfilePicture);
|
||||
}
|
||||
|
||||
if (_supporterTextureWrap == null || !mareProfile.SupporterImageData.Value.SequenceEqual(_lastSupporterPicture))
|
||||
if (_supporterTextureWrap == null || !lightlessProfile.SupporterImageData.Value.SequenceEqual(_lastSupporterPicture))
|
||||
{
|
||||
_supporterTextureWrap?.Dispose();
|
||||
_supporterTextureWrap = null;
|
||||
if (!string.IsNullOrEmpty(mareProfile.Base64SupporterPicture))
|
||||
if (!string.IsNullOrEmpty(lightlessProfile.Base64SupporterPicture))
|
||||
{
|
||||
_lastSupporterPicture = mareProfile.SupporterImageData.Value;
|
||||
_lastSupporterPicture = lightlessProfile.SupporterImageData.Value;
|
||||
_supporterTextureWrap = _uiSharedService.LoadImage(_lastSupporterPicture);
|
||||
}
|
||||
}
|
||||
@@ -158,7 +158,7 @@ public class PopoutProfileUi : WindowMediatorSubscriberBase
|
||||
ImGui.Separator();
|
||||
var font = _uiSharedService.GameFont.Push();
|
||||
var remaining = ImGui.GetWindowContentRegionMax().Y - ImGui.GetCursorPosY();
|
||||
var descText = mareProfile.Description;
|
||||
var descText = lightlessProfile.Description;
|
||||
var textSize = ImGui.CalcTextSize(descText, wrapWidth: 256f * ImGuiHelpers.GlobalScale);
|
||||
bool trimmed = textSize.Y > remaining;
|
||||
while (textSize.Y > remaining && descText.Contains(' '))
|
||||
@@ -166,7 +166,7 @@ public class PopoutProfileUi : WindowMediatorSubscriberBase
|
||||
descText = descText[..descText.LastIndexOf(' ')].TrimEnd();
|
||||
textSize = ImGui.CalcTextSize(descText + $"...{Environment.NewLine}[Open Full Profile for complete description]", wrapWidth: 256f * ImGuiHelpers.GlobalScale);
|
||||
}
|
||||
UiSharedService.TextWrapped(trimmed ? descText + $"...{Environment.NewLine}[Open Full Profile for complete description]" : mareProfile.Description);
|
||||
UiSharedService.TextWrapped(trimmed ? descText + $"...{Environment.NewLine}[Open Full Profile for complete description]" : lightlessProfile.Description);
|
||||
font.Dispose();
|
||||
|
||||
var padding = ImGui.GetStyle().WindowPadding.X / 2;
|
||||
|
||||
@@ -9,8 +9,8 @@ using LightlessSync.API.Data.Comparer;
|
||||
using LightlessSync.API.Routes;
|
||||
using LightlessSync.FileCache;
|
||||
using LightlessSync.Interop.Ipc;
|
||||
using LightlessSync.MareConfiguration;
|
||||
using LightlessSync.MareConfiguration.Models;
|
||||
using LightlessSync.LightlessConfiguration;
|
||||
using LightlessSync.LightlessConfiguration.Models;
|
||||
using LightlessSync.PlayerData.Handlers;
|
||||
using LightlessSync.PlayerData.Pairs;
|
||||
using LightlessSync.Services;
|
||||
@@ -38,7 +38,7 @@ public class SettingsUi : WindowMediatorSubscriberBase
|
||||
{
|
||||
private readonly ApiController _apiController;
|
||||
private readonly CacheMonitor _cacheMonitor;
|
||||
private readonly MareConfigService _configService;
|
||||
private readonly LightlessConfigService _configService;
|
||||
private readonly ConcurrentDictionary<GameObjectHandler, Dictionary<string, FileDownloadStatus>> _currentDownloads = new();
|
||||
private readonly DalamudUtilService _dalamudUtilService;
|
||||
private readonly HttpClient _httpClient;
|
||||
@@ -67,11 +67,11 @@ public class SettingsUi : WindowMediatorSubscriberBase
|
||||
private bool _wasOpen = false;
|
||||
|
||||
public SettingsUi(ILogger<SettingsUi> logger,
|
||||
UiSharedService uiShared, MareConfigService configService,
|
||||
UiSharedService uiShared, LightlessConfigService configService,
|
||||
PairManager pairManager,
|
||||
ServerConfigurationManager serverConfigurationManager,
|
||||
PlayerPerformanceConfigService playerPerformanceConfigService,
|
||||
MareMediator mediator, PerformanceCollectorService performanceCollector,
|
||||
LightlessMediator mediator, PerformanceCollectorService performanceCollector,
|
||||
FileUploadManager fileTransferManager,
|
||||
FileTransferOrchestrator fileTransferOrchestrator,
|
||||
FileCacheManager fileCacheManager,
|
||||
@@ -178,7 +178,7 @@ public class SettingsUi : WindowMediatorSubscriberBase
|
||||
_lastTab = "BlockedTransfers";
|
||||
UiSharedService.ColorTextWrapped("Files that you attempted to upload or download that were forbidden to be transferred by their creators will appear here. " +
|
||||
"If you see file paths from your drive here, then those files were not allowed to be uploaded. If you see hashes, those files were not allowed to be downloaded. " +
|
||||
"Ask your paired friend to send you the mod in question through other means, acquire the mod yourself or pester the mod creator to allow it to be sent over Mare.",
|
||||
"Ask your paired friend to send you the mod in question through other means, acquire the mod yourself or pester the mod creator to allow it to be sent over Lightless.",
|
||||
ImGuiColors.DalamudGrey);
|
||||
|
||||
if (ImGui.BeginTable("TransfersTable", 2, ImGuiTableFlags.SizingStretchProp))
|
||||
@@ -634,7 +634,7 @@ public class SettingsUi : WindowMediatorSubscriberBase
|
||||
_uiShared.IconText(FontAwesomeIcon.UserCog);
|
||||
ImGui.SameLine();
|
||||
UiSharedService.TextWrapped(") -> \"Character Data Hub\".");
|
||||
if (_uiShared.IconTextButton(FontAwesomeIcon.Running, "Open Mare Character Data Hub"))
|
||||
if (_uiShared.IconTextButton(FontAwesomeIcon.Running, "Open Lightless Character Data Hub"))
|
||||
{
|
||||
Mediator.Publish(new UiToggleMessage(typeof(CharaDataHubUi)));
|
||||
}
|
||||
@@ -644,7 +644,7 @@ public class SettingsUi : WindowMediatorSubscriberBase
|
||||
|
||||
_uiShared.BigText("Storage");
|
||||
|
||||
UiSharedService.TextWrapped("Mare stores downloaded files from paired people permanently. This is to improve loading performance and requiring less downloads. " +
|
||||
UiSharedService.TextWrapped("Lightless stores downloaded files from paired people permanently. This is to improve loading performance and requiring less downloads. " +
|
||||
"The storage governs itself by clearing data beyond the set storage size. Please set the storage size accordingly. It is not necessary to manually clear the storage.");
|
||||
|
||||
_uiShared.DrawFileScanState();
|
||||
@@ -661,25 +661,25 @@ public class SettingsUi : WindowMediatorSubscriberBase
|
||||
}
|
||||
|
||||
ImGui.AlignTextToFramePadding();
|
||||
ImGui.TextUnformatted("Monitoring Mare Storage Folder: " + (_cacheMonitor.MareWatcher?.Path ?? "Not monitoring"));
|
||||
if (string.IsNullOrEmpty(_cacheMonitor.MareWatcher?.Path))
|
||||
ImGui.TextUnformatted("Monitoring Lightless Storage Folder: " + (_cacheMonitor.LightlessWatcher?.Path ?? "Not monitoring"));
|
||||
if (string.IsNullOrEmpty(_cacheMonitor.LightlessWatcher?.Path))
|
||||
{
|
||||
ImGui.SameLine();
|
||||
using var id = ImRaii.PushId("mareMonitor");
|
||||
using var id = ImRaii.PushId("lightlessMonitor");
|
||||
if (_uiShared.IconTextButton(FontAwesomeIcon.ArrowsToCircle, "Try to reinitialize Monitor"))
|
||||
{
|
||||
_cacheMonitor.StartMareWatcher(_configService.Current.CacheFolder);
|
||||
_cacheMonitor.StartLightlessWatcher(_configService.Current.CacheFolder);
|
||||
}
|
||||
}
|
||||
if (_cacheMonitor.MareWatcher == null || _cacheMonitor.PenumbraWatcher == null)
|
||||
if (_cacheMonitor.LightlessWatcher == null || _cacheMonitor.PenumbraWatcher == null)
|
||||
{
|
||||
if (_uiShared.IconTextButton(FontAwesomeIcon.Play, "Resume Monitoring"))
|
||||
{
|
||||
_cacheMonitor.StartMareWatcher(_configService.Current.CacheFolder);
|
||||
_cacheMonitor.StartLightlessWatcher(_configService.Current.CacheFolder);
|
||||
_cacheMonitor.StartPenumbraWatcher(_ipcManager.Penumbra.ModDirectory);
|
||||
_cacheMonitor.InvokeScan();
|
||||
}
|
||||
UiSharedService.AttachToolTip("Attempts to resume monitoring for both Penumbra and Mare Storage. "
|
||||
UiSharedService.AttachToolTip("Attempts to resume monitoring for both Penumbra and Lightless Storage. "
|
||||
+ "Resuming the monitoring will also force a full scan to run." + Environment.NewLine
|
||||
+ "If the button remains present after clicking it, consult /xllog for errors");
|
||||
}
|
||||
@@ -692,8 +692,8 @@ public class SettingsUi : WindowMediatorSubscriberBase
|
||||
_cacheMonitor.StopMonitoring();
|
||||
}
|
||||
}
|
||||
UiSharedService.AttachToolTip("Stops the monitoring for both Penumbra and Mare Storage. "
|
||||
+ "Do not stop the monitoring, unless you plan to move the Penumbra and Mare Storage folders, to ensure correct functionality of Mare." + Environment.NewLine
|
||||
UiSharedService.AttachToolTip("Stops the monitoring for both Penumbra and Lightless Storage. "
|
||||
+ "Do not stop the monitoring, unless you plan to move the Penumbra and Lightless Storage folders, to ensure correct functionality of Lightless." + Environment.NewLine
|
||||
+ "If you stop the monitoring to move folders around, resume it after you are finished moving the files."
|
||||
+ UiSharedService.TooltipSeparator + "Hold CTRL to enable this button");
|
||||
}
|
||||
@@ -709,7 +709,7 @@ public class SettingsUi : WindowMediatorSubscriberBase
|
||||
bool isLinux = _dalamudUtilService.IsWine;
|
||||
if (!useFileCompactor && !isLinux)
|
||||
{
|
||||
UiSharedService.ColorTextWrapped("Hint: To free up space when using Mare consider enabling the File Compactor", ImGuiColors.DalamudYellow);
|
||||
UiSharedService.ColorTextWrapped("Hint: To free up space when using Lightless consider enabling the File Compactor", ImGuiColors.DalamudYellow);
|
||||
}
|
||||
if (isLinux || !_cacheMonitor.StorageisNTFS) ImGui.BeginDisabled();
|
||||
if (ImGui.Checkbox("Use file compactor", ref useFileCompactor))
|
||||
@@ -730,7 +730,7 @@ public class SettingsUi : WindowMediatorSubscriberBase
|
||||
_cacheMonitor.RecalculateFileCacheSize(CancellationToken.None);
|
||||
});
|
||||
}
|
||||
UiSharedService.AttachToolTip("This will run compression on all files in your current Mare Storage." + Environment.NewLine
|
||||
UiSharedService.AttachToolTip("This will run compression on all files in your current Lightless Storage." + Environment.NewLine
|
||||
+ "You do not need to run this manually if you keep the file compactor enabled.");
|
||||
ImGui.SameLine();
|
||||
if (_uiShared.IconTextButton(FontAwesomeIcon.File, "Decompact all files in storage"))
|
||||
@@ -741,7 +741,7 @@ public class SettingsUi : WindowMediatorSubscriberBase
|
||||
_cacheMonitor.RecalculateFileCacheSize(CancellationToken.None);
|
||||
});
|
||||
}
|
||||
UiSharedService.AttachToolTip("This will run decompression on all files in your current Mare Storage.");
|
||||
UiSharedService.AttachToolTip("This will run decompression on all files in your current Lightless Storage.");
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -755,7 +755,7 @@ public class SettingsUi : WindowMediatorSubscriberBase
|
||||
ImGuiHelpers.ScaledDummy(new Vector2(10, 10));
|
||||
|
||||
ImGui.Separator();
|
||||
UiSharedService.TextWrapped("File Storage validation can make sure that all files in your local Mare Storage are valid. " +
|
||||
UiSharedService.TextWrapped("File Storage validation can make sure that all files in your local Lightless Storage are valid. " +
|
||||
"Run the validation before you clear the Storage for no reason. " + Environment.NewLine +
|
||||
"This operation, depending on how many files you have in your storage, can take a while and will be CPU and drive intensive.");
|
||||
using (ImRaii.Disabled(_validationTask != null && !_validationTask.IsCompleted))
|
||||
@@ -818,7 +818,7 @@ public class SettingsUi : WindowMediatorSubscriberBase
|
||||
}
|
||||
UiSharedService.AttachToolTip("You normally do not need to do this. THIS IS NOT SOMETHING YOU SHOULD BE DOING TO TRY TO FIX SYNC ISSUES." + Environment.NewLine
|
||||
+ "This will solely remove all downloaded data from all players and will require you to re-download everything again." + Environment.NewLine
|
||||
+ "Mares storage is self-clearing and will not surpass the limit you have set it to." + Environment.NewLine
|
||||
+ "Lightless storage is self-clearing and will not surpass the limit you have set it to." + Environment.NewLine
|
||||
+ "If you still think you need to do this hold CTRL while pressing the button.");
|
||||
if (!_readClearCache)
|
||||
ImGui.EndDisabled();
|
||||
@@ -905,14 +905,14 @@ public class SettingsUi : WindowMediatorSubscriberBase
|
||||
_configService.Current.EnableRightClickMenus = enableRightClickMenu;
|
||||
_configService.Save();
|
||||
}
|
||||
_uiShared.DrawHelpText("This will add Mare related right click menu entries in the game UI on paired players.");
|
||||
_uiShared.DrawHelpText("This will add Lightless related right click menu entries in the game UI on paired players.");
|
||||
|
||||
if (ImGui.Checkbox("Display status and visible pair count in Server Info Bar", ref enableDtrEntry))
|
||||
{
|
||||
_configService.Current.EnableDtrEntry = enableDtrEntry;
|
||||
_configService.Save();
|
||||
}
|
||||
_uiShared.DrawHelpText("This will add Mare connection status and visible pair count in the Server Info Bar.\nYou can further configure this through your Dalamud Settings.");
|
||||
_uiShared.DrawHelpText("This will add Lightless connection status and visible pair count in the Server Info Bar.\nYou can further configure this through your Dalamud Settings.");
|
||||
|
||||
using (ImRaii.Disabled(!enableDtrEntry))
|
||||
{
|
||||
@@ -1032,7 +1032,7 @@ public class SettingsUi : WindowMediatorSubscriberBase
|
||||
_configService.Save();
|
||||
}
|
||||
|
||||
if (ImGui.Checkbox("Show Mare Profiles on Hover", ref showProfiles))
|
||||
if (ImGui.Checkbox("Show Lightless Profiles on Hover", ref showProfiles))
|
||||
{
|
||||
Mediator.Publish(new ClearProfileDataMessage());
|
||||
_configService.Current.ProfilesShow = showProfiles;
|
||||
@@ -1149,14 +1149,14 @@ public class SettingsUi : WindowMediatorSubscriberBase
|
||||
_playerPerformanceConfigService.Current.ShowPerformanceIndicator = showPerformanceIndicator;
|
||||
_playerPerformanceConfigService.Save();
|
||||
}
|
||||
_uiShared.DrawHelpText("Will show a performance indicator when players exceed defined thresholds in Mares UI." + Environment.NewLine + "Will use warning thresholds.");
|
||||
_uiShared.DrawHelpText("Will show a performance indicator when players exceed defined thresholds in Lightless UI." + Environment.NewLine + "Will use warning thresholds.");
|
||||
bool warnOnExceedingThresholds = _playerPerformanceConfigService.Current.WarnOnExceedingThresholds;
|
||||
if (ImGui.Checkbox("Warn on loading in players exceeding performance thresholds", ref warnOnExceedingThresholds))
|
||||
{
|
||||
_playerPerformanceConfigService.Current.WarnOnExceedingThresholds = warnOnExceedingThresholds;
|
||||
_playerPerformanceConfigService.Save();
|
||||
}
|
||||
_uiShared.DrawHelpText("Mare will print a warning in chat once per session of meeting those people. Will not warn on players with preferred permissions.");
|
||||
_uiShared.DrawHelpText("Lightless will print a warning in chat once per session of meeting those people. Will not warn on players with preferred permissions.");
|
||||
using (ImRaii.Disabled(!warnOnExceedingThresholds && !showPerformanceIndicator))
|
||||
{
|
||||
using var indent = ImRaii.PushIndent();
|
||||
@@ -1166,7 +1166,7 @@ public class SettingsUi : WindowMediatorSubscriberBase
|
||||
_playerPerformanceConfigService.Current.WarnOnPreferredPermissionsExceedingThresholds = warnOnPref;
|
||||
_playerPerformanceConfigService.Save();
|
||||
}
|
||||
_uiShared.DrawHelpText("Mare will also print warnings and show performance indicator for players where you enabled preferred permissions. If warning in general is disabled, this will not produce any warnings.");
|
||||
_uiShared.DrawHelpText("Lightless will also print warnings and show performance indicator for players where you enabled preferred permissions. If warning in general is disabled, this will not produce any warnings.");
|
||||
}
|
||||
using (ImRaii.Disabled(!showPerformanceIndicator && !warnOnExceedingThresholds))
|
||||
{
|
||||
@@ -1409,7 +1409,7 @@ public class SettingsUi : WindowMediatorSubscriberBase
|
||||
{
|
||||
if (selectedServer.SecretKeys.Any() || useOauth)
|
||||
{
|
||||
UiSharedService.ColorTextWrapped("Characters listed here will automatically connect to the selected Mare service with the settings as provided below." +
|
||||
UiSharedService.ColorTextWrapped("Characters listed here will automatically connect to the selected Lightless service with the settings as provided below." +
|
||||
" Make sure to enter the character names correctly or use the 'Add current character' button at the bottom.", ImGuiColors.DalamudYellow);
|
||||
int i = 0;
|
||||
_uiShared.DrawUpdateOAuthUIDsButton(selectedServer);
|
||||
@@ -1582,12 +1582,12 @@ public class SettingsUi : WindowMediatorSubscriberBase
|
||||
_uiShared.DrawUIDComboForAuthentication(i, item, selectedServer.ServerUri, _logger);
|
||||
}
|
||||
bool isAutoLogin = item.AutoLogin;
|
||||
if (ImGui.Checkbox("Automatically login to Mare", ref isAutoLogin))
|
||||
if (ImGui.Checkbox("Automatically login to Lightless", ref isAutoLogin))
|
||||
{
|
||||
item.AutoLogin = isAutoLogin;
|
||||
_serverConfigurationManager.Save();
|
||||
}
|
||||
_uiShared.DrawHelpText("When enabled and logging into this character in XIV, Mare will automatically connect to the current service.");
|
||||
_uiShared.DrawHelpText("When enabled and logging into this character in XIV, Lightless will automatically connect to the current service.");
|
||||
if (_uiShared.IconTextButton(FontAwesomeIcon.Trash, "Delete Character") && UiSharedService.CtrlPressed())
|
||||
_serverConfigurationManager.RemoveCharacterFromServer(idx, item);
|
||||
UiSharedService.AttachToolTip("Hold CTRL to delete this entry.");
|
||||
@@ -1719,7 +1719,7 @@ public class SettingsUi : WindowMediatorSubscriberBase
|
||||
selectedServer.ForceWebSockets = forceWebSockets;
|
||||
_serverConfigurationManager.Save();
|
||||
}
|
||||
_uiShared.DrawHelpText("On wine, Mare will automatically fall back to ServerSentEvents/LongPolling, even if WebSockets is selected. "
|
||||
_uiShared.DrawHelpText("On wine, Lightless will automatically fall back to ServerSentEvents/LongPolling, even if WebSockets is selected. "
|
||||
+ "WebSockets are known to crash XIV entirely on wine 8.5 shipped with Dalamud. "
|
||||
+ "Only enable this if you are not running wine 8.5." + Environment.NewLine
|
||||
+ "Note: If the issue gets resolved at some point this option will be removed.");
|
||||
|
||||
@@ -14,7 +14,7 @@ namespace LightlessSync.UI;
|
||||
|
||||
public class StandaloneProfileUi : WindowMediatorSubscriberBase
|
||||
{
|
||||
private readonly MareProfileManager _mareProfileManager;
|
||||
private readonly LightlessProfileManager _lightlessProfileManager;
|
||||
private readonly PairManager _pairManager;
|
||||
private readonly ServerConfigurationManager _serverManager;
|
||||
private readonly UiSharedService _uiSharedService;
|
||||
@@ -24,14 +24,14 @@ public class StandaloneProfileUi : WindowMediatorSubscriberBase
|
||||
private IDalamudTextureWrap? _supporterTextureWrap;
|
||||
private IDalamudTextureWrap? _textureWrap;
|
||||
|
||||
public StandaloneProfileUi(ILogger<StandaloneProfileUi> logger, MareMediator mediator, UiSharedService uiBuilder,
|
||||
ServerConfigurationManager serverManager, MareProfileManager mareProfileManager, PairManager pairManager, Pair pair,
|
||||
public StandaloneProfileUi(ILogger<StandaloneProfileUi> logger, LightlessMediator mediator, UiSharedService uiBuilder,
|
||||
ServerConfigurationManager serverManager, LightlessProfileManager lightlessProfileManager, PairManager pairManager, Pair pair,
|
||||
PerformanceCollectorService performanceCollector)
|
||||
: base(logger, mediator, "Mare Profile of " + pair.UserData.AliasOrUID + "##LightlessSyncStandaloneProfileUI" + pair.UserData.AliasOrUID, performanceCollector)
|
||||
: base(logger, mediator, "Lightless Profile of " + pair.UserData.AliasOrUID + "##LightlessSyncStandaloneProfileUI" + pair.UserData.AliasOrUID, performanceCollector)
|
||||
{
|
||||
_uiSharedService = uiBuilder;
|
||||
_serverManager = serverManager;
|
||||
_mareProfileManager = mareProfileManager;
|
||||
_lightlessProfileManager = lightlessProfileManager;
|
||||
Pair = pair;
|
||||
_pairManager = pairManager;
|
||||
Flags = ImGuiWindowFlags.NoResize | ImGuiWindowFlags.AlwaysAutoResize;
|
||||
@@ -51,22 +51,22 @@ public class StandaloneProfileUi : WindowMediatorSubscriberBase
|
||||
{
|
||||
var spacing = ImGui.GetStyle().ItemSpacing;
|
||||
|
||||
var mareProfile = _mareProfileManager.GetMareProfile(Pair.UserData);
|
||||
var lightlessProfile = _lightlessProfileManager.GetLightlessProfile(Pair.UserData);
|
||||
|
||||
if (_textureWrap == null || !mareProfile.ImageData.Value.SequenceEqual(_lastProfilePicture))
|
||||
if (_textureWrap == null || !lightlessProfile.ImageData.Value.SequenceEqual(_lastProfilePicture))
|
||||
{
|
||||
_textureWrap?.Dispose();
|
||||
_lastProfilePicture = mareProfile.ImageData.Value;
|
||||
_lastProfilePicture = lightlessProfile.ImageData.Value;
|
||||
_textureWrap = _uiSharedService.LoadImage(_lastProfilePicture);
|
||||
}
|
||||
|
||||
if (_supporterTextureWrap == null || !mareProfile.SupporterImageData.Value.SequenceEqual(_lastSupporterPicture))
|
||||
if (_supporterTextureWrap == null || !lightlessProfile.SupporterImageData.Value.SequenceEqual(_lastSupporterPicture))
|
||||
{
|
||||
_supporterTextureWrap?.Dispose();
|
||||
_supporterTextureWrap = null;
|
||||
if (!string.IsNullOrEmpty(mareProfile.Base64SupporterPicture))
|
||||
if (!string.IsNullOrEmpty(lightlessProfile.Base64SupporterPicture))
|
||||
{
|
||||
_lastSupporterPicture = mareProfile.SupporterImageData.Value;
|
||||
_lastSupporterPicture = lightlessProfile.SupporterImageData.Value;
|
||||
_supporterTextureWrap = _uiSharedService.LoadImage(_lastSupporterPicture);
|
||||
}
|
||||
}
|
||||
@@ -86,7 +86,7 @@ public class StandaloneProfileUi : WindowMediatorSubscriberBase
|
||||
ImGuiHelpers.ScaledDummy(new Vector2(256, 256 + spacing.Y));
|
||||
var postDummy = ImGui.GetCursorPosY();
|
||||
ImGui.SameLine();
|
||||
var descriptionTextSize = ImGui.CalcTextSize(mareProfile.Description, wrapWidth: 256f);
|
||||
var descriptionTextSize = ImGui.CalcTextSize(lightlessProfile.Description, wrapWidth: 256f);
|
||||
var descriptionChildHeight = rectMax.Y - pos.Y - rectMin.Y - spacing.Y * 2;
|
||||
if (descriptionTextSize.Y > descriptionChildHeight && !_adjustedForScrollBars)
|
||||
{
|
||||
@@ -107,7 +107,7 @@ public class StandaloneProfileUi : WindowMediatorSubscriberBase
|
||||
if (ImGui.BeginChildFrame(1000, childFrame))
|
||||
{
|
||||
using var _ = _uiSharedService.GameFont.Push();
|
||||
ImGui.TextWrapped(mareProfile.Description);
|
||||
ImGui.TextWrapped(lightlessProfile.Description);
|
||||
}
|
||||
ImGui.EndChildFrame();
|
||||
|
||||
|
||||
@@ -31,7 +31,7 @@ public class SyncshellAdminUI : WindowMediatorSubscriberBase
|
||||
private Task<int>? _pruneTask;
|
||||
private int _pruneDays = 14;
|
||||
|
||||
public SyncshellAdminUI(ILogger<SyncshellAdminUI> logger, MareMediator mediator, ApiController apiController,
|
||||
public SyncshellAdminUI(ILogger<SyncshellAdminUI> logger, LightlessMediator mediator, ApiController apiController,
|
||||
UiSharedService uiSharedService, PairManager pairManager, GroupFullInfoDto groupFullInfo, PerformanceCollectorService performanceCollectorService)
|
||||
: base(logger, mediator, "Syncshell Admin Panel (" + groupFullInfo.GroupAliasOrGID + ")", performanceCollectorService)
|
||||
{
|
||||
@@ -259,7 +259,7 @@ public class SyncshellAdminUI : WindowMediatorSubscriberBase
|
||||
_pruneTestTask = _apiController.GroupPrune(new(GroupFullInfo.Group), _pruneDays, execute: false);
|
||||
_pruneTask = null;
|
||||
}
|
||||
UiSharedService.AttachToolTip($"This will start the prune process for this Syncshell of inactive Mare users that have not logged in in the past {_pruneDays} days."
|
||||
UiSharedService.AttachToolTip($"This will start the prune process for this Syncshell of inactive Lightless users that have not logged in in the past {_pruneDays} days."
|
||||
+ Environment.NewLine + "You will be able to review the amount of inactive users before executing the prune."
|
||||
+ UiSharedService.TooltipSeparator + "Note: this check excludes pinned users and moderators of this Syncshell.");
|
||||
ImGui.SameLine();
|
||||
@@ -285,7 +285,7 @@ public class SyncshellAdminUI : WindowMediatorSubscriberBase
|
||||
else
|
||||
{
|
||||
ImGui.AlignTextToFramePadding();
|
||||
UiSharedService.TextWrapped($"Found {_pruneTestTask.Result} user(s) that have not logged into Mare in the past {_pruneDays} days.");
|
||||
UiSharedService.TextWrapped($"Found {_pruneTestTask.Result} user(s) that have not logged into Lightless in the past {_pruneDays} days.");
|
||||
if (_pruneTestTask.Result > 0)
|
||||
{
|
||||
using (ImRaii.Disabled(!UiSharedService.CtrlPressed()))
|
||||
|
||||
@@ -16,7 +16,7 @@ public class TopTabMenu
|
||||
{
|
||||
private readonly ApiController _apiController;
|
||||
|
||||
private readonly MareMediator _mareMediator;
|
||||
private readonly LightlessMediator _lightlessMediator;
|
||||
|
||||
private readonly PairManager _pairManager;
|
||||
private readonly UiSharedService _uiSharedService;
|
||||
@@ -26,9 +26,9 @@ public class TopTabMenu
|
||||
private string _pairToAdd = string.Empty;
|
||||
|
||||
private SelectedTab _selectedTab = SelectedTab.None;
|
||||
public TopTabMenu(MareMediator mareMediator, ApiController apiController, PairManager pairManager, UiSharedService uiSharedService)
|
||||
public TopTabMenu(LightlessMediator lightlessMediator, ApiController apiController, PairManager pairManager, UiSharedService uiSharedService)
|
||||
{
|
||||
_mareMediator = mareMediator;
|
||||
_lightlessMediator = lightlessMediator;
|
||||
_apiController = apiController;
|
||||
_pairManager = pairManager;
|
||||
_uiSharedService = uiSharedService;
|
||||
@@ -50,7 +50,7 @@ public class TopTabMenu
|
||||
{
|
||||
if (!string.Equals(_filter, value, StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
_mareMediator.Publish(new RefreshUiMessage());
|
||||
_lightlessMediator.Publish(new RefreshUiMessage());
|
||||
}
|
||||
|
||||
_filter = value;
|
||||
@@ -469,7 +469,7 @@ public class TopTabMenu
|
||||
{
|
||||
if (_uiSharedService.IconTextButton(FontAwesomeIcon.Plus, "Create new Syncshell", buttonX))
|
||||
{
|
||||
_mareMediator.Publish(new UiToggleMessage(typeof(CreateSyncshellUI)));
|
||||
_lightlessMediator.Publish(new UiToggleMessage(typeof(CreateSyncshellUI)));
|
||||
}
|
||||
ImGui.SameLine();
|
||||
}
|
||||
@@ -478,7 +478,7 @@ public class TopTabMenu
|
||||
{
|
||||
if (_uiSharedService.IconTextButton(FontAwesomeIcon.Users, "Join existing Syncshell", buttonX))
|
||||
{
|
||||
_mareMediator.Publish(new UiToggleMessage(typeof(JoinSyncshellUI)));
|
||||
_lightlessMediator.Publish(new UiToggleMessage(typeof(JoinSyncshellUI)));
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -486,20 +486,20 @@ public class TopTabMenu
|
||||
private void DrawUserConfig(float availableWidth, float spacingX)
|
||||
{
|
||||
var buttonX = (availableWidth - spacingX) / 2f;
|
||||
if (_uiSharedService.IconTextButton(FontAwesomeIcon.UserCircle, "Edit Mare Profile", buttonX))
|
||||
if (_uiSharedService.IconTextButton(FontAwesomeIcon.UserCircle, "Edit Lightless Profile", buttonX))
|
||||
{
|
||||
_mareMediator.Publish(new UiToggleMessage(typeof(EditProfileUi)));
|
||||
_lightlessMediator.Publish(new UiToggleMessage(typeof(EditProfileUi)));
|
||||
}
|
||||
UiSharedService.AttachToolTip("Edit your Mare Profile");
|
||||
UiSharedService.AttachToolTip("Edit your Lightless Profile");
|
||||
ImGui.SameLine();
|
||||
if (_uiSharedService.IconTextButton(FontAwesomeIcon.PersonCircleQuestion, "Chara Data Analysis", buttonX))
|
||||
{
|
||||
_mareMediator.Publish(new UiToggleMessage(typeof(DataAnalysisUi)));
|
||||
_lightlessMediator.Publish(new UiToggleMessage(typeof(DataAnalysisUi)));
|
||||
}
|
||||
UiSharedService.AttachToolTip("View and analyze your generated character data");
|
||||
if (_uiSharedService.IconTextButton(FontAwesomeIcon.Running, "Character Data Hub", availableWidth))
|
||||
{
|
||||
_mareMediator.Publish(new UiToggleMessage(typeof(CharaDataHubUi)));
|
||||
_lightlessMediator.Publish(new UiToggleMessage(typeof(CharaDataHubUi)));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -13,8 +13,8 @@ using Dalamud.Utility;
|
||||
using LightlessSync.FileCache;
|
||||
using LightlessSync.Interop.Ipc;
|
||||
using LightlessSync.Localization;
|
||||
using LightlessSync.MareConfiguration;
|
||||
using LightlessSync.MareConfiguration.Models;
|
||||
using LightlessSync.LightlessConfiguration;
|
||||
using LightlessSync.LightlessConfiguration.Models;
|
||||
using LightlessSync.PlayerData.Pairs;
|
||||
using LightlessSync.Services;
|
||||
using LightlessSync.Services.Mediator;
|
||||
@@ -39,11 +39,11 @@ public partial class UiSharedService : DisposableMediatorSubscriberBase
|
||||
ImGuiWindowFlags.NoScrollWithMouse;
|
||||
|
||||
public readonly FileDialogManager FileDialogManager;
|
||||
private const string _notesEnd = "##MARE_SYNCHRONOS_USER_NOTES_END##";
|
||||
private const string _notesStart = "##MARE_SYNCHRONOS_USER_NOTES_START##";
|
||||
private const string _notesEnd = "##LIGHTLESS_SYNC_USER_NOTES_END##";
|
||||
private const string _notesStart = "##LIGHTLESS_SYNC_USER_NOTES_START##";
|
||||
private readonly ApiController _apiController;
|
||||
private readonly CacheMonitor _cacheMonitor;
|
||||
private readonly MareConfigService _configService;
|
||||
private readonly LightlessConfigService _configService;
|
||||
private readonly DalamudUtilService _dalamudUtil;
|
||||
private readonly IpcManager _ipcManager;
|
||||
private readonly Dalamud.Localization _localization;
|
||||
@@ -75,10 +75,10 @@ public partial class UiSharedService : DisposableMediatorSubscriberBase
|
||||
private int _serverSelectionIndex = -1;
|
||||
public UiSharedService(ILogger<UiSharedService> logger, IpcManager ipcManager, ApiController apiController,
|
||||
CacheMonitor cacheMonitor, FileDialogManager fileDialogManager,
|
||||
MareConfigService configService, DalamudUtilService dalamudUtil, IDalamudPluginInterface pluginInterface,
|
||||
LightlessConfigService configService, DalamudUtilService dalamudUtil, IDalamudPluginInterface pluginInterface,
|
||||
ITextureProvider textureProvider,
|
||||
Dalamud.Localization localization,
|
||||
ServerConfigurationManager serverManager, TokenProvider tokenProvider, MareMediator mediator) : base(logger, mediator)
|
||||
ServerConfigurationManager serverManager, TokenProvider tokenProvider, LightlessMediator mediator) : base(logger, mediator)
|
||||
{
|
||||
_ipcManager = ipcManager;
|
||||
_apiController = apiController;
|
||||
@@ -453,12 +453,12 @@ public partial class UiSharedService : DisposableMediatorSubscriberBase
|
||||
|
||||
public void DrawCacheDirectorySetting()
|
||||
{
|
||||
ColorTextWrapped("Note: The storage folder should be somewhere close to root (i.e. C:\\MareStorage) in a new empty folder. DO NOT point this to your game folder. DO NOT point this to your Penumbra folder.", ImGuiColors.DalamudYellow);
|
||||
ColorTextWrapped("Note: The storage folder should be somewhere close to root (i.e. C:\\LightlessStorage) in a new empty folder. DO NOT point this to your game folder. DO NOT point this to your Penumbra folder.", ImGuiColors.DalamudYellow);
|
||||
var cacheDirectory = _configService.Current.CacheFolder;
|
||||
ImGui.InputText("Storage Folder##cache", ref cacheDirectory, 255, ImGuiInputTextFlags.ReadOnly);
|
||||
|
||||
ImGui.SameLine();
|
||||
using (ImRaii.Disabled(_cacheMonitor.MareWatcher != null))
|
||||
using (ImRaii.Disabled(_cacheMonitor.LightlessWatcher != null))
|
||||
{
|
||||
if (IconButton(FontAwesomeIcon.Folder))
|
||||
{
|
||||
@@ -484,7 +484,7 @@ public partial class UiSharedService : DisposableMediatorSubscriberBase
|
||||
if (dirs.Any())
|
||||
{
|
||||
_cacheDirectoryHasOtherFilesThanCache = true;
|
||||
Logger.LogWarning("Found folders in {path} not belonging to Mare: {dirs}", path, string.Join(", ", dirs));
|
||||
Logger.LogWarning("Found folders in {path} not belonging to Lightless: {dirs}", path, string.Join(", ", dirs));
|
||||
}
|
||||
|
||||
_isDirectoryWritable = IsDirectoryWritable(path);
|
||||
@@ -500,13 +500,13 @@ public partial class UiSharedService : DisposableMediatorSubscriberBase
|
||||
{
|
||||
_configService.Current.CacheFolder = path;
|
||||
_configService.Save();
|
||||
_cacheMonitor.StartMareWatcher(path);
|
||||
_cacheMonitor.StartLightlessWatcher(path);
|
||||
_cacheMonitor.InvokeScan();
|
||||
}
|
||||
}, _dalamudUtil.IsWine ? @"Z:\" : @"C:\");
|
||||
}
|
||||
}
|
||||
if (_cacheMonitor.MareWatcher != null)
|
||||
if (_cacheMonitor.LightlessWatcher != null)
|
||||
{
|
||||
AttachToolTip("Stop the Monitoring before changing the Storage folder. As long as monitoring is active, you cannot change the Storage folder location.");
|
||||
}
|
||||
@@ -525,7 +525,7 @@ public partial class UiSharedService : DisposableMediatorSubscriberBase
|
||||
}
|
||||
else if (_cacheDirectoryHasOtherFilesThanCache)
|
||||
{
|
||||
ColorTextWrapped("Your selected directory has files or directories inside that are not Mare related. Use an empty directory or a previous Mare storage directory only.", ImGuiColors.DalamudRed);
|
||||
ColorTextWrapped("Your selected directory has files or directories inside that are not Lightless related. Use an empty directory or a previous Lightless storage directory only.", ImGuiColors.DalamudRed);
|
||||
}
|
||||
else if (!_cacheDirectoryIsValidPath)
|
||||
{
|
||||
@@ -539,7 +539,7 @@ public partial class UiSharedService : DisposableMediatorSubscriberBase
|
||||
_configService.Current.MaxLocalCacheInGiB = maxCacheSize;
|
||||
_configService.Save();
|
||||
}
|
||||
DrawHelpText("The storage is automatically governed by Mare. It will clear itself automatically once it reaches the set capacity by removing the oldest unused files. You typically do not need to clear it yourself.");
|
||||
DrawHelpText("The storage is automatically governed by Lightless. It will clear itself automatically once it reaches the set capacity by removing the oldest unused files. You typically do not need to clear it yourself.");
|
||||
}
|
||||
|
||||
public T? DrawCombo<T>(string comboName, IEnumerable<T> comboItems, Func<T?, string> toName,
|
||||
|
||||
Reference in New Issue
Block a user