Translate all remaining German sections in docs/CHANGELOG.md and docs/ROADMAP.md to English for consistency across the repository. Previously English sections left unchanged.
This commit is contained in:
+99
-87
@@ -1,13 +1,12 @@
|
||||
# Changelog — Hellion Chat
|
||||
|
||||
Alle nutzersichtbaren Änderungen an Hellion Chat. Das Format orientiert sich an
|
||||
[Keep a Changelog](https://keepachangelog.com/de/1.0.0/), die Version-Nummern folgen
|
||||
[Semantischer Versionierung](https://semver.org/lang/de/).
|
||||
All user-facing changes to Hellion Chat. Format follows [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
||||
version numbers follow [Semantic Versioning](https://semver.org/).
|
||||
|
||||
Detaillierte Release-Notes pro Version stehen direkt am
|
||||
[Gitea-Release](https://gitea.hellion-forge.cloud/JonKazama-Hellion/HellionChat/releases) und im Plugin-Changelog-Block
|
||||
(`HellionChat/HellionChat.yaml` → `changelog:`). Diese Datei fasst die Releases als Überblick zusammen und verlinkt für
|
||||
Details auf die Release-Pages.
|
||||
Detailed release notes per version are available directly on the
|
||||
[Gitea Release page](https://gitea.hellion-forge.cloud/JonKazama-Hellion/HellionChat/releases) and in the plugin
|
||||
changelog block (`HellionChat/HellionChat.yaml` → `changelog:`). This file summarises releases as an overview and links
|
||||
to the release pages for details.
|
||||
|
||||
---
|
||||
|
||||
@@ -40,8 +39,8 @@ Based on Chat 2 1.35.3 (upstream Infiziert90/ChatTwo, EUPL-1.2).
|
||||
|
||||
Third sub-patch of the v1.4.x Polish Sweep series. Per-frame allocations from the chat-log render path eliminated.
|
||||
|
||||
- `DrawMessages` card-mode hoists `theme`/`drawList`/`winLeft`/ `winRight`/`borderColorAbgr` out of the per-message
|
||||
loop. About 500 redundant calls per frame at 100 visible messages, multiplied by every pop-out window
|
||||
- `DrawMessages` card-mode hoists `theme`/`drawList`/`winLeft`/`winRight`/`borderColorAbgr` out of the per-message loop.
|
||||
About 500 redundant calls per frame at 100 visible messages, multiplied by every pop-out window
|
||||
- Auto-tell tab tint and icon use a per-tab cache. Hash computation and string allocation only happen when the tell
|
||||
target name or world drifts. `AutoTellTabTint` stays a pure hash helper; cache lives in a thin `TabTintCache` wrapper
|
||||
- Status bar gates its tab aggregation behind the same one-second cache it already used for the format strings. LINQ
|
||||
@@ -105,7 +104,7 @@ Based on Chat 2 1.35.3 (upstream Infiziert90/ChatTwo, EUPL-1.2).
|
||||
|
||||
---
|
||||
|
||||
## Hellion Chat 1.3.0 - Plugin Integrations: Honorific
|
||||
## Hellion Chat 1.3.0 — Plugin Integrations: Honorific
|
||||
|
||||
First step on the plugin-integration roadmap. HellionChat now listens to Honorific and shows your custom title in the
|
||||
chat header. The slot auto-hides when Honorific is not installed, when no custom title is active, or when you are using
|
||||
@@ -118,7 +117,7 @@ the original FFXIV title.
|
||||
- Maintainer attribution buttons for Honorific repo and Caraxi
|
||||
- New service-class pattern under HellionChat/Integrations/
|
||||
|
||||
Modding and support: join Hellion Forge - <https://discord.gg/X9V7Kcv5gR>
|
||||
Modding & support: join Hellion Forge — <https://discord.gg/X9V7Kcv5gR>
|
||||
|
||||
Based on Chat 2 1.35.3 (upstream Infiziert90/ChatTwo, EUPL-1.2).
|
||||
|
||||
@@ -177,7 +176,7 @@ Based on Chat 2 1.35.3 (upstream Infiziert90/ChatTwo, EUPL-1.2).
|
||||
|
||||
## v1.2.0 — Layout Refresh (2026-05-05)
|
||||
|
||||
### 1.2.0 Added
|
||||
### Added
|
||||
|
||||
- Sidebar tab modernization: icon-only at fixed 44 px, tooltip on hover, vertical accent pill for active tab
|
||||
- Top tabs: accent underline pill replaces background fill on active tab
|
||||
@@ -190,12 +189,12 @@ Based on Chat 2 1.35.3 (upstream Infiziert90/ChatTwo, EUPL-1.2).
|
||||
- Unread indicator: pulsing red dot in the top-right corner of any sidebar tab icon with unread messages, 2-second
|
||||
sine-wave pulse, respects `Configuration.ReduceMotion`
|
||||
|
||||
### 1.2.0 Changed
|
||||
### Changed
|
||||
|
||||
- Migration v14 → v15: deprecated Configuration fields `HellionThemeEnabled` and `HellionThemeWindowOpacity` removed
|
||||
- Appearance settings cleaned: legacy theme-engine bindings replaced by Themes tab (introduced in v1.1.0)
|
||||
|
||||
### 1.2.0 Fixed
|
||||
### Fixed
|
||||
|
||||
- Settings save no longer wipes chat history by default — the heavy `ClearAllTabs + FilterAllTabsAsync` cycle now only
|
||||
runs when a filter-relevant setting actually changed (Privacy filter, persisted channels, per-tab channel selection).
|
||||
@@ -206,75 +205,78 @@ Based on Chat 2 1.35.3 (upstream Infiziert90/ChatTwo, EUPL-1.2).
|
||||
- Sidebar child window no longer paints the top padding area with its frame background
|
||||
- Status bar version slot (`vX.Y.Z · Hellion`) no longer clips its rightmost character
|
||||
|
||||
### 1.2.0 Notes
|
||||
### Notes
|
||||
|
||||
- Polish phase (animations, theme crossfade, header quick-picker) follows in v1.3.0
|
||||
- Top-Tab icon prefixes were considered but dropped: Dalamud's default font atlas does not include FontAwesome
|
||||
codepoints, so mixed-font in a single TabItem label renders as tofu. Underline pill alone is the v1.2.0 visual
|
||||
treatment for top tabs. Resolution would require Font-Atlas merge at FontManager level — out of scope.
|
||||
|
||||
---
|
||||
|
||||
## [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.
|
||||
First major UI cycle after v1.0.0. Theme engine, five built-in themes, custom themes via JSON, settings card grid.
|
||||
|
||||
### Hinzugefügt
|
||||
### Added
|
||||
|
||||
- **Theme-Engine** mit fünf Built-In-Themes: Hellion Arctic (Default), Chat 2 Klassik, Event Horizon, Moonlit Bloom,
|
||||
- **Theme engine** with five built-in themes: Hellion Arctic (default), Chat 2 Classic, 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.
|
||||
- **Settings → Themes** with mini mockup preview per theme. Clicking a card instantly switches the entire plugin (chat,
|
||||
settings, pop-outs).
|
||||
- **Custom themes via JSON** in `pluginConfigs/HellionChat/themes/`. On first start, `example-theme.json` is placed
|
||||
there as a template.
|
||||
- **Optional theme chat channel colours**: themes can ship their own channel colours. On switch, a banner appears with
|
||||
_Apply / Keep current_ — never applied automatically.
|
||||
- **Settings card grid**: new overview on open, clicking a card navigates into the section's detail view. Breadcrumb +
|
||||
ESC navigate back.
|
||||
- **`docs/THEME-AUTHORING.md`** as a guide for writing custom themes, with Hellion Forge branding.
|
||||
|
||||
### Geändert
|
||||
### Changed
|
||||
|
||||
- **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.
|
||||
- **Plugin icon** updated to Hellion Forge hammer (previously a ChatTwo derivative).
|
||||
- **Settings detail view** uses the full width — the second tab list on the left is gone because the card overview
|
||||
handles navigation.
|
||||
- **`HellionStyle.PushGlobal`** is now theme-driven (`PushGlobal(theme, opacity)`) instead of const-palette-driven.
|
||||
- **Configuration v13 → v14**: all users land on `hellion-arctic`. Those who prefer the upstream look can select
|
||||
`chat2-classic` in Settings → Themes.
|
||||
|
||||
### Veraltet
|
||||
### Deprecated
|
||||
|
||||
- `Configuration.HellionThemeEnabled` und `HellionThemeWindowOpacity` bleiben für ein Release lesbar als Safety-Net,
|
||||
werden aber nicht mehr ausgewertet. Entfernung geplant in v1.2.0.
|
||||
- `Configuration.HellionThemeEnabled` and `HellionThemeWindowOpacity` remain readable for one release as a safety net
|
||||
but are no longer evaluated. Removal planned for v1.2.0.
|
||||
|
||||
### Sicherheit
|
||||
### Security
|
||||
|
||||
- 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.
|
||||
- Custom theme JSON loader validates `schemaVersion`, required fields and hex format. Invalid themes are skipped with a
|
||||
warning; the plugin continues loading with built-ins.
|
||||
|
||||
### Intern
|
||||
### Internal
|
||||
|
||||
- 51 lokale Unit-Tests (Theme-Records, Registry, JSON-Round-Trip, Sanity pro Built-In-Theme). Tests sind gitignored.
|
||||
- 51 local unit tests (theme records, registry, JSON round-trip, sanity per built-in theme). Tests are gitignored.
|
||||
|
||||
---
|
||||
|
||||
## [1.0.3] — 2026-05-04 — Polish patch
|
||||
## [1.0.3] — 2026-05-04 — Polish Patch
|
||||
|
||||
Vier kleine Polish-Items aus dem Backlog gebündelt:
|
||||
Four small polish items from the backlog bundled together:
|
||||
|
||||
- **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.
|
||||
- **Hide on New Game+ menu**: optional global toggle that hides Hellion Chat (and all other plugin windows such as
|
||||
Settings, DB Viewer, pop-outs) while the NG+ menu is open. Settings → Window → Frame, default off. Skips the entire
|
||||
`WindowSystem.Draw()` path analogous to the existing LoadingScreens pattern.
|
||||
- **Channel selector colouring**: optional tinting of the channel-select button (comment icon) next to the input field
|
||||
in the current channel colour. Settings → Appearance → Chat Colours, default on. Consistent with the existing input
|
||||
text colouring; ExtraChat override is carried over.
|
||||
- **(De)buff icon aspect-ratio fix**: `PayloadHandler.InlineIcon` was squashing all hover icons to 32×32. Status icons
|
||||
with non-square dimensions (debuffs with an arrow indicator) are now shrunk aspect-preserving. Standalone float-math
|
||||
implementation with zero-size guard instead of a cherry-pick from the open ChatTwo PR #157 (which had an int-division
|
||||
trap).
|
||||
- **HideState logging sweep**: all HideState transitions (Battle/Cutscene/User/Override plus pop-out mirroring) log at
|
||||
verbose level. Off by default; enable via `/xllog set HellionChat verbose` for bug-report diagnostics.
|
||||
|
||||
[Release-Notes 1.0.3](https://gitea.hellion-forge.cloud/JonKazama-Hellion/HellionChat/releases/tag/v1.0.3)
|
||||
[Release Notes 1.0.3](https://gitea.hellion-forge.cloud/JonKazama-Hellion/HellionChat/releases/tag/v1.0.3)
|
||||
|
||||
---
|
||||
|
||||
## [1.0.1] — 2026-05-04 — Window Position Recovery
|
||||
|
||||
@@ -287,61 +289,71 @@ Bundled housekeeping since v1.0.0: documentation restructured into `docs/`, stal
|
||||
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](https://gitea.hellion-forge.cloud/JonKazama-Hellion/HellionChat/releases/tag/v1.0.1)
|
||||
[Release Notes 1.0.1](https://gitea.hellion-forge.cloud/JonKazama-Hellion/HellionChat/releases/tag/v1.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.
|
||||
First fully independent release. Code namespace, IPC channels and source tree structure consolidated under
|
||||
`HellionChat.*`. Plugin refuses to start alongside an active upstream Chat 2 (bilingual conflict message). SQLite native
|
||||
pinned to 3.50.3 (CVE-2025-6965, CVE-2025-7709). Tab layout default for new installs and users on config version 12 or
|
||||
older restructured (5 thematic tabs instead of 6+ kitchen-sink). Sweep of critical and major findings from the codebase
|
||||
audit incorporated.
|
||||
|
||||
[Release-Notes 1.0.0](https://gitea.hellion-forge.cloud/JonKazama-Hellion/HellionChat/releases/tag/v1.0.0)
|
||||
[Release Notes 1.0.0](https://gitea.hellion-forge.cloud/JonKazama-Hellion/HellionChat/releases/tag/v1.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.
|
||||
Pop-out button visible in the chat header, one-time hint banner for the pop-out feature. New setting "Open new /tell
|
||||
tabs directly as pop-out". Pop-out input is now active by default. Bug fixes: ghost windows on LRU-drop / logout, dead
|
||||
zone below the input bar when the hint banner is active.
|
||||
|
||||
[Release-Notes 0.6.1](https://gitea.hellion-forge.cloud/JonKazama-Hellion/HellionChat/releases/tag/v0.6.1)
|
||||
[Release Notes 0.6.1](https://gitea.hellion-forge.cloud/JonKazama-Hellion/HellionChat/releases/tag/v0.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.
|
||||
Two opt-in UX features. Pop-out windows optionally get a compact input bar with a channel-coloured icon button and an
|
||||
independent text buffer per pop-out. Seven built-in colour presets (Classic, High Contrast, Pastel, Dark Mode Tuned,
|
||||
Hellion, Night Blue, Indigo Violet) for one-click apply. Configuration migration v10 → v11.
|
||||
|
||||
[Release-Notes 0.6.0](https://gitea.hellion-forge.cloud/JonKazama-Hellion/HellionChat/releases/tag/v0.6.0)
|
||||
[Release Notes 0.6.0](https://gitea.hellion-forge.cloud/JonKazama-Hellion/HellionChat/releases/tag/v0.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.
|
||||
`ImGuiUtil.WrapText` rewritten from pointer arithmetic to Span- and index-based control flow. Permanently closes the
|
||||
recurring CodeQL critical alert "unvalidated local pointer arithmetic". No user-visible behaviour change — word-wrap
|
||||
output is byte-identical to 0.5.3.
|
||||
|
||||
[Release-Notes 0.5.4](https://gitea.hellion-forge.cloud/JonKazama-Hellion/HellionChat/releases/tag/v0.5.4)
|
||||
[Release Notes 0.5.4](https://gitea.hellion-forge.cloud/JonKazama-Hellion/HellionChat/releases/tag/v0.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.
|
||||
First attempt at closing the CodeQL critical alert in `ImGuiUtil.WrapText`. Encoded byte buffer length is validated via
|
||||
`GetByteCount` before pointer arithmetic.
|
||||
|
||||
[Release-Notes 0.5.3](https://gitea.hellion-forge.cloud/JonKazama-Hellion/HellionChat/releases/tag/v0.5.3)
|
||||
[Release Notes 0.5.3](https://gitea.hellion-forge.cloud/JonKazama-Hellion/HellionChat/releases/tag/v0.5.3)
|
||||
|
||||
---
|
||||
|
||||
## Frühere Versionen
|
||||
## Earlier Versions
|
||||
|
||||
Releases vor 0.5.3 (Bootstrap-Phase 0.1.0 bis 0.5.2) sind direkt am GitHub-Release-Stream einsehbar:
|
||||
Releases before 0.5.3 (bootstrap phase 0.1.0 to 0.5.2) are available directly on the Gitea release stream:
|
||||
|
||||
[Alle Releases](https://gitea.hellion-forge.cloud/JonKazama-Hellion/HellionChat/releases)
|
||||
[All Releases](https://gitea.hellion-forge.cloud/JonKazama-Hellion/HellionChat/releases)
|
||||
|
||||
---
|
||||
|
||||
## Pflege-Hinweis
|
||||
## Maintenance Note
|
||||
|
||||
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.
|
||||
The source of truth for the user-facing changelog is the `changelog:` block in `HellionChat/HellionChat.yaml`.
|
||||
`repo.json` and the GitHub release body are fed from there. This file (`docs/CHANGELOG.md`) is a curated summary with
|
||||
links to the release pages and is updated manually on each version bump.
|
||||
|
||||
+136
-132
@@ -1,174 +1,178 @@
|
||||
# Hellion Chat — Roadmap
|
||||
|
||||
Geplante Arbeit nach dem v1.0.0 Standalone-Cut. Diese Liste ist absichtlich grob: konkrete Specs, Größenschätzungen und
|
||||
Repro-Steps liegen im internen Backlog. Tracking nach außen läuft über
|
||||
[Gitea Issues](https://gitea.hellion-forge.cloud/JonKazama-Hellion/HellionChat/issues) mit dem `roadmap`-Label, sobald
|
||||
ein Item für einen Cycle eingeplant ist.
|
||||
Planned work after the v1.0.0 standalone cut. This list is intentionally high-level: concrete specs, size estimates and
|
||||
repro steps live in the internal backlog. External tracking runs via
|
||||
[Gitea Issues](https://gitea.hellion-forge.cloud/JonKazama-Hellion/HellionChat/issues) with the `roadmap` label once an
|
||||
item is scheduled for a cycle.
|
||||
|
||||
Reihenfolge ist Priorität, nicht Garantie. Items können sich verschieben oder ganz wegfallen wenn sie sich beim
|
||||
Brainstorm als nicht passend zur Privacy-First-Schnittmenge des Plugins erweisen.
|
||||
Order reflects priority, not a guarantee. Items may shift or be dropped entirely if they turn out to be a poor fit for
|
||||
the plugin's privacy-first scope during brainstorming.
|
||||
|
||||
---
|
||||
|
||||
## Nächster Cycle (v1.4.4)
|
||||
## Next Cycle (v1.4.4)
|
||||
|
||||
**Window-Lazy-Open + Render-Init-Cost-Optimisation** — die in v1.4.3 gelegte IAsyncDalamudPlugin-Foundation jetzt für
|
||||
die echten User- spürbaren Wins nutzen. Window-Konstruktion erst beim ersten Open, Render-Path-Init-Kosten in den ersten
|
||||
Frames runter. Konkrete Kandidaten und Größenschätzungen werden im v1.4.4-Brainstorm konsolidiert.
|
||||
**Window-Lazy-Open + Render-Init-Cost Optimisation** — take the `IAsyncDalamudPlugin` foundation laid in v1.4.3 and turn
|
||||
it into wins users can actually feel. Window construction deferred until first open, render-path init cost reduced in
|
||||
the first frames. Concrete candidates and size estimates will be consolidated in the v1.4.4 brainstorm.
|
||||
|
||||
---
|
||||
|
||||
## v1.4.3 — Plugin-Load Async-Init + Repo-Cutover (released 2026-05-08)
|
||||
|
||||
Vierter und größter Sub-Patch der v1.4.x Polish-Sweep-Serie. Plugin auf Dalamud's IAsyncDalamudPlugin-API migriert: der
|
||||
Konstruktor übernimmt nur noch Bootstrap-Essentials (Config-Load, Language-Init, Conflict-Detection), Migrationen,
|
||||
Service-Allokationen, Window- Konstruktion und Hook-Subscription wandern in LoadAsync. Schema- Gate ersetzt die v9 → v16
|
||||
Migrations-Kette; Configs auf Schema v16+ laden direkt, ältere Configs triggern eine "install v1.4.2
|
||||
first"-Fehlermeldung. AutoTranslate.PreloadCache vom Load-Pfad runter. FontManager.BuildFonts läuft sync am Start von
|
||||
LoadAsync, Dalamud baut den Font-Atlas auf seiner eigenen Pipeline. Custom-Repo-URL auf `gitea.hellion-forge.cloud`
|
||||
cut-over, das GitHub-Repo bleibt als eingefrorener v1.4.2-Snapshot stehen. Plugin-Load-Zeit liegt bei ~3.7 s Median (5
|
||||
Reloads), vergleichbar mit v1.4.2: Async-Migration ist Foundation für v1.4.4 Lazy-Init- Optimierungen, kein direkter
|
||||
User-spürbarer Win.
|
||||
Fourth and largest sub-patch of the v1.4.x Polish Sweep series. Plugin migrated to Dalamud's `IAsyncDalamudPlugin` API:
|
||||
the constructor handles only bootstrap essentials (config load, language init, conflict detection); migrations, service
|
||||
allocations, window construction and hook subscription move to `LoadAsync`. Schema gate replaces the v9 → v16 migration
|
||||
chain; configs on schema v16+ load directly, older configs trigger an "install v1.4.2 first" error.
|
||||
`AutoTranslate.PreloadCache` moved off the load path. `FontManager.BuildFonts` runs sync at the start of `LoadAsync`;
|
||||
Dalamud rebuilds the font atlas on its own pipeline. Custom-repo URL cut over to `gitea.hellion-forge.cloud`; the GitHub
|
||||
repo remains as a frozen v1.4.2 snapshot. Plugin load time sits at ~3.7 s median (5 reloads), comparable to v1.4.2 — the
|
||||
async migration is a foundation for v1.4.4 lazy-init optimisations rather than an immediate user-perceived win.
|
||||
|
||||
## v1.4.2 — ChatLog Frame-Hot-Path (released <Datum>)
|
||||
## v1.4.2 — ChatLog Frame-Hot-Path (released 2026-05-08)
|
||||
|
||||
Dritter Sub-Patch der v1.4.x Polish-Sweep-Serie. Per-Frame- Allokationen aus dem ChatLogWindow-Render-Pfad und der
|
||||
Settings-StatusBar eliminiert. Card-Mode-Border-Loop in DrawMessages hebt fünf Invarianten in einen Pre-Loop-Hoist,
|
||||
AutoTellTabTint bekommt einen Per-Tab-Cache via TabTintCache (separate Validation-Keys pro Cache, kein
|
||||
Cross-Invalidation), StatusBar zieht den Cache-Gate-Check vor die Aggregations und ersetzt LINQ Sum+Count durch eine
|
||||
Single-Pass-Foreach.
|
||||
Third sub-patch of the v1.4.x Polish Sweep series. Per-frame allocations eliminated from the ChatLogWindow render path
|
||||
and the settings status bar. Card-mode border loop in `DrawMessages` hoists five invariants into a pre-loop hoist;
|
||||
`AutoTellTabTint` gets a per-tab cache via `TabTintCache` (separate validation keys per cache, no cross-invalidation);
|
||||
status bar moves the cache-gate check before the aggregation and replaces LINQ `Sum`+`Count` with a single-pass foreach.
|
||||
|
||||
## v1.4.1 — Theme Engine Performance (released <Datum>)
|
||||
## v1.4.1 — Theme Engine Performance (released 2026-05-08)
|
||||
|
||||
Zweiter Sub-Patch der v1.4.x Polish-Sweep-Serie. ABGR-Cache auf den Theme-Records pre-computed, HellionStyle.PushGlobal
|
||||
liest aus dem Cache statt pro Slot pro Frame zu konvertieren. **~13 % Render-Time-Recovery** im Smoke-Test
|
||||
(Plan-Erwartung 2-6 % war konservativ, real ~10-15 %). Custom-Theme-Hot-Reload überlebt transient File-Locks via
|
||||
Last-Known-Good-Snapshot. Plus: Synthwave Sunset als zehnter Built-In, Author-Credits auf Hellion Forge konsolidiert,
|
||||
Mint Grove + Forge Merchantman auf Carla Beleandis als Community-Thanks.
|
||||
Second sub-patch of the v1.4.x Polish Sweep series. ABGR cache pre-computed on theme records; `HellionStyle.PushGlobal`
|
||||
reads from the cache instead of converting per slot per frame. **~13 % render-time recovery** in smoke tests (plan
|
||||
estimate of 2–6 % was conservative; real result ~10–15 %). Custom-theme hot-reload survives transient file locks via
|
||||
last-known-good snapshot. Plus: Synthwave Sunset as the tenth built-in, author credits consolidated under Hellion Forge,
|
||||
Mint Grove + Forge Merchantman credited to Carla Beleandis as a community thanks.
|
||||
|
||||
## v1.4.0 — Critical Lifecycle Fixes (released 2026-05-07)
|
||||
|
||||
Erster Sub-Patch der v1.4.x Polish-Sweep-Serie. Sieben P0- Findings aus Audit-Pass-3 und Pass-4 abgearbeitet:
|
||||
async-void-Loads, fehlende IsBackground-Flags, GC.Collect in Dispose, DeferredSave-Race und Pre-v13-Backup-Lookup für
|
||||
WindowOpacity. Keine Schema-Bumps, keine Funktions- Änderungen für den User außer dass Reload und Shutdown spürbar
|
||||
sauberer laufen.
|
||||
First sub-patch of the v1.4.x Polish Sweep series. Seven P0 findings from audit passes 3 and 4 resolved: async-void
|
||||
loads, missing `IsBackground` flags, `GC.Collect` in Dispose, deferred-save race and pre-v13 backup lookup for
|
||||
`WindowOpacity`. No schema bumps, no user-facing behaviour changes other than reload and shutdown running noticeably
|
||||
cleaner.
|
||||
|
||||
## v1.3.0 - Plugin Integrations: Honorific (released 2026-05-07)
|
||||
## v1.3.0 — Plugin Integrations: Honorific (released 2026-05-07)
|
||||
|
||||
Erster Cycle der Plugin-Integrations-Roadmap. Honorific-Custom- Titles werden im Chat-Header angezeigt, mit Auto-Detect
|
||||
und silent Fallback. Neuer Integrations-Settings-Tab. Pattern- Etablierer für die fünf folgenden Cycles (Context-Menu,
|
||||
NotificationMaster, RP-Status-Block, ExtraChat, XIVIM).
|
||||
First cycle of the plugin integrations roadmap. Honorific custom titles displayed in the chat header with auto-detect
|
||||
and silent fallback. New Integrations settings tab. Pattern-setter for the five following cycles (Context Menu,
|
||||
NotificationMaster, RP Status Block, ExtraChat, XIVIM).
|
||||
|
||||
Spec: [Plugin-Integrationen-Übersicht](../Hellion%20Chat%20Plugin-Integrationen.md)
|
||||
Spec: [Plugin Integrations Overview](../Hellion%20Chat%20Plugin-Integrationen.md)
|
||||
|
||||
## v1.2.3 — Theme Expansion (released 2026-05-06)
|
||||
|
||||
Vier neue Built-In-Themes: Night Blue, Indigo Violet, Forge Merchantman, Hellion Spectrum (Deuteran/Protan-safe). Keine
|
||||
Engine-Änderungen. Siehe `docs/CHANGELOG.md`.
|
||||
Four new built-in themes: Night Blue, Indigo Violet, Forge Merchantman, Hellion Spectrum (Deuteran/Protan-safe). No
|
||||
engine changes. See `docs/CHANGELOG.md`.
|
||||
|
||||
(v1.2.2 wurde verbrannt weil das `repo.json`-Manifest beim ersten Push nicht synchron mitgebumpt wurde — Re-Release als
|
||||
v1.2.3 mit kompletter Manifest-Synchronisation.)
|
||||
(v1.2.2 was burned because the `repo.json` manifest was not bumped in sync on the first push — re-released as v1.2.3
|
||||
with full manifest synchronisation.)
|
||||
|
||||
## v1.2.1 — Settings Cleanup (released 2026-05-06)
|
||||
|
||||
Re-sortierte Settings (9 Cards thematisch), 4 tote Settings entfernt, Auto-Migration v15 → v16 ohne Daten-Verlust.
|
||||
Settings re-sorted thematically (9 cards), 4 dead settings removed, auto-migration v15 → v16 without data loss.
|
||||
|
||||
## v1.2.0 — Layout Refresh (released 2026-05-05)
|
||||
|
||||
Top-Tabs-Refresh, Sidebar-Tab-Icons, Bottom-Status-Bar, Card-Rows als Default-Message-Render, Auto-Tell-Tab-Hashing.
|
||||
Top tabs refresh, sidebar tab icons, bottom status bar, card rows as default message render, auto-tell tab hashing.
|
||||
|
||||
## v1.1.0 — Theme Foundation (released 2026-05-05)
|
||||
|
||||
Theme-Engine mit fünf Built-In-Themes, Settings-Card-Grid, Custom- Themes via JSON, Theme-Authoring-Doku. Plugin-Icon
|
||||
auf Hellion Forge. Siehe `docs/CHANGELOG.md` für Details.
|
||||
Theme engine with five built-in themes, settings card grid, custom themes via JSON, theme authoring docs. Plugin icon
|
||||
updated to Hellion Forge hammer. See `docs/CHANGELOG.md` for details.
|
||||
|
||||
Aus dem ursprünglichen v1.1.0-Plan (Ad-Block / Spam-Filter, Receive- Suppressed-Tells-Toggle) wurden zugunsten der
|
||||
Theme-Engine zurück gestellt — beide Items leben weiter im Mittelfrist-Block.
|
||||
|
||||
## Mittelfristig (v1.4.x+)
|
||||
|
||||
- **Plugin-Integrations-Roadmap (Cycles 2-6)** - sechs Plugin- Integrationen geplant, Honorific (Cycle 1) ist live,
|
||||
danach folgen Context-Menu, NotificationMaster, RP-Status-Block, ExtraChat und XIVIM in eigenen Cycles. Spec und
|
||||
Cycle-Reihenfolge in [Plugin-Integrationen-Übersicht](../Hellion%20Chat%20Plugin-Integrationen.md).
|
||||
- **Ad-Block / Spam-Filter** — Hybrid-Konzept aus eigenem Light-Filter und optionaler `NoSoliciting`-IPC-Integration.
|
||||
Adressiert Werbe-Spam in öffentlichen Channels und Tells. Aus dem v1.1.0-Plan zurückgestellt.
|
||||
- **Receive-Suppressed-Tells-Toggle** — Auto-Tell-Tabs greift auch wenn ein Drittplugin (z.B. XIVMessenger) die
|
||||
/tell-Anzeige global suppressed. Gleicher Hook-Layer wie Ad-Block, deshalb gebündelt.
|
||||
- **Database-Viewer Inline-Search** — Volltext-Suche im DB-Viewer via SQLite FTS5. Aktuell gibt es nur Datums- und
|
||||
Channel-Filter.
|
||||
- **TempTell Persistence** — Pin-Toggle auf TempTell-Tabs damit ausgewählte Tells einen Relog überleben. Tester-Wunsch
|
||||
von Jingliu.
|
||||
- **FontManager Async-Refactor** — `LoadGameSymFontAsync` aus dem blockierenden Plugin-Constructor herausziehen.
|
||||
Cold-Start-Hitching beim ersten Plugin-Start beheben (Severity niedrig, Plugin ist funktional).
|
||||
- **Separate Opacity Active vs. Inactive** — zweiter Slider für inaktive Fenster-Deckkraft. Upstream lehnt das ab; wir
|
||||
können hier anders entscheiden.
|
||||
- **Failed-Tell-Notification** — sichtbare Nachricht bei /tell-Fail (offline, restricted instance, blacklisted,
|
||||
world-mismatch) statt stillem Failure.
|
||||
- **Per-Tab Sound-Notification** — Sound-Toggle und optional eigene .wav pro Tab, mit Mute-In-Combat-Option.
|
||||
|
||||
## Langfrist (v1.x+)
|
||||
|
||||
### Storage-Backends (drei Stufen Bestätigung)
|
||||
|
||||
- MySQL/MariaDB-Backend für Multi-Device-Setups
|
||||
- PostgreSQL-Backend
|
||||
- AES-256-Verschlüsselung für sensible Channels mit lokalem Key
|
||||
|
||||
### Linux-spezifisch
|
||||
|
||||
- WireGuard-Network-Detection als optionaler Filter-Trigger
|
||||
- libnotify-Integration für native Linux-Toasts
|
||||
- XDG-Compliance (komplex unter Wine)
|
||||
|
||||
### UX und Tab-Management
|
||||
|
||||
- **Regex Tab Routing** — Plugin-Output-Spam in eigene Tabs, Tells bestimmter Personen automatisch sortieren. Klar
|
||||
abgegrenzt zum Ad-Block: Routing sortiert in Views, Block versteckt global.
|
||||
- **Auto-Detect Duties** — Tab-Switch beim Duty-Start via Condition-Flag.
|
||||
- **UX Bundle** — Vertical-Tab-Bar als Layout-Option, Shift+Mousewheel zum Tab-Header-Scrollen ohne Aktivierung,
|
||||
globaler Hotkey zum Schließen des aktiven Tabs.
|
||||
- **Configure Tab Title** — konfigurierbares Tab-Title-Format (Name / Name + abgekürzter World / voller Name / Custom),
|
||||
pro Tab überschreibbar.
|
||||
- **Name Display Options** — analog zu FFXIV-Vanilla (voller Name, Vorname abgekürzt, Initialen), per-Channel-Override
|
||||
möglich.
|
||||
- **Item & Flag Linking** — Outgoing: Shift-Klick auf Item/Flag sendet ins fokussierte Plugin-Input. Incoming:
|
||||
Item-Links und Map-Coords klickbar.
|
||||
- **Color Currently Selected Input Channel** — Channel-Selector-Button im Input-Bar mit Channel-Farbe einfärben.
|
||||
- **Plugin-Disclosure Pre-Send Filter** — konfigurierbare Wort-/Regex-Liste blockiert das Senden mit Pre-Send-Confirm.
|
||||
Schutz vor versehentlicher Plugin-Nennung in öffentlichen Channels.
|
||||
- **Chat Clear on Name Change** — bei Charakter-Namensänderung lokalen Verlauf migrieren oder löschen, Default Wipe für
|
||||
maximale Privacy.
|
||||
- **Hide Plugin Window on NG+ Screen** — Hide-Logik um zusätzliche Addon-Namen erweitern.
|
||||
- **Kick from Novice Network** — Mentor-Nische, Context-Menü-Eintrag mit Confirmation.
|
||||
- **Text-to-Speech für /tell** — eingehende Tells via TTS, optional pro Sender, mit Channel-Filter und Mute-In-Combat.
|
||||
Geringe Priorität.
|
||||
|
||||
### Distribution und Branding
|
||||
|
||||
- Hand-gezeichnetes Hellion-Logo (aktuell Platzhalter aus dem Hellion-Online-Media-Brand-Repo)
|
||||
- GitHub Action für automatischen `repo.json`-Sync nach Tag-Push
|
||||
- Submission ans Dalamud-Main-Plugin-Repo (zusätzlich zum Custom-Repo)
|
||||
Items from the original v1.1.0 plan (ad-block / spam filter, receive-suppressed-tells toggle) were deferred in favour of
|
||||
the theme engine — both items live on in the mid-term block.
|
||||
|
||||
---
|
||||
|
||||
## Bug-Verifizierungen
|
||||
## Mid-Term (v1.4.x+)
|
||||
|
||||
Aus dem Upstream-Issue-Tracker übernommen, in Hellion Chat 1.0.0 noch nicht reproduziert oder verifiziert. Werden bei
|
||||
Gelegenheit gegen den aktuellen Stand getestet.
|
||||
|
||||
- **Right-Click Whisper Error** in Field Ops / Special Instances (Eureka, Bozja, Occult Crescent, DRS) — Upstream
|
||||
[#168](https://github.com/Infiziert90/ChatTwo/issues/168). Reply-Helper scheint `@World`-Suffix zu schlucken.
|
||||
- **FPS Drops with Plugin active** — Upstream [#145](https://github.com/Infiziert90/ChatTwo/issues/145). 10–20 % Drop
|
||||
seit upstream v1.29.19.0. v1.0.0 hat mehrere Fixes auf den verdächtigen Pfaden, Repro-Test gegen aktuellen Stand
|
||||
offen.
|
||||
- **Add Blacklist from Plugin Window** — Upstream [#140](https://github.com/Infiziert90/ChatTwo/issues/140). Right-Click
|
||||
Add-to-Blacklist wirft "Cannot locate character with that name", via Vanilla-Chat funktioniert es.
|
||||
- **DB-Viewer Column Sort** — sortiert State-Column lexikografisch statt numerisch (10 vor 2). XIVIM
|
||||
[#82](https://github.com/NightmareXIV/XIVInstantMessenger/issues/82), Repro in Hellion Chat offen.
|
||||
- **Plugin Integrations Roadmap (Cycles 2–6)** — six plugin integrations planned; Honorific (Cycle 1) is live, followed
|
||||
by Context Menu, NotificationMaster, RP Status Block, ExtraChat and XIVIM in their own cycles. Spec and cycle order in
|
||||
[Plugin Integrations Overview](../Hellion%20Chat%20Plugin-Integrationen.md).
|
||||
- **Ad-Block / Spam Filter** — hybrid concept combining a lightweight built-in filter with optional `NoSoliciting` IPC
|
||||
integration. Addresses ad-spam in public channels and tells. Deferred from the v1.1.0 plan.
|
||||
- **Receive-Suppressed-Tells Toggle** — auto-tell tabs trigger even when a third-party plugin (e.g. XIVMessenger)
|
||||
globally suppresses /tell display. Same hook layer as ad-block, so they are bundled.
|
||||
- **Database Viewer Inline Search** — full-text search in the DB viewer via SQLite FTS5. Currently only date and channel
|
||||
filters are available.
|
||||
- **TempTell Persistence** — pin toggle on TempTell tabs so selected tells survive a relog. Tester request from Jingliu.
|
||||
- **FontManager Async Refactor** — move `LoadGameSymFontAsync` out of the blocking plugin constructor. Fix cold-start
|
||||
hitching on first plugin load (low severity; plugin is functional).
|
||||
- **Separate Opacity Active vs. Inactive** — second slider for inactive window opacity. Upstream declines this; we can
|
||||
decide differently here.
|
||||
- **Failed-Tell Notification** — visible message on /tell failure (offline, restricted instance, blacklisted,
|
||||
world-mismatch) instead of silent failure.
|
||||
- **Per-Tab Sound Notification** — sound toggle and optionally a custom .wav per tab, with mute-in-combat option.
|
||||
|
||||
---
|
||||
|
||||
## Lizenz-Boundary
|
||||
## Long-Term (v1.x+)
|
||||
|
||||
Hellion Chat ist EUPL-1.2-lizenziert. Konzept-Imports aus AGPL-3.0-Plugins (z.B. XIV Instant Messenger) sind
|
||||
ausschließlich architektonische Inspiration, kein Code-Port. Code-Imports aus dem Upstream-Bestand sind seit v1.4.x
|
||||
abgeschlossen, weil Chat 2 in einem grundlegenden Rework ist und selektive Patches nicht mehr sauber portierbar sind.
|
||||
Stand und Begründung in [`UPSTREAM_SYNC.md`](UPSTREAM_SYNC.md).
|
||||
### Storage Backends (three-stage confirmation)
|
||||
|
||||
- MySQL/MariaDB backend for multi-device setups
|
||||
- PostgreSQL backend
|
||||
- AES-256 encryption for sensitive channels with a local key
|
||||
|
||||
### Linux-Specific
|
||||
|
||||
- WireGuard network detection as an optional filter trigger
|
||||
- libnotify integration for native Linux toasts
|
||||
- XDG compliance (complex under Wine)
|
||||
|
||||
### UX and Tab Management
|
||||
|
||||
- **Regex Tab Routing** — route plugin output spam into dedicated tabs, auto-sort tells from specific people. Clearly
|
||||
scoped against ad-block: routing sorts into views, blocking hides globally.
|
||||
- **Auto-Detect Duties** — tab switch on duty start via condition flag.
|
||||
- **UX Bundle** — vertical tab bar as a layout option, Shift+Mousewheel to scroll tab headers without activating them,
|
||||
global hotkey to close the active tab.
|
||||
- **Configure Tab Title** — configurable tab title format (name / name + abbreviated world / full name / custom),
|
||||
overridable per tab.
|
||||
- **Name Display Options** — analogous to FFXIV vanilla (full name, first name abbreviated, initials), per-channel
|
||||
override possible.
|
||||
- **Item & Flag Linking** — outgoing: Shift-click on an item/flag sends it to the focused plugin input. Incoming: item
|
||||
links and map coordinates are clickable.
|
||||
- **Color Currently Selected Input Channel** — tint the channel-selector button in the input bar with the current
|
||||
channel colour.
|
||||
- **Plugin-Disclosure Pre-Send Filter** — configurable word/regex list blocks sending with a pre-send confirmation.
|
||||
Protects against accidentally mentioning plugins in public channels.
|
||||
- **Chat Clear on Name Change** — on character name change, migrate or wipe local history; default is wipe for maximum
|
||||
privacy.
|
||||
- **Hide Plugin Window on NG+ Screen** — extend hide logic to cover additional addon names.
|
||||
- **Kick from Novice Network** — mentor niche; context menu entry with confirmation.
|
||||
- **Text-to-Speech for /tell** — incoming tells via TTS, optionally per sender, with channel filter and mute-in-combat.
|
||||
Low priority.
|
||||
|
||||
### Distribution and Branding
|
||||
|
||||
- Hand-drawn Hellion logo (currently a placeholder from the Hellion Online Media brand repo)
|
||||
- GitHub Action for automatic `repo.json` sync after tag push
|
||||
- Submission to the Dalamud main plugin repository (in addition to the custom repo)
|
||||
|
||||
---
|
||||
|
||||
## Bug Verifications
|
||||
|
||||
Carried over from the upstream issue tracker; not yet reproduced or verified in Hellion Chat 1.0.0. Will be tested
|
||||
against the current state when opportunity allows.
|
||||
|
||||
- **Right-Click Whisper Error** in Field Ops / Special Instances (Eureka, Bozja, Occult Crescent, DRS) — upstream
|
||||
[#168](https://github.com/Infiziert90/ChatTwo/issues/168). Reply helper appears to swallow the `@World` suffix.
|
||||
- **FPS Drops with Plugin Active** — upstream [#145](https://github.com/Infiziert90/ChatTwo/issues/145). 10–20 % drop
|
||||
since upstream v1.29.19.0. v1.0.0 includes several fixes on the suspected paths; repro test against the current state
|
||||
is open.
|
||||
- **Add Blacklist from Plugin Window** — upstream [#140](https://github.com/Infiziert90/ChatTwo/issues/140). Right-click
|
||||
add-to-blacklist throws "Cannot locate character with that name"; works via vanilla chat.
|
||||
- **DB Viewer Column Sort** — State column sorts lexicographically instead of numerically (10 before 2). XIVIM
|
||||
[#82](https://github.com/NightmareXIV/XIVInstantMessenger/issues/82); repro in Hellion Chat open.
|
||||
|
||||
---
|
||||
|
||||
## Licence Boundary
|
||||
|
||||
Hellion Chat is licensed under EUPL-1.2. Concept imports from AGPL-3.0 plugins (e.g. XIV Instant Messenger) are
|
||||
architectural inspiration only — no code was ported. Code imports from the upstream codebase are complete as of v1.4.x
|
||||
because Chat 2 is undergoing a fundamental rework and selective patches are no longer cleanly portable. Status and
|
||||
rationale in [`UPSTREAM_SYNC.md`](UPSTREAM_SYNC.md).
|
||||
|
||||
Reference in New Issue
Block a user