chore(release): close the v1.14.0 cycle
Version to 1.14.0 in the csproj, changelog and roadmap for the local state. Not published: repo.json stays on 1.5.6.0, links untouched. The changelog leads with what the row became and is honest about how it got there: every style decision in this cycle was made by looking at variants in the lab, in-game, against the live theme -- and the two recurring traps of the day (the RGBA/ABGR contrast swap, popups that do not size to their content) each left a guard behind rather than just a fix. Smoke-tested continuously by Flo through the evening rather than at a single gate: the contrast bug, the clipped menu, the hover speed and the seam hardness were all his catches, live, and each is named in the log where it was fixed.
This commit is contained in:
@@ -1,7 +1,7 @@
|
|||||||
<Project Sdk="Dalamud.NET.Sdk/15.0.0">
|
<Project Sdk="Dalamud.NET.Sdk/15.0.0">
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<!-- Independent versioning; see yaml changelog for upstream Chat 2 base -->
|
<!-- Independent versioning; see yaml changelog for upstream Chat 2 base -->
|
||||||
<Version>1.13.0</Version>
|
<Version>1.14.0</Version>
|
||||||
<ImplicitUsings>enable</ImplicitUsings>
|
<ImplicitUsings>enable</ImplicitUsings>
|
||||||
<Nullable>enable</Nullable>
|
<Nullable>enable</Nullable>
|
||||||
<!-- Use lock file to pin exact versions -->
|
<!-- Use lock file to pin exact versions -->
|
||||||
|
|||||||
@@ -11,6 +11,83 @@ releases as an overview and links to the release pages for details.
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
## [1.14.0] — unreleased (local only)
|
||||||
|
|
||||||
|
The input row. It was the one surface a user actually works in and it spoke three
|
||||||
|
shape languages at once — a rounded pill, a square field, five filled default
|
||||||
|
buttons — sitting directly above a status bar that is rounded throughout. This
|
||||||
|
release makes the row one thing, and it teaches the popups the window's own
|
||||||
|
shapes while it is in there. **Not published** — the public release stays at
|
||||||
|
v1.5.6.
|
||||||
|
|
||||||
|
### Added
|
||||||
|
|
||||||
|
- A style lab under `/hellion lab`: variants of UI elements side by side, drawn
|
||||||
|
in real ImGui against the live theme. Permanent, as a dev playground — its
|
||||||
|
radio buttons default to whatever shipped, so the window doubles as a record
|
||||||
|
of which variant won. Every decision in this release was made by looking at it
|
||||||
|
in-game rather than at a drawing.
|
||||||
|
- `PopupRow`, the row a popup is made of: soft hover fill, a two-pixel accent
|
||||||
|
bar on the active entry — the sidebar row's shape, which is also exactly what
|
||||||
|
Character Select+ draws for its own popup entries. The channel picker and the
|
||||||
|
new input-row menu are built from it.
|
||||||
|
- A colour-channel guard in preflight (Block G). `EnsureContrast` works in ABGR,
|
||||||
|
theme colours are RGBA, both are `uint`, and the mistake of feeding one into
|
||||||
|
the other happened six times in a single day — each found only by a human
|
||||||
|
staring at unreadable text. The guard flags any raw theme member reaching the
|
||||||
|
helper; on its first real run it caught three cases a hand-written search had
|
||||||
|
missed minutes earlier.
|
||||||
|
|
||||||
|
### Changed
|
||||||
|
|
||||||
|
- The five filled buttons in the input row are two ghost buttons and a menu.
|
||||||
|
Symbols stay outside because they are used mid-sentence; theme, settings,
|
||||||
|
screenshot mode and hide moved in. The ghosts are flat at rest and glow on
|
||||||
|
hover — the first caller `DrawGlowBorder` ever had.
|
||||||
|
- The screenshot toggle was allowed into the menu only because its state moved
|
||||||
|
to the status bar first, as an accent camera pill that shows while the mode is
|
||||||
|
on. Knowing what the screen shows before the screenshot key is pressed is the
|
||||||
|
entire point of the mode; a state behind a closed menu answers nothing.
|
||||||
|
- The input field paints its own rounded surface and hands ImGui a transparent
|
||||||
|
frame, so the widget draws only text and caret. Focus is a two-pixel accent
|
||||||
|
rail on the left edge — the same mark rows and popups use. The field is about
|
||||||
|
a hundred pixels wider, reclaimed from the button reserve.
|
||||||
|
- The channel pill is chamfered, the corner language of the segmented control,
|
||||||
|
with a faint white depth gradient.
|
||||||
|
- The channel header traded its surface plate for a tenth-opacity accent wash.
|
||||||
|
The plate was the exact shape the settings window abandoned in v1.11.0 — it
|
||||||
|
reads fine on blue themes and vanishes on violet ones.
|
||||||
|
- The sidebar softened, on tester feedback that the transition to the chat field
|
||||||
|
was too hard: the full-width border line under every row is a fading rule now,
|
||||||
|
the gap between list and messages carries a surface wash instead of two hard
|
||||||
|
edges, and the selected tab bridges across it so it touches the conversation
|
||||||
|
it selects.
|
||||||
|
- Hover fades run at a quarter of their old speed with a smoothstep curve —
|
||||||
|
soft start, soft landing. 14/s in was judged light speed; it is 3/s now, and
|
||||||
|
a test guards against drifting back. Every hover in the plugin inherits both
|
||||||
|
changes through the one shared code path.
|
||||||
|
|
||||||
|
### Fixed
|
||||||
|
|
||||||
|
- Popups size themselves from their widest visible entry. Both new popups
|
||||||
|
carried a guessed minimum width, and German outran it within a day —
|
||||||
|
`Schnellauswahl` and `Chat ausblenden` were clipped mid-word.
|
||||||
|
- Popup entry text was unreadable at rest on several themes and only became
|
||||||
|
legible on hover: the RGBA-into-ABGR mistake again, in `PopupRow` and three
|
||||||
|
spots in the lab. Fixed, and the new preflight guard exists so the seventh
|
||||||
|
occurrence dies in CI rather than in a screenshot.
|
||||||
|
- The pill label was raw theme text on an accent fill with no contrast check.
|
||||||
|
|
||||||
|
### Known issues
|
||||||
|
|
||||||
|
- The channel header still recomputes its widths every frame rather than on the
|
||||||
|
status bar's one-second tick.
|
||||||
|
- `Metrics.Scale` still calls a Dalamud property that is marked obsolete.
|
||||||
|
- The first-run wizard is now the last surface drawn in ImGui defaults. It is
|
||||||
|
the next cycle.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
## [1.13.0] — unreleased (local only)
|
## [1.13.0] — unreleased (local only)
|
||||||
|
|
||||||
Typography. The message list was the last surface still drawn in ImGui defaults,
|
Typography. The message list was the last surface still drawn in ImGui defaults,
|
||||||
|
|||||||
+7
-3
@@ -14,7 +14,7 @@ be a poor fit for the plugin's privacy-first scope during brainstorming.
|
|||||||
|
|
||||||
The published release is **v1.5.6**. Development since then runs as a UI rebuild towards v2.0.0 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.
|
is not published: the whole window layer is being rewritten from ImGui defaults to custom drawing.
|
||||||
Versions v1.6.0 through v1.13.0 are local development states, and `repo.json` deliberately keeps
|
Versions v1.6.0 through v1.14.0 are local development states, and `repo.json` deliberately keeps
|
||||||
its download links on v1.5.6 so nobody updates into a partial state.
|
its download links on v1.5.6 so nobody updates into a partial state.
|
||||||
|
|
||||||
Where it stands:
|
Where it stands:
|
||||||
@@ -35,8 +35,12 @@ Where it stands:
|
|||||||
- **v1.13.0** — typography. Named type roles instead of one size, a channel header above the
|
- **v1.13.0** — typography. Named type roles instead of one size, a channel header above the
|
||||||
conversation, timestamps in a column of their own, and rows with a surface. Screenshot mode
|
conversation, timestamps in a column of their own, and rows with a surface. Screenshot mode
|
||||||
reached one of four surfaces that draw a tab name and now reaches all of them.
|
reached one of four surfaces that draw a tab name and now reaches all of them.
|
||||||
- **v1.14.0 onwards** — the input bar, then the first-run wizard: the last two surfaces still
|
- **v1.14.0** — the input row: two ghost buttons and a menu where five filled defaults sat, a
|
||||||
drawn in ImGui defaults.
|
field with its own surface and focus rail, popups built from the sidebar's row shape, and a
|
||||||
|
softened seam between the tab list and the conversation. Plus a style lab under
|
||||||
|
`/hellion lab` and a preflight guard for the RGBA/ABGR contrast trap.
|
||||||
|
- **v1.15.0** — the first-run wizard, the last surface still drawn in ImGui defaults, and the
|
||||||
|
first thing a tester sees.
|
||||||
|
|
||||||
The sidebar is no longer on this list. Earlier drafts had it moving from tab rows to channel
|
The sidebar is no longer on this list. Earlier drafts had it moving from tab rows to channel
|
||||||
rows, but both reasons for that are gone: it was flat and unstyled when the idea was written,
|
rows, but both reasons for that are gone: it was flat and unstyled when the idea was written,
|
||||||
|
|||||||
Reference in New Issue
Block a user