style: drop task references from cycle code comments
This commit is contained in:
@@ -188,7 +188,7 @@ public class Configuration : IPluginConfiguration
|
|||||||
public bool SymbolPickerEnabled = true;
|
public bool SymbolPickerEnabled = true;
|
||||||
public bool PlaySounds = true;
|
public bool PlaySounds = true;
|
||||||
|
|
||||||
// UI-2: toast when a tell the user sent could not be delivered.
|
// Toast when a tell the user sent could not be delivered.
|
||||||
public bool NotifyFailedTell = true;
|
public bool NotifyFailedTell = true;
|
||||||
public bool KeepInputFocus = true;
|
public bool KeepInputFocus = true;
|
||||||
public int MaxLinesToRender = 2_500; // 1-10000
|
public int MaxLinesToRender = 2_500; // 1-10000
|
||||||
@@ -447,7 +447,7 @@ public class Tab
|
|||||||
public bool AllSenderMessages;
|
public bool AllSenderMessages;
|
||||||
public TellTarget TellTarget = TellTarget.Empty();
|
public TellTarget TellTarget = TellTarget.Empty();
|
||||||
|
|
||||||
// UI-3: per-tab notification sound for messages arriving in an inactive tab.
|
// Per-tab notification sound for messages arriving in an inactive tab.
|
||||||
public bool EnableNotificationSound;
|
public bool EnableNotificationSound;
|
||||||
public uint NotificationSoundId = 1;
|
public uint NotificationSoundId = 1;
|
||||||
|
|
||||||
|
|||||||
@@ -10,11 +10,11 @@ using Microsoft.Extensions.Logging;
|
|||||||
|
|
||||||
namespace HellionChat.Integrations;
|
namespace HellionChat.Integrations;
|
||||||
|
|
||||||
// UI-2: a minimal, failed-tell-specific game hook. A locale-robust "tell
|
// A minimal, failed-tell-specific game hook. A locale-robust "tell failed"
|
||||||
// failed" signal is not reachable over the processed message stream (Message
|
// signal is not reachable over the processed message stream (Message carries
|
||||||
// carries no LogMessage row id, ChatCode 60 is too broad). This hooks the one
|
// no LogMessage row id, ChatCode 60 is too broad). This hooks the one
|
||||||
// ShowLogMessageString overload and toasts on a pinned id set. It is NOT the
|
// ShowLogMessageString overload and toasts on a pinned id set. It is NOT the
|
||||||
// broad ad-block hook layer. That stays v1.5.6.
|
// broad ad-block hook layer.
|
||||||
internal sealed class FailedTellNotifier : IDisposable
|
internal sealed class FailedTellNotifier : IDisposable
|
||||||
{
|
{
|
||||||
private readonly ILogger<FailedTellNotifier> _logger;
|
private readonly ILogger<FailedTellNotifier> _logger;
|
||||||
|
|||||||
@@ -343,8 +343,8 @@ internal class MessageManager : IAsyncDisposable
|
|||||||
{
|
{
|
||||||
tab.AddMessage(message, unread);
|
tab.AddMessage(message, unread);
|
||||||
|
|
||||||
// UI-3: per-tab notification sound. Fire once for the first
|
// Per-tab notification sound. Fire once for the first inactive
|
||||||
// inactive tab that wants it, keeping a message matching several
|
// tab that wants it, keeping a message matching several
|
||||||
// background tabs from stacking sounds.
|
// background tabs from stacking sounds.
|
||||||
// TEST-MIRROR: ../_Helpers/TabSoundDecision.cs
|
// TEST-MIRROR: ../_Helpers/TabSoundDecision.cs
|
||||||
if (
|
if (
|
||||||
|
|||||||
@@ -200,10 +200,10 @@ public sealed class Plugin : IAsyncDalamudPlugin
|
|||||||
|
|
||||||
// Schema gate: v1.4.x+ requires config v16+. Users on older schemas
|
// Schema gate: v1.4.x+ requires config v16+. Users on older schemas
|
||||||
// must install v1.4.2 first to run the migration chain. v18 adds the
|
// must install v1.4.2 first to run the migration chain. v18 adds the
|
||||||
// per-tab EnableNotificationSound + NotificationSoundId fields (UI-3)
|
// per-tab EnableNotificationSound + NotificationSoundId fields and the
|
||||||
// and the top-level NotifyFailedTell flag (UI-2), all additive with
|
// top-level NotifyFailedTell flag, all additive with defaults, so
|
||||||
// defaults, so v16/v17 configs load cleanly and get their Version
|
// v16/v17 configs load cleanly and get their Version stamp bumped
|
||||||
// stamp bumped after the gate.
|
// after the gate.
|
||||||
if (Config.Version < 16)
|
if (Config.Version < 16)
|
||||||
{
|
{
|
||||||
throw new InvalidOperationException(
|
throw new InvalidOperationException(
|
||||||
|
|||||||
+3
-3
@@ -452,18 +452,18 @@ internal class HellionStrings
|
|||||||
internal static string Settings_ThemeAndLayout_ReduceMotion_Name => Get(nameof(Settings_ThemeAndLayout_ReduceMotion_Name));
|
internal static string Settings_ThemeAndLayout_ReduceMotion_Name => Get(nameof(Settings_ThemeAndLayout_ReduceMotion_Name));
|
||||||
internal static string Settings_ThemeAndLayout_ReduceMotion_Description => Get(nameof(Settings_ThemeAndLayout_ReduceMotion_Description));
|
internal static string Settings_ThemeAndLayout_ReduceMotion_Description => Get(nameof(Settings_ThemeAndLayout_ReduceMotion_Description));
|
||||||
|
|
||||||
// Hellion Chat — v1.5.5 UI-2 Failed Tell Notification
|
// Failed-tell notification
|
||||||
internal static string FailedTell_Notification_Generic => Get(nameof(FailedTell_Notification_Generic));
|
internal static string FailedTell_Notification_Generic => Get(nameof(FailedTell_Notification_Generic));
|
||||||
internal static string FailedTell_Notification_Named => Get(nameof(FailedTell_Notification_Named));
|
internal static string FailedTell_Notification_Named => Get(nameof(FailedTell_Notification_Named));
|
||||||
internal static string Settings_Chat_NotifyFailedTell_Name => Get(nameof(Settings_Chat_NotifyFailedTell_Name));
|
internal static string Settings_Chat_NotifyFailedTell_Name => Get(nameof(Settings_Chat_NotifyFailedTell_Name));
|
||||||
internal static string Settings_Chat_NotifyFailedTell_Description => Get(nameof(Settings_Chat_NotifyFailedTell_Description));
|
internal static string Settings_Chat_NotifyFailedTell_Description => Get(nameof(Settings_Chat_NotifyFailedTell_Description));
|
||||||
|
|
||||||
// Hellion Chat — v1.5.5 UI-3 Per-Tab Notification Sound
|
// Per-tab notification sound
|
||||||
internal static string Tabs_NotificationSound_Enable_Name => Get(nameof(Tabs_NotificationSound_Enable_Name));
|
internal static string Tabs_NotificationSound_Enable_Name => Get(nameof(Tabs_NotificationSound_Enable_Name));
|
||||||
internal static string Tabs_NotificationSound_Description => Get(nameof(Tabs_NotificationSound_Description));
|
internal static string Tabs_NotificationSound_Description => Get(nameof(Tabs_NotificationSound_Description));
|
||||||
internal static string Tabs_NotificationSound_Option => Get(nameof(Tabs_NotificationSound_Option));
|
internal static string Tabs_NotificationSound_Option => Get(nameof(Tabs_NotificationSound_Option));
|
||||||
|
|
||||||
// Hellion Chat — v1.5.5 UI-5a Scroll-to-bottom + UI-6 Linking
|
// Scroll-to-bottom and item/flag linking
|
||||||
internal static string ChatLog_ScrollToBottom_Tooltip => Get(nameof(ChatLog_ScrollToBottom_Tooltip));
|
internal static string ChatLog_ScrollToBottom_Tooltip => Get(nameof(ChatLog_ScrollToBottom_Tooltip));
|
||||||
internal static string ChatLog_Insert_MapFlag => Get(nameof(ChatLog_Insert_MapFlag));
|
internal static string ChatLog_Insert_MapFlag => Get(nameof(ChatLog_Insert_MapFlag));
|
||||||
internal static string ChatLog_Insert_ItemLink => Get(nameof(ChatLog_Insert_ItemLink));
|
internal static string ChatLog_Insert_ItemLink => Get(nameof(ChatLog_Insert_ItemLink));
|
||||||
|
|||||||
@@ -1049,7 +1049,7 @@
|
|||||||
<value>Disables the theme crossfade, the sidebar and card-row hover animations, and the unread-tab pulse. Theme switches and hover states apply instantly instead.</value>
|
<value>Disables the theme crossfade, the sidebar and card-row hover animations, and the unread-tab pulse. Theme switches and hover states apply instantly instead.</value>
|
||||||
</data>
|
</data>
|
||||||
|
|
||||||
<!-- Hellion Chat — v1.5.5 UI-2 Failed Tell Notification -->
|
<!-- Failed-tell notification -->
|
||||||
<data name="FailedTell_Notification_Generic" xml:space="preserve">
|
<data name="FailedTell_Notification_Generic" xml:space="preserve">
|
||||||
<value>A tell could not be delivered.</value>
|
<value>A tell could not be delivered.</value>
|
||||||
</data>
|
</data>
|
||||||
@@ -1063,7 +1063,7 @@
|
|||||||
<value>Show a toast when a tell you sent could not be delivered (recipient offline, in an instance, or blocking you).</value>
|
<value>Show a toast when a tell you sent could not be delivered (recipient offline, in an instance, or blocking you).</value>
|
||||||
</data>
|
</data>
|
||||||
|
|
||||||
<!-- Hellion Chat — v1.5.5 UI-3 Per-Tab Notification Sound -->
|
<!-- Per-tab notification sound -->
|
||||||
<data name="Tabs_NotificationSound_Enable_Name" xml:space="preserve">
|
<data name="Tabs_NotificationSound_Enable_Name" xml:space="preserve">
|
||||||
<value>Notification sound</value>
|
<value>Notification sound</value>
|
||||||
</data>
|
</data>
|
||||||
@@ -1074,7 +1074,7 @@
|
|||||||
<value>Sound</value>
|
<value>Sound</value>
|
||||||
</data>
|
</data>
|
||||||
|
|
||||||
<!-- Hellion Chat — v1.5.5 UI-5a Scroll-to-bottom + UI-6 Linking -->
|
<!-- Scroll-to-bottom and item/flag linking -->
|
||||||
<data name="ChatLog_ScrollToBottom_Tooltip" xml:space="preserve">
|
<data name="ChatLog_ScrollToBottom_Tooltip" xml:space="preserve">
|
||||||
<value>Jump to the latest message</value>
|
<value>Jump to the latest message</value>
|
||||||
</data>
|
</data>
|
||||||
|
|||||||
@@ -776,11 +776,11 @@ public sealed class ChatLogWindow : Window
|
|||||||
// (~17ms at 60fps) late, invisible inside the post-reload Atlas-Build.
|
// (~17ms at 60fps) late, invisible inside the post-reload Atlas-Build.
|
||||||
private bool _firstFrameDone;
|
private bool _firstFrameDone;
|
||||||
|
|
||||||
// UI-5: set when the user clicks the scroll-to-bottom button; the next
|
// Set when the user clicks the scroll-to-bottom button; the next
|
||||||
// frame's scroll-snap check forces a jump to the live end.
|
// frame's scroll-snap check forces a jump to the live end.
|
||||||
private bool _scrollToBottomRequested;
|
private bool _scrollToBottomRequested;
|
||||||
|
|
||||||
// UI-5: cached each frame inside the ##chat2-messages child. True when the
|
// Cached each frame inside the ##chat2-messages child. True when the
|
||||||
// user has scrolled up enough that the toolbar button should be shown.
|
// user has scrolled up enough that the toolbar button should be shown.
|
||||||
private bool _childScrolledUp;
|
private bool _childScrolledUp;
|
||||||
|
|
||||||
@@ -2330,7 +2330,6 @@ public sealed class ChatLogWindow : Window
|
|||||||
|
|
||||||
// DrawChatHeaderToolbar: renders the honorific title slot, the optional
|
// DrawChatHeaderToolbar: renders the honorific title slot, the optional
|
||||||
// scroll-to-bottom button, and the pop-out button for the active tab.
|
// scroll-to-bottom button, and the pop-out button for the active tab.
|
||||||
// v1.3.0 added the title slot; v1.5.5 added the scroll-to-bottom button.
|
|
||||||
private void DrawChatHeaderToolbar(Tab tab)
|
private void DrawChatHeaderToolbar(Tab tab)
|
||||||
{
|
{
|
||||||
DrawHonorificTitleSlot();
|
DrawHonorificTitleSlot();
|
||||||
@@ -2556,8 +2555,8 @@ public sealed class ChatLogWindow : Window
|
|||||||
var anyChanged = false;
|
var anyChanged = false;
|
||||||
var tabs = Plugin.Config.Tabs;
|
var tabs = Plugin.Config.Tabs;
|
||||||
|
|
||||||
// UI-4: focus the rename field on the frame the context menu opens so
|
// Focus the rename field on the frame the context menu opens so the
|
||||||
// the user can type immediately. Buffer raised 128 -> 512 to match the
|
// user can type immediately. Buffer raised 128 -> 512 to match the
|
||||||
// settings-tab rename (Ui/SettingsTabs/Tabs.cs). One name limit, not two.
|
// settings-tab rename (Ui/SettingsTabs/Tabs.cs). One name limit, not two.
|
||||||
if (ImGui.IsWindowAppearing())
|
if (ImGui.IsWindowAppearing())
|
||||||
ImGui.SetKeyboardFocusHere();
|
ImGui.SetKeyboardFocusHere();
|
||||||
|
|||||||
@@ -2,7 +2,7 @@ using System.Collections.Generic;
|
|||||||
|
|
||||||
namespace HellionChat._Helpers;
|
namespace HellionChat._Helpers;
|
||||||
|
|
||||||
// UI-2 pure decision helper for failed-tell detection. The processed message
|
// Pure decision helper for failed-tell detection. The processed message
|
||||||
// stream carries no LogMessage row id, so detection happens at the
|
// stream carries no LogMessage row id, so detection happens at the
|
||||||
// RaptureLogModule level (see FailedTellNotifier). This POCO stays free of
|
// RaptureLogModule level (see FailedTellNotifier). This POCO stays free of
|
||||||
// Dalamud types so the "known id AND enabled" rule is Build-Suite testable.
|
// Dalamud types so the "known id AND enabled" rule is Build-Suite testable.
|
||||||
@@ -10,9 +10,9 @@ namespace HellionChat._Helpers;
|
|||||||
public static class FailedTellMatcher
|
public static class FailedTellMatcher
|
||||||
{
|
{
|
||||||
// Log-message ids the game raises for a tell that could not be delivered,
|
// Log-message ids the game raises for a tell that could not be delivered,
|
||||||
// pinned from in-game discovery (plan Task 2). 50 covers an unreachable
|
// pinned from in-game discovery. 50 covers an unreachable recipient
|
||||||
// recipient (offline, non-existent, or on another world); 3832 is a
|
// (offline, non-existent, or on another world); 3832 is a recipient
|
||||||
// recipient inside an instance.
|
// inside an instance.
|
||||||
public static readonly IReadOnlySet<uint> FailedTellLogMessageIds = new HashSet<uint>
|
public static readonly IReadOnlySet<uint> FailedTellLogMessageIds = new HashSet<uint>
|
||||||
{
|
{
|
||||||
50u,
|
50u,
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
namespace HellionChat._Helpers;
|
namespace HellionChat._Helpers;
|
||||||
|
|
||||||
// UI-3 pure decision helper: should an incoming message play a per-tab
|
// Pure decision helper: should an incoming message play a per-tab notification
|
||||||
// notification sound? Kept Dalamud-free so the Build Suite can test the
|
// sound? Kept Dalamud-free so the Build Suite can test the
|
||||||
// "inactive + enabled + global-allowed" rule in isolation.
|
// "inactive + enabled + global-allowed" rule in isolation.
|
||||||
// TEST-MIRROR: ../../../Hellion Build test/Ui/TabSoundDecisionTests.cs
|
// TEST-MIRROR: ../../../Hellion Build test/Ui/TabSoundDecisionTests.cs
|
||||||
public static class TabSoundDecision
|
public static class TabSoundDecision
|
||||||
|
|||||||
Reference in New Issue
Block a user