Disable minimizing/closing quest window if any quest is running
authorLiza Carvelli <liza@carvel.li>
Sat, 10 Aug 2024 16:13:46 +0000 (18:13 +0200)
committerLiza Carvelli <liza@carvel.li>
Sat, 10 Aug 2024 16:13:46 +0000 (18:13 +0200)
Questionable/Windows/QuestComponents/ActiveQuestComponent.cs
Questionable/Windows/QuestWindow.cs

index ce669a7bd894ee69848bf1f83dc75e4416eb9c9e..e36fe2a1df28ec5d7e08191d28cea06b939d36ed 100644 (file)
@@ -1,5 +1,4 @@
 using System;
-using System.Globalization;
 using System.Linq;
 using System.Numerics;
 using Dalamud.Game.Text;
@@ -9,7 +8,6 @@ using Dalamud.Interface.Components;
 using Dalamud.Interface.Utility.Raii;
 using Dalamud.Plugin;
 using Dalamud.Plugin.Services;
-using FFXIVClientStructs.FFXIV.Application.Network.WorkDefinitions;
 using ImGuiNET;
 using Questionable.Controller;
 using Questionable.Controller.Steps.Shared;
index 5f7531e1fb2aece5591c0123ec478df2ef06c906..0f892489eb69075a740a82f946f043092668ae2d 100644 (file)
@@ -42,7 +42,7 @@ internal sealed class QuestWindow : LWindow, IPersistableWindowConfig
         IFramework framework,
         GameUiController gameUiController)
         : base($"Questionable v{PluginVersion.ToString(2)}###Questionable",
-            ImGuiWindowFlags.AlwaysAutoResize | ImGuiWindowFlags.NoCollapse)
+            ImGuiWindowFlags.AlwaysAutoResize)
     {
         _pluginInterface = pluginInterface;
         _questController = questController;
@@ -92,7 +92,17 @@ internal sealed class QuestWindow : LWindow, IPersistableWindowConfig
 
     public override void PreOpenCheck()
     {
-        IsOpen |= _questController.IsRunning;
+        if (_questController.IsRunning)
+        {
+            IsOpen = true;
+            Flags |= ImGuiWindowFlags.NoCollapse;
+            ShowCloseButton = false;
+        }
+        else
+        {
+            Flags &= ~ImGuiWindowFlags.NoCollapse;
+            ShowCloseButton = true;
+        }
     }
 
     public override bool DrawConditions()