diff --git a/Dalamud/Configuration/DalamudConfiguration.cs b/Dalamud/Configuration/DalamudConfiguration.cs index 72949b367..85bbcb843 100644 --- a/Dalamud/Configuration/DalamudConfiguration.cs +++ b/Dalamud/Configuration/DalamudConfiguration.cs @@ -26,7 +26,8 @@ namespace Dalamud public bool DoPluginTest { get; set; } = false; public bool DoDalamudTest { get; set; } = false; - public List ThirdRepoList { get; set; }= new List(); + public List ThirdRepoList { get; set; } = new List(); + public List HiddenPluginInternalName { get; set; } = new List(); public float GlobalUiScale { get; set; } = 1.0f; public bool ToggleUiHide { get; set; } = true; diff --git a/Dalamud/Interface/DalamudSettingsWindow.cs b/Dalamud/Interface/DalamudSettingsWindow.cs index 7b3790d7a..747daa604 100644 --- a/Dalamud/Interface/DalamudSettingsWindow.cs +++ b/Dalamud/Interface/DalamudSettingsWindow.cs @@ -189,6 +189,14 @@ namespace Dalamud.Interface ImGui.Dummy(new Vector2(12f, 12f) * ImGui.GetIO().FontGlobalScale); + if (ImGui.Button(Loc.Localize("DalamudSettingsClearHidden", "Clear hidden plugins"))) + this.dalamud.Configuration.HiddenPluginInternalName.Clear(); + ImGui.TextColored(this.hintTextColor, Loc.Localize("DalamudSettingsClearHiddenHint", "Restore plugins you have previously hidden from the plugin installer.")); + + ImGui.Dummy(new Vector2(12f, 12f) * ImGui.GetIO().FontGlobalScale); + + ImGui.Dummy(new Vector2(12f, 12f) * ImGui.GetIO().FontGlobalScale); + ImGui.Text(Loc.Localize("DalamudSettingsCustomRepo", "Custom Plugin Repositories")); ImGui.TextColored(this.hintTextColor, Loc.Localize("DalamudSettingCustomRepoHint", "Add custom plugin repositories. Only change these settings if you know what you are doing.")); diff --git a/Dalamud/Plugin/PluginInstallerWindow.cs b/Dalamud/Plugin/PluginInstallerWindow.cs index eeec55bf4..2de635471 100644 --- a/Dalamud/Plugin/PluginInstallerWindow.cs +++ b/Dalamud/Plugin/PluginInstallerWindow.cs @@ -291,6 +291,9 @@ namespace Dalamud.Plugin if (pluginDefinition.DalamudApiLevel < PluginManager.DALAMUD_API_LEVEL) continue; + if (this.dalamud.Configuration.HiddenPluginInternalName.Contains(pluginDefinition.InternalName)) + continue; + didAny = true; if (hasSearchString && @@ -451,6 +454,13 @@ namespace Dalamud.Plugin ImGui.Unindent(); } + if (ImGui.BeginPopupContextItem("item context menu")) + { + if (ImGui.Selectable("Hide from installer")) + this.dalamud.Configuration.HiddenPluginInternalName.Add(pluginDefinition.InternalName); + ImGui.EndPopup(); + } + ImGui.PopID(); }