From d0ec94c3e623b8350055cb39f0e65bb1974aa5b2 Mon Sep 17 00:00:00 2001 From: Jon Kazama Date: Tue, 12 May 2026 15:30:01 +0200 Subject: [PATCH] style: align v1.4.5 additions with HellionChat conventions MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Pattern-adherence pass after the cycle's code commits: - ChatLogWindow.cs: NotifiedDrawFailure renamed from _notifiedDrawFailure. The file's per-window state flags (DrewThisFrame, WasDocked, Activate, PlayedClosingSound, …) all use PascalCase without underscore prefix; the new flag now matches that - Plugin.cs: trim the session-only RemoveAll comment from 5 lines to 2 and add the standard TEST-MIRROR pointer line. Same shape as AutoTellTabsService.cs:28 and the other six TEST-MIRROR sites - InputHistoryService.cs: add the TEST-MIRROR pointer for the new Build-Suite tests --- HellionChat/InputHistoryService.cs | 1 + HellionChat/Plugin.cs | 8 +++----- HellionChat/Ui/ChatLogWindow.cs | 8 ++++---- 3 files changed, 8 insertions(+), 9 deletions(-) diff --git a/HellionChat/InputHistoryService.cs b/HellionChat/InputHistoryService.cs index 833cc5c..59bb3b5 100644 --- a/HellionChat/InputHistoryService.cs +++ b/HellionChat/InputHistoryService.cs @@ -4,6 +4,7 @@ namespace HellionChat; // Shared input history for all ChatInputBars (main and pop-out windows). // Push deduplicates: existing entries are moved to the end when re-added. +// TEST-MIRROR: ../../Hellion Build test/Util/InputHistoryServiceTests.cs public static class InputHistoryService { private const int MaxSize = 30; diff --git a/HellionChat/Plugin.cs b/HellionChat/Plugin.cs index 1909503..e90b135 100755 --- a/HellionChat/Plugin.cs +++ b/HellionChat/Plugin.cs @@ -164,11 +164,9 @@ public sealed class Plugin : IAsyncDalamudPlugin ); } - // Auto-Tell-Tabs are session-only: their messages are usually - // privacy-filtered and resurrecting an empty tab from a crashed - // session would trigger DB-reconstruction on the next load. The - // TempTabCounter then re-pegs the snapshot from the stripped list in - // AutoTellTabsService.Initialize. (F2.3 — TEST-MIRROR in Build-Suite.) + // Session-only tabs are stripped on every load; AutoTellTabsService.Initialize + // then re-pegs TempTabCounter from the stripped list, not the pre-strip snapshot. + // TEST-MIRROR: ../../Hellion Build test/_Helpers/TempTabCounterTests.cs Config.Tabs.RemoveAll(t => t.IsTempTab); LanguageChanged(Interface.UiLanguage); diff --git a/HellionChat/Ui/ChatLogWindow.cs b/HellionChat/Ui/ChatLogWindow.cs index 3fc7a00..0e90f83 100644 --- a/HellionChat/Ui/ChatLogWindow.cs +++ b/HellionChat/Ui/ChatLogWindow.cs @@ -90,9 +90,9 @@ public sealed class ChatLogWindow : Window private bool PlayedClosingSound = true; private bool DrewThisFrame; - // F7.1: one-shot guard so a recurring draw failure doesn't spam the + // One-shot guard so a recurring draw failure doesn't spam the // notification stack frame-by-frame. Resets only on next plugin reload. - private bool _notifiedDrawFailure; + private bool NotifiedDrawFailure; private long FrameTime; // set every frame internal long LastActivityTime = Environment.TickCount64; @@ -631,7 +631,7 @@ public sealed class ChatLogWindow : Window catch (Exception ex) { Plugin.Log.Error(ex, "Error drawing Chat Log window"); - if (!_notifiedDrawFailure) + if (!NotifiedDrawFailure) { Plugin.Notification.AddNotification( new Dalamud.Interface.ImGuiNotification.Notification @@ -642,7 +642,7 @@ public sealed class ChatLogWindow : Window InitialDuration = TimeSpan.FromSeconds(20), } ); - _notifiedDrawFailure = true; + NotifiedDrawFailure = true; } // Prevent recurring draw failures from constantly trying to grab // input focus, which breaks every other ImGui window.