Remove StoredChatMessage (#12623)

This commit is contained in:
Leon Friedrich
2022-11-23 00:52:19 +13:00
committed by GitHub
parent 3dc6e2bb79
commit 6af331c9ff
11 changed files with 131 additions and 212 deletions

View File

@@ -109,6 +109,7 @@ public sealed class ChatUIController : UIController
= new();
private readonly HashSet<ChatBox> _chats = new();
public IReadOnlySet<ChatBox> Chats => _chats;
/// <summary>
/// The max amount of characters an entity can send in one message
@@ -121,7 +122,7 @@ public sealed class ChatUIController : UIController
/// </summary>
private readonly Dictionary<ChatChannel, int> _unreadMessages = new();
public readonly List<StoredChatMessage> History = new();
public readonly List<ChatMessage> History = new();
// Maintains which channels a client should be able to filter (for showing in the chatbox)
// and select (for attempting to send on).
@@ -142,7 +143,7 @@ public sealed class ChatUIController : UIController
public event Action<ChatChannel>? FilterableChannelsChanged;
public event Action<ChatSelectChannel>? SelectableChannelsChanged;
public event Action<ChatChannel, int?>? UnreadMessageCountsUpdated;
public event Action<StoredChatMessage>? MessageAdded;
public event Action<ChatMessage>? MessageAdded;
public override void Initialize()
{
@@ -285,7 +286,7 @@ public sealed class ChatUIController : UIController
UpdateChannelPermissions();
}
private void AddSpeechBubble(MsgChatMessage msg, SpeechBubble.SpeechType speechType)
private void AddSpeechBubble(ChatMessage msg, SpeechBubble.SpeechType speechType)
{
if (!_entities.EntityExists(msg.SenderEntity))
{
@@ -635,18 +636,19 @@ public sealed class ChatUIController : UIController
box.ChatInput.Input.ReleaseKeyboardFocus();
}
private void OnChatMessage(MsgChatMessage msg)
private void OnChatMessage(MsgChatMessage message) => ProcessChatMessage(message.Message);
public void ProcessChatMessage(ChatMessage msg)
{
// Log all incoming chat to repopulate when filter is un-toggled
if (!msg.HideChat)
{
var storedMessage = new StoredChatMessage(msg);
History.Add(storedMessage);
MessageAdded?.Invoke(storedMessage);
History.Add(msg);
MessageAdded?.Invoke(msg);
if (!storedMessage.Read)
if (!msg.Read)
{
_sawmill.Debug($"Message filtered: {storedMessage.Channel}: {storedMessage.Message}");
_sawmill.Debug($"Message filtered: {msg.Channel}: {msg.Message}");
if (!_unreadMessages.TryGetValue(msg.Channel, out var count))
count = 0;