Commit Graph

183 Commits

Author SHA1 Message Date
JonKazama-Hellion 23e0f37dfb Bump to v0.1.2 with About-tab rebrand and Hellion-style README
Manifest moves to 0.1.2.0 so existing testers get an in-place
update offer once the matching GitHub release is published.

Changes since 0.1.1 are surface and packaging:

  - The inherited About tab now reflects the fork: Hellion Online
    Media as maintainer with hellion-media.de as the contact
    channel, EUPL-1.2 dual-copyright statement, FINAL FANTASY XIV
    SQUARE ENIX disclaimer, explicit acknowledgment of Chat 2 by
    Infi & Anna as the upstream foundation, and the original
    ChatTwo translator list relabelled as upstream Crowdin
    contributors so it isn't mistaken for Hellion translators.
  - Cherry-picked the upstream DBViewer UI improvements
    (auto-scroll-reset on page change, localized tooltips on the
    date reset, folder export, export-running notifications and
    the pagination arrows).
  - README rewritten in the Hellion project style: German prose,
    tech-stack table, architecture tree, database column list, a
    proper migration guide for users coming from Chat 2 (with
    Linux and Windows manual recovery commands), upstream-sync
    workflow notes for cherry-picks, project-status checklist
    separating bootstrap-done from phase-2-open work, and the
    Hellion Online Media footer.
  - repo.json regenerated to point at the v0.1.2 GitHub release
    asset URL.

Bundle changelog summarises the same so testers see the new
content in their plugin list before they pull the update.
2026-05-02 00:13:54 +02:00
JonKazama-Hellion 135f7a9bf7 Bump to v0.1.1 with packaging and migration fixes
Manifest version moves to 0.1.1.0 so Dalamud offers existing
testers an in-place update once the new release is published.

Description rewritten to lead with the "built on top of Chat 2"
framing — every upstream feature, command and shortcut still
works identically — and to position the privacy additions as
alignment with modern EU, US and Japanese data-protection
expectations rather than citing specific paragraphs.

Punchline becomes "Chat 2 with privacy controls aligned to EU,
US and JP rules" so the plugin-list one-liner reflects what's
actually different rather than just calling itself a fork.

Changelog entry for 0.1.1 covers the three changes since 0.1.0:
icon now in the bundle (DalamudPackager override), icon resized
to 256×256, migration hardened with per-file try/catch and a
warning notification when files are locked, plus the README
troubleshooting section.

repo.json regenerated to 0.1.1.0 with the v0.1.1 release asset
URL so the custom-repo manifest matches what GitHub will serve.
2026-05-01 23:42:37 +02:00
JonKazama-Hellion 81d3c9ca6b Pack the plugin icon into the release ZIP
DalamudPackager's default targets do not enable the HandleImages /
ImagesPath flags, so the images/ directory was silently excluded
from the build output even after the .csproj started copying
icon.png next to the DLL. The local Dalamud plugin loader then
fell back to the placeholder question-mark icon because there was
nothing to load at <plugindir>/images/icon.png.

Override the default by dropping a DalamudPackager.targets next to
the csproj — its presence disables the SDK's default target, which
is guarded on `!Exists($(PackagerTargetFile))`. The override
mirrors the SDK property list verbatim and adds HandleImages=true
plus ImagesPath=$(ProjectDir)images so the packager actually walks
the images directory and copies its contents into both the dev
plugin output and the release ZIP.

Verified: latest.zip now contains images/icon.png at the expected
path; both dev plugins and Custom-Repo installs will render the
Hellion logo locally without depending on the remote IconUrl.
2026-05-01 23:35:19 +02:00
JonKazama-Hellion 984b00ac0d Bundle the Hellion icon and Exo 2 font
Replace the inherited Chat 2 icon with the 1024×1024 Hellion logo
from the Hellion Online Media brand assets so the plugin shows
its real identity in Dalamud's plugin list. Bundle Exo 2 Variable
(SIL Open Font License 1.1) as an embedded resource together with
the OFL license text — keeps the license travelling with the font
inside the assembly as the OFL requires.

A new Configuration.UseHellionFont (default true) plus a checkbox
in the Privacy tab Appearance section route FontManager's regular
font handle through tk.AddFontFromMemory using the embedded TTF
bytes when the toggle is on; flipping it off falls back to the
existing AddFontWithFallback path so users who picked their own
system font under Settings → Fonts keep that choice.

