Files
HellionChat/docs/CHANGELOG.md
T

7.7 KiB
Raw Permalink Blame History

Changelog — Hellion Chat

Alle nutzersichtbaren Änderungen an Hellion Chat. Das Format orientiert sich an Keep a Changelog, die Version-Nummern folgen Semantischer Versionierung.

Detaillierte Release-Notes pro Version stehen direkt am GitHub-Release und im Plugin-Changelog-Block (HellionChat/HellionChat.yamlchangelog:). Diese Datei fasst die Releases als Überblick zusammen und verlinkt für Details auf die Release-Pages.


[1.1.0] — 2026-05-05 — Theme Foundation

Erster großer UI-Cycle nach v1.0.0. Theme-Engine, fünf Built-In-Themes, Custom-Themes via JSON, Settings-Card-Grid.

Hinzugefügt

  • Theme-Engine mit fünf Built-In-Themes: Hellion Arctic (Default), Chat 2 Klassik, Event Horizon, Moonlit Bloom, Mint Grove.
  • Settings → Themes mit Mini-Mockup-Preview pro Theme. Klick auf eine Card switcht sofort das ganze Plugin (Chat, Settings, Pop-Out).
  • Custom-Themes via JSON in pluginConfigs/HellionChat/themes/. Beim ersten Start wird example-theme.json als Vorlage abgelegt.
  • Optional Theme-Chat-Channel-Colors: Themes können eigene Channel-Farben mitliefern. Beim Switch erscheint ein Banner mit Übernehmen / Behalten — nie automatisch.
  • Settings-Card-Grid: neue Übersicht beim Öffnen, Card-Klick führt in die Detail-Ansicht der Section. Breadcrumb + ESC führen zurück.
  • docs/THEME-AUTHORING.md als Anleitung zum Schreiben eigener Themes, mit Hellion-Forge-Branding.

Geändert

  • Plugin-Icon auf Hellion Forge Hammer (vorher ChatTwo-Derivat).
  • Settings-Detail-View verwendet die volle Breite — die zweite Tab-Liste links ist weg, weil die Card-Übersicht den Wechsel übernimmt.
  • HellionStyle.PushGlobal ist jetzt theme-driven (PushGlobal(theme, opacity)) statt const-palette-driven.
  • Configuration v13 → v14: alle User landen auf hellion-arctic. Wer den Upstream-Look will, wählt chat2-classic in Settings → Themes.

Veraltet

  • Configuration.HellionThemeEnabled und HellionThemeWindowOpacity bleiben für ein Release lesbar als Safety-Net, werden aber nicht mehr ausgewertet. Entfernung geplant in v1.2.0.

Sicherheit

  • Custom-Theme-JSON-Loader prüft schemaVersion, Pflichtfelder und Hex-Format. Ungültige Themes werden mit Warning übersprungen, das Plugin lädt mit Built-Ins weiter.

Intern

  • 51 lokale Unit-Tests (Theme-Records, Registry, JSON-Round-Trip, Sanity pro Built-In-Theme). Tests sind gitignored.

[1.0.3] — 2026-05-04 — Polish patch

Vier kleine Polish-Items aus dem Backlog gebündelt:

  • Hide bei New Game+ Menü: Optionaler globaler Toggle der Hellion Chat (und alle weiteren Plugin-Fenster wie Settings, DB-Viewer, Pop-Outs) ausblendet, solange das NG+-Menü offen ist. Settings → Fenster → Rahmen, Default aus. Skipt analog zum bestehenden LoadingScreens-Pattern den gesamten WindowSystem.Draw()-Pfad.
  • Channel-Selector-Färbung: Optionales Tinting des Channel-Auswahl-Knopfs (Comment-Icon) neben dem Eingabefeld in der aktuellen Channel-Farbe. Settings → Aussehen → Chat-Farben, Default an. Konsistent zur bestehenden Eingabetext-Färbung, ExtraChat-Override wird übernommen.
  • (De)Buff-Icon Aspect-Ratio-Fix: PayloadHandler.InlineIcon quetschte alle Hover-Icons auf 32×32. Status-Icons mit nicht-quadratischen Dimensionen (Debuffs mit Pfeil-Indikator) sind jetzt aspekt-erhaltend geshrinkt. Eigenständige Float-Math-Implementierung mit Zero-Size-Guard statt Cherry-Pick aus dem offenen ChatTwo PR #157 (der hatte eine int-Division-Falle).
  • HideState-Logging-Sweep: Alle HideState-Transitions (Battle/Cutscene/User/Override plus die Pop-Out-Spiegelung) loggen sich auf Verbose-Level. Aus by default, Aktivierung via /xllog set HellionChat verbose für Bug-Report-Diagnose.

