chore(release): bump assembly version to 1.10.0
Style foundation cycle closed. Smoke tests green across the sidebar, the tab strip, the status bar, the theme preview and both message densities. Download links stay on v1.5.6 deliberately: v1.6.0 through v1.10.0 are local development states and nobody should update into one. The README badge stays there too, since it points at the published release. The roadmap now reflects the actual sequence -- the old "next cycle" entry still named v1.5.7 ad-block, which has been behind the v2.x UI rebuild since May. Verified file by file: csproj, repo.json (both assembly versions, links untouched), CHANGELOG, ROADMAP. Four TODOs remain in the tree, all pre-existing and none from this cycle.
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
<Project Sdk="Dalamud.NET.Sdk/15.0.0">
|
||||
<PropertyGroup>
|
||||
<!-- Independent versioning; see yaml changelog for upstream Chat 2 base -->
|
||||
<Version>1.9.0</Version>
|
||||
<Version>1.10.0</Version>
|
||||
<ImplicitUsings>enable</ImplicitUsings>
|
||||
<Nullable>enable</Nullable>
|
||||
<!-- Use lock file to pin exact versions -->
|
||||
|
||||
@@ -11,6 +11,62 @@ releases as an overview and links to the release pages for details.
|
||||
|
||||
---
|
||||
|
||||
## [1.10.0] — unreleased (local only)
|
||||
|
||||
The style foundation the v2.x plan has been carrying since May. Custom-drawn chrome instead of
|
||||
ImGui defaults, and a layout layer that survives display scaling. **Not published** — the public
|
||||
release stays at v1.5.6.
|
||||
|
||||
### Added
|
||||
|
||||
- Sidebar rows now have surfaces: the active tab gets a raised fill and a 2px accent bar, hover
|
||||
fades in and back out, and rows sit flush with separators between them.
|
||||
- Top tabs are drawn rather than borrowed from ImGui selectables: their own height, an accent
|
||||
underline on the active one, and three text states.
|
||||
- Unread markers are count badges in the accent colour rather than a red dot. Red reads as an
|
||||
error; an unread message is not one.
|
||||
- Status bar slots are pills — channel with its status dot, privacy with its lock, counts, tells,
|
||||
and the version right-aligned. Each slot drops out on its own when the window gets too narrow.
|
||||
- Widget gallery under `/hellion widgets` (debug builds only) showing every drawn widget in its
|
||||
states.
|
||||
|
||||
### Fixed
|
||||
|
||||
- Compact message rows assumed a constant height and were clipped with a fixed 18px. They wrap, so
|
||||
they are not constant, and the real single line is 17px at the default font — the list drifted
|
||||
against the scrollbar. Both densities now plan from measured heights.
|
||||
- The message height cache ignored display scaling, which feeds word wrapping. Changing the scale
|
||||
left every cached row stale.
|
||||
- Layout constants across the sidebar, input bar, honorific header and message list did not scale.
|
||||
At 150% the text grew and the boxes did not; the quick buttons stopped fitting their column.
|
||||
- Vertical offsets were frozen values that only centred correctly at one font size. They are
|
||||
measured now.
|
||||
- The hover sheen kept its own timestamp map and only cleared it on un-hover, so a row that
|
||||
disappeared while hovered leaked its entry until the plugin reloaded.
|
||||
- Quick-button tooltips rendered inside the icon font, which has no ASCII glyphs, and came out as
|
||||
empty boxes. They are also localised now.
|
||||
- The theme preview in settings had been showing surfaces, an accent bar and an unread marker that
|
||||
the real sidebar never drew. Both sides match now, and the preview reads the same colour tokens.
|
||||
|
||||
### Changed
|
||||
|
||||
- Hover is a held value that rises at 14/s and falls at 8/s, rather than a one-shot sweep that
|
||||
stopped after 0.65s while the pointer was still there.
|
||||
- The active surface token went from 10% to 25% toward the primary colour. At 10% it was
|
||||
indistinguishable from an idle row.
|
||||
- Row fills follow the window's own opacity, so the sidebar no longer sits as a solid block inside
|
||||
a translucent window.
|
||||
|
||||
### Internal
|
||||
|
||||
- New style layer: `Metrics` (scale-aware layout values), `HoverState` (held hover per element),
|
||||
and five drawn widgets — Row, Badge, IconButton, LineDivider, Pill.
|
||||
- Pure halves split out for the build suite: `MetricsMath`, `HoverMath`, `WidgetGeometry`,
|
||||
`LayoutFingerprint`.
|
||||
- Test suite 829 → 892, and `StatusBarCacheTests` is back in the build after sitting in the
|
||||
exclusion block.
|
||||
|
||||
|
||||
## [1.9.0] — unreleased (local only)
|
||||
|
||||
Polish, tester-beta preparation and a concurrency hardening pass. **Not published** — the public
|
||||
|
||||
+21
-2
@@ -10,9 +10,28 @@ be a poor fit for the plugin's privacy-first scope during brainstorming.
|
||||
|
||||
---
|
||||
|
||||
## Next Cycle
|
||||
## Current development (unreleased)
|
||||
|
||||
**v1.5.7 — Ad-Block / Spam-Filter** is the next planned scope: the hybrid ad-block and
|
||||
The published release is **v1.5.6**. Development since then runs as a UI rebuild towards v2.0.0 and
|
||||
is not published: the whole window layer is being rewritten from ImGui defaults to custom drawing.
|
||||
Versions v1.6.0 through v1.10.0 are local development states, and `repo.json` deliberately keeps
|
||||
its download links on v1.5.6 so nobody updates into a partial state.
|
||||
|
||||
Where it stands:
|
||||
|
||||
- **v1.6.0 to v1.8.x** — new window layer, settings window, channel pop-outs, and the restoration
|
||||
pass that brought v1.5.6 behaviour back onto it.
|
||||
- **v1.9.0** — polish and a concurrency hardening pass.
|
||||
- **v1.10.0** — the style foundation: a scale-aware layout layer, held hover state, and five drawn
|
||||
widgets, applied to the sidebar, the tab strip and the status bar.
|
||||
- **v1.11.0 onwards** — settings window, then the sidebar moving from tab rows to channel rows,
|
||||
then typography and message cards.
|
||||
|
||||
A tester beta follows once the visual pass is complete.
|
||||
|
||||
## After that
|
||||
|
||||
**v1.5.7 — Ad-Block / Spam-Filter** remains the next feature scope: the hybrid ad-block and
|
||||
spam-filter cycle, combining a lightweight built-in filter with optional `NoSoliciting`
|
||||
IPC integration. Plugin Integrations Wave 2-6 (Context-Menu, NotificationMaster, Moodles,
|
||||
ExtraChat, XIVIM Quick-DM) follows.
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
"Author": "Jon Kazama (Hellion Forge)",
|
||||
"Name": "Hellion Chat",
|
||||
"InternalName": "HellionChat",
|
||||
"AssemblyVersion": "1.9.0.0",
|
||||
"AssemblyVersion": "1.10.0.0",
|
||||
"Description": "A Hellion Forge plugin — privacy-focused chat replacement for FINAL FANTASY XIV, built for EU, US and JP data rules.\n\nBy default only your own conversations are stored. Public chat, NPC dialogue, system messages and battle logs are discarded at the storage layer unless you opt in. Retention windows are configurable per channel, history can be wiped retroactively, and everything can be exported on demand.\n\nFeatures:\n- Channel whitelist with a Privacy-First default\n- Per-channel retention with a daily background sweep\n- Retroactive cleanup with preview and Ctrl+Shift confirm\n- Export to Markdown, JSON or CSV\n- First-run wizard with four profiles: Privacy-First, Casual, Roleplay, Full History\n- Multi-language UI (24 locales) with live language switching\n- Own config and database — no shared state with other plugins\n\nBased on Chat 2 by Infi and Anna (EUPL-1.2).\nSupport: https://discord.gg/X9V7Kcv5gR",
|
||||
"ApplicableVersion": "any",
|
||||
"RepoUrl": "https://gitea.hellion-forge.cloud/JonKazama-Hellion/HellionChat",
|
||||
@@ -25,7 +25,7 @@
|
||||
"DownloadLinkInstall": "https://gitea.hellion-forge.cloud/JonKazama-Hellion/HellionChat/releases/download/v1.5.6/latest.zip",
|
||||
"DownloadLinkUpdate": "https://gitea.hellion-forge.cloud/JonKazama-Hellion/HellionChat/releases/download/v1.5.6/latest.zip",
|
||||
"DownloadLinkTesting": "https://gitea.hellion-forge.cloud/JonKazama-Hellion/HellionChat/releases/download/v1.5.6/latest.zip",
|
||||
"TestingAssemblyVersion": "1.9.0.0",
|
||||
"TestingAssemblyVersion": "1.10.0.0",
|
||||
"IconUrl": "https://gitea.hellion-forge.cloud/JonKazama-Hellion/HellionChat/raw/branch/main/HellionChat/images/icon.png",
|
||||
"ImageUrls": [
|
||||
"https://gitea.hellion-forge.cloud/JonKazama-Hellion/HellionChat/raw/branch/main/HellionChat/images/chatWindow.png",
|
||||
|
||||
Reference in New Issue
Block a user