• v1.4.7 d3fdcdf43d

    v1.4.7
    Security / scan (push) Successful in 23s
    Build / Build (Release) (push) Successful in 30s
    Forge Announce / Post changelog to Hellion Forge (push) Successful in 7s
    Release / Build and attach release ZIP (push) Successful in 39s
    Stable

    JonKazama-Hellion released this 2026-05-13 09:07:52 +00:00 | 0 commits to main since this release

    v1.4.7 — Backlog Cleanup and Mid-Features (2026-05-13)

    Eighth sub-patch of the v1.4.x polish-sweep series. First
    user-visible feature bundle since v1.4.5 — pinned tell tabs that
    survive relog, opt-in Honorific glow rendering, and a configurable
    sidebar.

    • TempTell Pin: right-click a TempTell tab in the sidebar to pin
      it. Pinned tabs survive relog, keep their conversation history
      (loaded on demand from the message store), and stay bound to
      the same /tell partner. Hard cap of 5 pinned tabs in a pool
      separate from the 15-tab auto-tell pool — total ceiling is 20
      tabs. New 'Pinned' section in the sidebar with its own divider
      header
    • Honorific Glow outline now renders when the title carries a
      Glow colour. Opt-in via Settings → Integrations → 'Render glow
      outlines (Honorific)' (default off, dodges the per-frame
      DrawList overhead on low-end hardware). Gradient (Color3 /
      GradientColourSet / Wave / Pulse) is parsed but rendered
      statically — a later cycle will port the full animation
    • Sidebar width is now configurable in Theme & Layout (range
      44–160 px). Default stays icon-only; widen to fit section
      headers like 'Active Tells (3)' without truncation
    • Settings Save no longer pops the chat input back to /tell with
      a pinned partner — Configuration.UpdateFrom now preserves the
      runtime CurrentChannel across the persistent-tab merge, and
      TabSwitched deep-clones the seeded channel instead of sharing
      the previous tab's UsedChannel
    • Util/ImGuiUtil.cs DrawArrows IconButton id now uses
      (id + 1).ToString() instead of the operator-precedence quirk
      id + 1.ToString() — generated IDs stay numerically stable
    • Internal: IPluginLogProxy indirection over Dalamud's IPluginLog
      routes all ~91 Plugin.Log call sites through a testable proxy.
      MessageStore.Migrate0 can now run in xUnit without loading
      Dalamud.dll, closing the gap F12.1 left in v1.4.6
    • Internal: TempTab counter switched from an Interlocked cached
      field to a derived Tabs.Count(predicate) — pin-state transitions
      are cold-path and don't need lock-free reads

    Based on Chat 2 1.35.3 (upstream Infiziert90/ChatTwo, EUPL-1.2).

    How to install

    This release is distributed via the HellionChat custom repository, not the Dalamud main plugin repo. To install:

    1. In XIVLauncher: Settings → Experimental → Custom Plugin Repositories
    2. Add the URL: https://gitea.hellion-forge.cloud/JonKazama-Hellion/HellionChat/raw/branch/main/repo.json
    3. Enable, save, then /xlplugins → search Hellion Chat → install

    Project documents

    Licence

    EUPL-1.2. Based on
    Chat 2 by Infi and Anna, also EUPL-1.2.

    Downloads