From 51dba221c44a6ecc0717df4dd774dd72d301d9c2 Mon Sep 17 00:00:00 2001 From: Ottermandias Date: Sat, 11 Nov 2023 21:09:49 +0100 Subject: [PATCH] Add option to open window at game start instead of coupling it with debug mode --- Penumbra/Configuration.cs | 1 + Penumbra/UI/ConfigWindow.cs | 2 +- Penumbra/UI/Tabs/SettingsTab.cs | 9 ++++++--- 3 files changed, 8 insertions(+), 4 deletions(-) diff --git a/Penumbra/Configuration.cs b/Penumbra/Configuration.cs index d221b4a2..a1cf6a72 100644 --- a/Penumbra/Configuration.cs +++ b/Penumbra/Configuration.cs @@ -35,6 +35,7 @@ public class Configuration : IPluginConfiguration, ISavable public string ModDirectory { get; set; } = string.Empty; public string ExportDirectory { get; set; } = string.Empty; + public bool OpenWindowAtStart { get; set; } = false; public bool HideUiInGPose { get; set; } = false; public bool HideUiInCutscenes { get; set; } = true; public bool HideUiWhenUiHidden { get; set; } = false; diff --git a/Penumbra/UI/ConfigWindow.cs b/Penumbra/UI/ConfigWindow.cs index 0f209686..804a1d01 100644 --- a/Penumbra/UI/ConfigWindow.cs +++ b/Penumbra/UI/ConfigWindow.cs @@ -32,7 +32,7 @@ public sealed class ConfigWindow : Window RespectCloseHotkey = true; tutorial.UpdateTutorialStep(); - IsOpen = _config.DebugMode; + IsOpen = _config.OpenWindowAtStart; } public void Setup(Penumbra penumbra, ConfigTabBar configTabs) diff --git a/Penumbra/UI/Tabs/SettingsTab.cs b/Penumbra/UI/Tabs/SettingsTab.cs index ae3a939c..6274f209 100644 --- a/Penumbra/UI/Tabs/SettingsTab.cs +++ b/Penumbra/UI/Tabs/SettingsTab.cs @@ -345,22 +345,25 @@ public class SettingsTab : ITab /// Draw the window hiding state checkboxes. private void DrawHidingSettings() { + Checkbox("Open Config Window at Game Start", "Whether the Penumbra main window should be open or closed after launching the game.", + _config.OpenWindowAtStart, v => _config.OpenWindowAtStart = v); + Checkbox("Hide Config Window when UI is Hidden", - "Hide the penumbra main window when you manually hide the in-game user interface.", _config.HideUiWhenUiHidden, + "Hide the Penumbra main window when you manually hide the in-game user interface.", _config.HideUiWhenUiHidden, v => { _config.HideUiWhenUiHidden = v; _dalamud.UiBuilder.DisableUserUiHide = !v; }); Checkbox("Hide Config Window when in Cutscenes", - "Hide the penumbra main window when you are currently watching a cutscene.", _config.HideUiInCutscenes, + "Hide the Penumbra main window when you are currently watching a cutscene.", _config.HideUiInCutscenes, v => { _config.HideUiInCutscenes = v; _dalamud.UiBuilder.DisableCutsceneUiHide = !v; }); Checkbox("Hide Config Window when in GPose", - "Hide the penumbra main window when you are currently in GPose mode.", _config.HideUiInGPose, + "Hide the Penumbra main window when you are currently in GPose mode.", _config.HideUiInGPose, v => { _config.HideUiInGPose = v;