Settings.cs now treats UseHellionFont as a font-changing setting
so toggling it triggers FontManager.BuildFonts on save without
needing a plugin reload.
2026-05-01 22:45:43 +02:00
JonKazama-Hellion 65e39d4ef7 Bump Hellion Chat manifest version to 0.1.0
Reset the version line out of the inherited Chat 2 1.35.x range
into a Hellion-specific track that starts at 0.1.0 to make the
bootstrap status visible to anyone reading the Dalamud plugin
list. The yaml changelog now lays out the full feature set added
on top of Chat 2 (privacy filter, retention, cleanup, export,
wizard, theme, localization) and explicitly calls out the upstream
1.35.3 base under EUPL-1.2.
2026-05-01 22:30:18 +02:00
JonKazama-Hellion 5b33a21d15 Localize the Hellion Chat surface area (EN + DE)
Add HellionStrings.resx as the English source and HellionStrings.de.resx
for German, with a hand-maintained Designer.cs that mirrors the layout
of Language.Designer.cs. Resource files live next to the upstream
Language.resx but are kept entirely separate so upstream cherry-picks
never collide with our translations and any future Hellion-only
translation tooling (Crowdin, manual contribution) can target this
file without touching the Chat 2 dictionary.

Plugin.LanguageChanged now updates HellionStrings.Culture alongside
Language.Culture so every UI string flips to the active locale at the
same moment. The Privacy tab title, master switch, channel groups
(now resolved per frame so the language can change without restart),
preset buttons, failsafe toggle, retention section, cleanup section,
status messages and notification bodies all read from HellionStrings.
The migration toast also takes its title and body from there.

Translations follow the project's German style: Du-Form, full
diacritics (ä, ö, ü), no em-dashes inside flowing prose, "Whitelist"
and "Linkshell" kept as-is because they are the established terms.
2026-05-01 20:03:18 +02:00
JonKazama-Hellion 465aadbb1a Brand the fork as Hellion Chat with independent plugin state
Switch the assembly name to HellionChat so Dalamud uses
pluginConfigs/HellionChat for our config file and database
directory, instead of sharing those locations with the upstream
Chat 2 plugin. Code namespace stays ChatTwo.* so upstream
cherry-picks apply cleanly.

Rename the DalamudPackager manifest to HellionChat.yaml with
fork-specific name, author, repo URL, description, tags and
changelog. Plugin.PluginName becomes "Hellion Chat".

