chore(release): bump to v1.1.0 — theme foundation

This commit is contained in:
2026-05-05 15:04:52 +02:00
parent 916640fb60
commit 52da5d5e23
7 changed files with 153 additions and 21 deletions
+1 -1
View File
@@ -4,7 +4,7 @@
0.1.0 is our bootstrap release; the underlying Chat 2 base is 0.1.0 is our bootstrap release; the underlying Chat 2 base is
called out in the yaml changelog so users can see what it called out in the yaml changelog so users can see what it
derives from. --> derives from. -->
<Version>1.0.3</Version> <Version>1.1.0</Version>
<ImplicitUsings>enable</ImplicitUsings> <ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable> <Nullable>enable</Nullable>
<!-- Honor packages.lock.json on restore so floating version ranges <!-- Honor packages.lock.json on restore so floating version ranges
+63
View File
@@ -31,6 +31,11 @@ description: |-
- Independent plugin state — own config file and database directory, - Independent plugin state — own config file and database directory,
so Hellion Chat does not share state with upstream Chat 2 so Hellion Chat does not share state with upstream Chat 2
v1.1.0 — Theme engine with five built-in themes (Hellion Arctic,
Chat 2 Klassik, Event Horizon, Moonlit Bloom, Mint Grove) plus
JSON-based custom-theme authoring. Settings rebuilt around a card
grid with section detail views. See docs/THEME-AUTHORING.md.
Based on Chat 2 by Infi and Anna, licensed under EUPL-1.2. Based on Chat 2 by Infi and Anna, licensed under EUPL-1.2.
Modding & support: join the Hellion Forge Discord at Modding & support: join the Hellion Forge Discord at
@@ -49,6 +54,64 @@ tags:
- Replacement - Replacement
- Privacy - Privacy
changelog: |- changelog: |-
**Hellion Chat 1.1.0 — Theme Foundation**
First major UI cycle after the standalone v1.0.0 cut. Theme engine,
five built-in themes, customisable JSON themes, modernised settings
layout.
New themes (Settings → Themes):
- **Hellion Arctic** — the brand default, Arctic Cyan + Ember Glow
on industrial slate.
- **Chat 2 Klassik** — Steel Blue on neutral grey, eckige Kanten.
The upstream Chat 2 look on the new engine.
- **Event Horizon** — Cosmic Purple on near-black. Deep-space mood.
- **Moonlit Bloom** — Bloom Magenta + Soft Sage on deep-violet
night.
- **Mint Grove** — Mint Green + Honey Amber on deep forest. First
member of the Grove family.
Theme engine highlights:
- Slug-based selection in Settings → Themes with mini-mockup
previews per theme.
- Click a theme card and the whole plugin (chat, settings,
pop-outs, viewer) repaints instantly.
- Custom themes via JSON in pluginConfigs/HellionChat/themes/.
Example template seeded on first launch.
- Optional per-theme chat-channel colours. When a theme proposes
its own chat colours and yours differ, a dezent banner offers
Apply / Keep — never auto-overwriting.
- Migration v13 → v14: existing users land on Hellion Arctic. Pick
Chat 2 Klassik to keep the upstream look.
Settings layout:
- New card-grid overview on Settings open. Click a card to drill
into the section.
- Breadcrumb back to overview, ESC also returns.
- Detail view drops the redundant tab list — section content uses
the full width.
Branding:
- Plugin icon swapped from the ChatTwo derivative to the Hellion
Forge hammer.
- New docs/THEME-AUTHORING.md walks you through writing your own
themes with the Forge logo on top.
Technical:
- HellionStyle.PushGlobal is now theme-driven. Configuration.
HellionThemeEnabled is deprecated and will be removed in v1.2.0.
- New ThemeRegistry singleton with LastWriteTime-cached custom-
theme loader.
- 51 local unit tests cover the data model, registry, JSON round-
trip and built-in sanity checks.
Based on Chat 2 1.35.3 (upstream Infiziert90/ChatTwo, EUPL-1.2).
**Hellion Chat 1.0.3 — Polish patch** **Hellion Chat 1.0.3 — Polish patch**
- New: optionally hide chat (and every other plugin window) while the - New: optionally hide chat (and every other plugin window) while the
+1 -1
View File
@@ -12,7 +12,7 @@ because no data ever leaves your machine on the maintainer's
infrastructure. Independently of that, the plugin is built so that infrastructure. Independently of that, the plugin is built so that
you can act on your own data the way the GDPR expects. you can act on your own data the way the GDPR expects.
Last reviewed: 2026-05-05 (HellionChat v1.0.3). Last reviewed: 2026-05-05 (HellionChat v1.1.0).
--- ---
+52
View File
@@ -12,6 +12,58 @@ 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 ## [1.0.3] — 2026-05-04 — Polish patch
Vier kleine Polish-Items aus dem Backlog gebündelt: Vier kleine Polish-Items aus dem Backlog gebündelt:
+27 -10
View File
@@ -12,22 +12,39 @@ Privacy-First-Schnittmenge des Plugins erweisen.
--- ---
## Nächster Cycle (v1.1.0) ## Nächster Cycle (v1.2.0)
**Layout Refresh** — sichtbare Modernisierung des Chat-Windows selbst.
- Top-Tabs-Refresh mit Akzent-Pill-Underline statt Background-Fill
- Sidebar-Tabs (existing) bekommen Icons + vertikale Pill am Window-Rand
- Bottom-Status-Bar (Channel-Indikator, Privacy-Badge, Tab-Count,
Tells, Version)
- Card-Rows als Default-Message-Rendering, mit Compact-Density-Toggle
- Per-Tab Custom-Icons im Tabs-Settings-Dialog
- Removal des deprecated `HellionThemeEnabled`/`HellionThemeWindowOpacity`
Configuration-Felder
Spec liegt in [[Hellion Chat UI Modernisierung Spec]] (Vault).
## 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.
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.2.x v1.3.0)
- **Ad-Block / Spam-Filter** — Hybrid-Konzept aus eigenem Light-Filter und - **Ad-Block / Spam-Filter** — Hybrid-Konzept aus eigenem Light-Filter und
optionaler `NoSoliciting`-IPC-Integration. Adressiert Werbe-Spam in optionaler `NoSoliciting`-IPC-Integration. Adressiert Werbe-Spam in
öffentlichen Channels und Tells. Größter Block des Cycles. öffentlichen Channels und Tells. Aus dem v1.1.0-Plan zurückgestellt.
- **Receive-Suppressed-Tells-Toggle** — Auto-Tell-Tabs greift auch wenn ein - **Receive-Suppressed-Tells-Toggle** — Auto-Tell-Tabs greift auch wenn ein
Drittplugin (z.B. XIVMessenger) die /tell-Anzeige global suppressed. Drittplugin (z.B. XIVMessenger) die /tell-Anzeige global suppressed.
Gleicher Hook-Layer wie Ad-Block, deshalb gebündelt. Gleicher Hook-Layer wie Ad-Block, deshalb gebündelt.
## Mittelfristig (v1.1.x v1.2.0)
- **Plugin-weite Theme-Varianten** — über die ChatColours-Presets aus v0.6.0
hinaus. Mehrere komplette Window-Themes (Frame, Surface, Border, Text)
inkl. Farbfamilien mit Helligkeits-Abstufungen. Anknüpfung an
Hellion-Online-Media-Brand-Themes (Event Horizon, Night Blue, Indigo Violet
und weitere).
- **Database-Viewer Inline-Search** — Volltext-Suche im DB-Viewer via - **Database-Viewer Inline-Search** — Volltext-Suche im DB-Viewer via
SQLite FTS5. Aktuell gibt es nur Datums- und Channel-Filter. SQLite FTS5. Aktuell gibt es nur Datums- und Channel-Filter.
- **TempTell Persistence** — Pin-Toggle auf TempTell-Tabs damit ausgewählte - **TempTell Persistence** — Pin-Toggle auf TempTell-Tabs damit ausgewählte
+2 -2
View File
@@ -4,13 +4,13 @@ HellionChat ships and depends on a number of third-party components.
This document lists them, their licences and which of them touch the This document lists them, their licences and which of them touch the
network. It is the inventory referenced by `PRIVACY.md`. network. It is the inventory referenced by `PRIVACY.md`.
Last reviewed: 2026-05-05 (HellionChat v1.0.3). Last reviewed: 2026-05-05 (HellionChat v1.1.0).
--- ---
## Direct NuGet dependencies ## Direct NuGet dependencies
Pinned in `HellionChat/HellionChat.csproj`. Versions reflect the v1.0.3 build. Pinned in `HellionChat/HellionChat.csproj`. Versions reflect the v1.1.0 build.
| Package | Version | Licence | Network | Purpose | | Package | Version | Licence | Network | Purpose |
| --- | --- | --- | --- | --- | | --- | --- | --- | --- | --- |
+7 -7
View File
File diff suppressed because one or more lines are too long