Commit Graph

103 Commits

Author SHA1 Message Date
JonKazama-Hellion 1ad5cb3164 Add privacy filter with channel whitelist (GDPR Art. 25)
Introduce an opt-out channel whitelist so the database only persists
messages from channels the user explicitly wants to keep. Default
profile follows GDPR data minimization: own conversations only
(Tells, Party, FC, Linkshells, Cross-World Linkshells, Alliance,
ExtraChat). Public chat (Say/Shout/Yell), Novice Network, NPC
dialogue and system logs are dropped by default.

The filter sits inside MessageStore.UpsertMessage so any current or
future write path is covered uniformly. Configuration provides an
IsAllowedForStorage(ChatType) helper plus a "persist unknown
channels" failsafe (default off) for ChatTypes added by future
patches.

A new Privacy settings tab exposes the whitelist as grouped
checkboxes with three preset buttons (Privacy-First, Clear all,
Select all). Configuration version bumps from 6 to 7; existing
users are migrated to the Privacy-First defaults on first load
and notified once via the Dalamud notification manager.

Also includes a small .env.example and gitignore hygiene for local
development setup.
2026-05-01 18:20:09 +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 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 c54efe5420 - Implement unread state sync for SSE 2025-10-01 21:30:41 +02:00
Infi 94b345c6a3 First implementation of sveltekit for webinterface 2025-09-20 16:07:46 +02:00
Infi efddaf30ad - API 13 2025-08-06 22:24:45 +02:00
Simon Schürrle 0d075ca060 Merge pull request #150
* Hash message links so messages with different links aren't considered…

* Add option to toggle if links should be considered for the message ha…
2025-06-22 20:17:19 +02:00
Infi 14cb3af13a - Allow temp channels again for fixed tabs
- French and Chinese loc update
2025-02-07 12:05:18 +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 cb8abc9ed6 - Implement independent hide condition for popouts (closes #124) 2024-12-14 16:39:36 +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 5bd6518e1a - Use EndConditional
- Fix #132 (maybe)
2024-11-21 13:59:45 +01:00
Infi bf27d3e853 Final API11 updates and new channel switcher 2024-11-16 21:06:35 +01:00
Infi 45fdac0dd6 API 11 2024-11-13 04:13:18 +01:00
Infi 725fe449f8 - Support locked channels
- Implement render limit for webinterface [default 1000]
2024-09-02 12:46:09 +02:00
Infi 8d973ff966 Remove migration code 2024-08-30 23:53:34 +02:00
Infi 2ababa82b0 - Implement better start/stop for the webinterface
- Save session tokens between startups
2024-08-28 14:09:09 +02:00
Infi 5e93732183 Add pre-testing version of the webinterface 2024-08-24 03:05:33 +02:00
Infi 16a16b1f12 Implement #101 2024-08-14 14:46:00 +02:00
Infi 9d6fcd2abe Fix #108 2024-08-14 14:21:27 +02:00
Infi 41c59f6aa0 Make italic font chooseable 2024-07-25 15:19:08 +02:00
Infi 9c86ee788f fix 2024-07-25 14:03:08 +02:00
Infi 97654b1c53 Rewrite font handling, use dalamud font chooser 2024-07-23 20:46:38 +02:00
Dean Sheather 56f6855da2 feat: autohide improvements
- Adds new setting "Enable inactivity hide during battle" (default:
  true) which determines whether autohide should apply during battle
  (thanks @aurieh)
- Adds new setting "Chat channels considered for activity" which allows
  customizing which channels incoming messages must match to "bump" the
  inactivity timer
- Adds new per-tab setting "Unhide the chat window on activity" to
  configure whether it will be considered for "bumping" the inactivity
  timer when receiving messages that match the new channel filter. Note
  that the foreground tab is currently always considered.
- Extends autohide code to apply to poped-out tabs as well. Each popout
  window has its own inactivity timer, but focusing the main window will
  restore all popped out windows.

Co-authored-by: Auri <me@aurieh.me>
2024-07-21 15:09:45 +10:00
Dean Sheather 352088dfed feat: add configurable hotkeys to cycle tabs
Adds two configurable hotkeys (plus the required code infrastructure to
handle configurable hotkeys) for cycling the active chat tab forward by
one and backwards by one.
2024-07-15 19:17:32 +10:00
Dean Sheather c3c60e7e43 feat: add autohide after inactivity
After not receiving a message for X seconds (configurable) in the
current tab or any tab with unread mode enabled, the chat will be
hidden. Focus can be returned with return or slash as usual.

Having input focus or hovering the mouse over the chat window "bumps"
it every frame.

Also fixes a bug that prevented focus from being restored to tabs with
input disabled. The chat window will be brought back but the activated
event won't be fully processed.

Co-authored-by: Auri <me@aurieh.me>
2024-07-13 16:30:42 +10:00
Dean Sheather 0fb78e1856 fix: actually apply hide state to config 2024-07-09 15:18:16 +10:00
Infi cd750a3ccb Rename close to hide and change icon 2024-07-08 12:10:27 +02:00
Dean Sheather fef9122eca feat: add close button to chat log 2024-07-08 16:57:37 +10:00
Infi 9c4b975605 - No emote parsing on AutoTranslate
- nint everything
2024-06-02 14:17:45 +02:00
Dean Sheather dc9fbbddd9 fix: use infinite lock timeout on write thread 2024-05-26 06:29:49 +10:00
Dean Sheather e9ae8362f5 fix: fix sorting problems 2024-05-25 21:50:30 +10:00
Infi c91858183a Add changelog tab 2024-05-22 03:39:31 +02:00
Infi 592892e45a - New option to limit minimum preview length
- New option only preview with parameters
- Improve preview drawing modes
- Prevent null ref on plugin load
2024-05-20 06:25:54 +02:00
Infi a18861ea87 Add new preview position: tooltip 2024-05-19 17:16:36 +02:00
Infi b08c858364 Configurable position for the preview 2024-05-15 23:41:22 +02:00
Infi 5d6acf7d08 Option to hide chat in battle 2024-05-11 01:11:53 +02:00
Infi b7286b8010 Implement emotes part 2 2024-05-09 19:09:36 +02:00
Infi 4210d634ab BTTV emote support part 1 & keep Input focus option 2024-05-08 00:04:07 +02:00
Infi 5b30e54f65 More cleanup 2024-05-02 15:02:42 +02:00
Infi a74cdcb899 Prevent vanilla tooltip for event item and implement #28 2024-04-30 03:49:53 +02:00
Infi c892577f54 Fix freezing popouts on saving the settings 2024-04-23 07:48:57 +02:00
Infi fc8199b3e5 Fix issues arise through shared height 2024-04-23 06:19:11 +02:00
Infi 366e121783 - Fixed hotkey behaviour in vanilla inputs
- Changed behaviour of tab switching
2024-04-21 00:29:07 +02:00
Dean Sheather bb6c6b0034 feat: replace LiteDB with Sqlite
- Replace LiteDB database engine with Sqlite
  Note: old databases will not be deleted
- Message duplication detection improvements
- Tolerate parse errors in release builds, log them
2024-04-20 21:18:51 +10:00
Harold Iedema e0793a51da Add option to limit the amount of shown log lines 2024-04-18 19:31:27 +02:00
Infi e7ca4ee6a6 remove migration code 2024-04-18 12:11:55 +02:00
Infi 30ccf8e416 Implement sounds on interaction 2024-04-16 00:36:30 +02:00
Infi 8a34cb5186 Fix double messages on startup 2024-04-13 18:01:00 +02:00
Infi c66d97829c Just null check the styles 2024-04-12 22:11:17 +02:00