Release-Notes 1.0.3

[1.0.1] — 2026-05-04 — Window Position Recovery

Fixes an off-screen-window scenario the user could end up in after a monitor disconnect or display layout change between sessions. An automatic one-shot bounds check on the first draw after plugin load snaps the window back into the visible viewport, and a new "Reset Window Position" button in Settings → Window → Frame serves as the manual escape hatch for edge cases.

Bundled housekeeping since v1.0.0: documentation restructured into docs/, stale ChatTwo/* paths in repo configs cleaned up, Pidgin parser library bumped from 3.3.0 to 3.5.1, GitHub Actions bumps for actions/setup-dotnet (4 → 5) and github/codeql-action (3 → 4).

Release-Notes 1.0.1

[1.0.0] — 2026-05-03 — Standalone Major Release

Erste vollständig eigenständige Version. Code-Namespace, IPC-Kanäle und Source-Tree-Struktur wurden auf HellionChat.* konsolidiert. Plugin verweigert den Start bei aktivem Upstream Chat 2 (bilinguale Konflikt-Meldung). SQLite-Native auf 3.50.3 gepinnt (CVE-2025-6965, CVE-2025-7709). Tab-Layout-Default für neue Installationen und für User auf Config-Version 12 oder älter neu strukturiert (5 thematische Tabs statt 6+ kitchen-sink). Sweep aus Critical- und Major-Findings aus dem Codebase-Audit eingearbeitet.

Release-Notes 1.0.0

[0.6.1] — 2026-05-03 — Pop-Out Discoverability & /tell Auto-Pop-Out

Pop-Out-Button im Chat-Header sichtbar, einmaliger Hint-Banner für die Pop-Out-Funktionalität. Neue Einstellung "Neue /tell-Tabs direkt als Pop-Out öffnen". Pop-Out-Input ist jetzt standardmäßig aktiv. Bugfixes: Ghost-Windows bei LRU-Drop / Logout, Dead-Zone unter dem Input-Bar bei aktivem Hint-Banner.

Release-Notes 0.6.1

[0.6.0] — 2026-05-03 — UX Polish: Pop-Out Input + Colour Presets

Zwei opt-in UX-Features. Pop-Out-Fenster bekommen optional eine kompakte Eingabe-Bar mit channel-farbigem Icon-Button und unabhängigem Text-Buffer pro Pop-Out. Sieben Built-in-Color-Presets (Klassik, High-Contrast, Pastell, Dark-Mode-Tuned, Hellion, Night Blue, Indigo Violet) zum One-Click-Apply. Konfigurations-Migration v10 → v11.

Release-Notes 0.6.0

[0.5.4] — 2026-05-02 — WrapText Hardening

ImGuiUtil.WrapText von Pointer-Arithmetik auf Span- und Index-basierten Control-Flow umgestellt. Schließt das wiederkehrende CodeQL-Critical-Alert "unvalidated local pointer arithmetic" dauerhaft. Keine nutzersichtbare Verhaltensänderung — Word-Wrap-Output ist byte-identisch zu 0.5.3.

Release-Notes 0.5.4

[0.5.3] — 2026-05-02 — Pointer Arithmetic Hardening

Erster Anlauf zur Schließung des CodeQL-Critical-Alerts in ImGuiUtil.WrapText. Encoded-Byte-Buffer-Length wird vor der Pointer-Arithmetik via GetByteCount validiert.

Release-Notes 0.5.3


Frühere Versionen

Releases vor 0.5.3 (Bootstrap-Phase 0.1.0 bis 0.5.2) sind direkt am GitHub-Release-Stream einsehbar:

Alle Releases


Pflege-Hinweis

Die Source-of-Truth für den nutzersichtbaren Changelog ist der changelog:-Block in HellionChat/HellionChat.yaml. repo.json und der GitHub-Release-Body werden daraus gespeist. Diese Datei (docs/CHANGELOG.md) ist eine kuratierte Zusammenfassung mit Verweis auf die Release-Pages und wird beim Versions-Bump manuell ergänzt.