Add a one-shot migration in the plugin constructor that runs
before GetPluginConfig: if pluginConfigs/ChatTwo.json or the
ChatTwo/ directory exist and our equivalents don't, move them
into the HellionChat layout. Idempotent: only fires on the first
load where legacy paths are present and ours are not.
2026-05-01 18:26:11 +02:00
Infi 3bc8a223c2 - Fix #175 2026-05-01 11:59:25 +02:00
Infi 33c922aaf7 - Potential fix for null ref error
- Add logging around migration
2026-04-30 22:27:23 +02:00
Infi dcf77e27f2 - Fix migration not running for new users
- Use PlayerState for character
2026-04-30 18:14:15 +02:00
Infi b4cb8b25ec - API 15
- Migrate config for API 15
- Migrate database for API 15
- Allow usage of new target source
- Implement first tell target option
2026-04-30 02:59:58 +02:00
Infi 93faf1b5bd - Null terminate bytes if passed to Utf8String 2026-04-19 21:18:47 +02:00
Infi 69c890facb - Add JSON export option for HTML test 2026-04-11 23:35:04 +02:00
Infi df0773ac65 - Implement message history export to text file 2026-04-10 22:17:37 +02:00
Infi c424311b24 - Check auto translation for commands and execute them instead of sending
- Plugin commands trigger the command helper window now
- Fix auto translation with empty text appearing
- Switch up all dalamud payload usage to ROSS if possible
- Prepare 7.5 changes
- Cleanup
2026-04-08 21:15:28 +02:00
Infi 9f7a6267f6 - Swap Queue to ConcurrentQueue 2026-03-22 15:03:37 +01:00
Infi 4341035c74 - Fix links not showing up in webinterface
- Switch to debug logging
2026-02-09 11:32:06 +01:00
Infi 638ec1a211 - Add safety around extra chat GUID parsing 2026-02-08 05:28:23 +01:00
Infi 6744c6676c - Add missing auto translates for the symbols 2026-01-20 11:27:37 +01:00
Infi 4f9a6cd5be - API 14 2025-12-19 06:49:18 +01:00
Infi 10da674994 - Add a prebuild zip with the website as plogon doesn't support NodeJS building yet 2025-11-17 18:35:41 +01:00
Infi 4b94c6e30e - Identify web payloads better
- Switch to IconId field name
- Add unique id to every message
- Automate nodejs build step via csproj
- Add unread color to tab opener
- Add unread number to tab name
- Update ImageSharp dep
2025-11-17 17:48:53 +01:00
Infi e2df709003 - Downgrade deps to fix current connection reset error 2025-09-20 17:21:08 +02:00
Infi 94b345c6a3 First implementation of sveltekit for webinterface 2025-09-20 16:07:46 +02:00
Infi efdf69f782 - Fix incorrect function call for novice network
- Fix keybind handler being obsolete
2025-09-11 01:30:07 +02:00
Infi 8c4410e75c - Add glamour notifications chat type 2025-08-10 03:01:39 +02:00
Infi efddaf30ad - API 13 2025-08-06 22:24:45 +02:00
Infi b760de1799 - Switch 24h culture to enforce 00:00 formatting 2025-07-16 01:28:51 +02:00
Infi 592f069f17 - Small cleanup 2025-06-22 20:17:58 +02:00
Infi e43167101b - Improve draw performance by adjusting if assumption 2025-06-22 12:49:05 +02:00
Infi f3783e9abf - Fix tells not working in Forays 2025-06-09 09:50:14 +02:00
Infi 3951c49e1a - bump 2025-05-28 21:29:02 +02:00
Infi fb89666f8d - Fix native tooltip offset
- Improve tooltip clipping handling
2025-03-27 17:17:53 +01:00
Infi bc78f65b50 - Sdk 2025-03-26 22:57:40 +01:00
Infi c9674b0646 - API 12
- Cleanup
2025-03-26 21:12:41 +01:00
Infi a6b71f50e6 - Check all tooltips for clipping 2025-03-15 14:00:26 +01:00
Infi 14cb3af13a - Allow temp channels again for fixed tabs
- French and Chinese loc update
2025-02-07 12:05:18 +01:00
Infi 65d2cf7c63 - bump 2025-02-03 22:03:25 +01:00
Infi 5a78877abf - Increase page count
- /chat2Viewer is now sorted by date
- Echo everything that hasn't any channel set
- Fixed channel inputs are now enforced
- Added a warning for ECL channel mismatch
2025-02-03 13:05:26 +01:00
Infi f6dd0359e7 - Potential fix for tells getting stuck
- Allow debugger use outside of debug builds
2024-12-23 04:48:40 +01:00
Infi 70971d7b8a - Fix /r issues
- Scope the block functions menu entry
- Don't show MuteList if accountId is unset
2024-12-19 18:48:06 +01:00
Infi 7cbaf77fe2 - Add MuteList and TermsFilter to block functions 2024-12-18 17:28:37 +01:00
Infi 92d4a75ec4 Small oops 2024-12-14 14:59:42 +01:00
Infi 97a8b96326 - Display name even if invalid channel is selected
- Add NoMove & NoResize to tabs
2024-12-14 14:54:20 +01:00
Infi 6144631b16 - Save ExtraChat channel 2024-12-02 19:26:52 +01:00
Infi 3cfe65d2d4 - More ImRaii
- Cleanup
- Spanish, French, Dutch, Chinese loc update
2024-11-21 11:58:22 +01:00
Infi 1a1995759a - Handle NBSP payloads
- Use ingame version of axis font
2024-11-21 08:34:24 +01:00
Infi cb7df12005 Potential fix for temp channel issues 2024-11-18 19:50:53 +01:00
Infi a648bcf60d Fix linkshell rotation 2024-11-17 19:16:21 +01:00
Infi bf27d3e853 Final API11 updates and new channel switcher 2024-11-16 21:06:35 +01:00