diff --git a/Dalamud/Interface/InterfaceManager.cs b/Dalamud/Interface/InterfaceManager.cs index 4d24cd8b8..3e34a16ae 100644 --- a/Dalamud/Interface/InterfaceManager.cs +++ b/Dalamud/Interface/InterfaceManager.cs @@ -1,13 +1,9 @@ using System; using System.ComponentModel; -using System.Diagnostics; using System.IO; -using System.Linq; using System.Numerics; using System.Runtime.InteropServices; using System.Text; -using System.Threading; -using CheapLoc; using Dalamud.Game; using Dalamud.Game.Internal.DXGI; using Dalamud.Hooking; diff --git a/Dalamud/Interface/UiBuilder.cs b/Dalamud/Interface/UiBuilder.cs index cd08cfb02..5ecfbd101 100644 --- a/Dalamud/Interface/UiBuilder.cs +++ b/Dalamud/Interface/UiBuilder.cs @@ -35,10 +35,15 @@ namespace Dalamud.Interface public event RawDX11Scene.BuildUIDelegate OnBuildUi; /// - /// Choose if this plugin should hide its UI automatically when the whole game hides its UI (e.g. with Scroll Lock). + /// Choose if this plugin should hide its UI automatically when the game's UI is hidden. /// public bool DisableAutomaticUiHide { get; set; } = false; + /// + /// Choose if this plugin should hide its UI automatically when the user toggles the UI. + /// + public bool DisableUserUiHide { get; set; } = false; + /// /// Choose if this plugin should hide its UI automatically during cutscenes. /// @@ -120,7 +125,7 @@ namespace Dalamud.Interface /// Any ImFontPtr objects that you store can be invalidated when fonts are rebuilt /// (at any time), so you should both reload your custom fonts and restore those /// pointers inside this handler.
- /// PLEASE remove this handler inside Dipose, or when you no longer need your fonts! + /// PLEASE remove this handler inside Dispose, or when you no longer need your fonts! /// public Action OnBuildFonts { @@ -148,9 +153,9 @@ namespace Dalamud.Interface private void OnDraw() { - if (this.dalamud.Framework.Gui.GameUiHidden && this.dalamud.Configuration.ToggleUiHide && !DisableAutomaticUiHide || - CutsceneActive && this.dalamud.Configuration.ToggleUiHideDuringCutscenes && !DisableCutsceneUiHide || - GposeActive && this.dalamud.Configuration.ToggleUiHideDuringGpose && !DisableGposeUiHide) + if (this.dalamud.Framework.Gui.GameUiHidden && this.dalamud.Configuration.ToggleUiHide && !(DisableUserUiHide || DisableAutomaticUiHide) || + CutsceneActive && this.dalamud.Configuration.ToggleUiHideDuringCutscenes && !(DisableCutsceneUiHide || DisableAutomaticUiHide) || + GposeActive && this.dalamud.Configuration.ToggleUiHideDuringGpose && !(DisableGposeUiHide || DisableAutomaticUiHide)) return; ImGui.PushID(this.namespaceName);