Compare commits

...

3 commits

Author SHA1 Message Date
Nerixyz eccdd63280
channel -> chan 2024-11-01 19:06:48 +01:00
Nerixyz b267d615e3
make it ugly 2024-11-01 18:21:57 +01:00
Nerixyz d91719b31e
review 2024-11-01 18:18:15 +01:00
5 changed files with 27 additions and 24 deletions

View file

@ -98,7 +98,8 @@ public:
/// Removes all messages from this channel and invokes #messagesCleared
void clearMessages();
MessagePtr findMessage(QString messageID);
[[deprecated("Use findMessageByID instead")]] MessagePtr findMessage(
QString messageID);
MessagePtr findMessageByID(QStringView messageID) final;
bool hasMessages() const;

View file

@ -5,6 +5,7 @@
#include "messages/MessageFlag.hpp"
#include <memory>
#include <optional>
class QStringView;
class QTime;

View file

@ -369,8 +369,8 @@ void IrcMessageHandler::parsePrivMessageInto(
}
addMessage(message, sink, channel,
unescapeZeroWidthJoiner(message->content()), false,
message->isAction());
unescapeZeroWidthJoiner(message->content()),
*getApp()->getTwitch(), false, message->isAction());
if (message->tags().contains(u"pinned-chat-paid-amount"_s))
{
@ -675,7 +675,8 @@ void IrcMessageHandler::parseUserNoticeMessageInto(Communi::IrcMessage *message,
// Messages are not required, so they might be empty
if (!content.isEmpty())
{
addMessage(message, sink, channel, content, true, false);
addMessage(message, sink, channel, content, *getApp()->getTwitch(),
true, false);
}
}
@ -955,11 +956,12 @@ void IrcMessageHandler::handlePartMessage(Communi::IrcMessage *message)
}
void IrcMessageHandler::addMessage(Communi::IrcMessage *message,
MessageSink &sink, TwitchChannel *channel,
const QString &originalContent, bool isSub,
MessageSink &sink, TwitchChannel *chan,
const QString &originalContent,
ITwitchIrcServer &twitch, bool isSub,
bool isAction)
{
assert(channel);
assert(chan);
MessageParseArgs args;
if (isSub)
@ -968,7 +970,7 @@ void IrcMessageHandler::addMessage(Communi::IrcMessage *message,
args.trimSubscriberUsername = true;
}
if (channel->isBroadcaster())
if (chan->isBroadcaster())
{
args.isStaffOrBroadcaster = true;
}
@ -992,13 +994,13 @@ void IrcMessageHandler::addMessage(Communi::IrcMessage *message,
if (!rewardId.isEmpty() &&
sink.sinkTraits().has(
MessageSinkTrait::RequiresKnownChannelPointReward) &&
!channel->isChannelPointRewardKnown(rewardId))
!chan->isChannelPointRewardKnown(rewardId))
{
// Need to wait for pubsub reward notification
qCDebug(chatterinoTwitch) << "TwitchChannel reward added ADD "
"callback since reward is not known:"
<< rewardId;
channel->addQueuedRedemption(rewardId, originalContent, message);
chan->addQueuedRedemption(rewardId, originalContent, message);
return;
}
args.channelPointRewardId = rewardId;
@ -1012,9 +1014,9 @@ void IrcMessageHandler::addMessage(Communi::IrcMessage *message,
it != tags.end())
{
const QString replyID = it.value().toString();
auto threadIt = channel->threads().find(replyID);
auto threadIt = chan->threads().find(replyID);
std::shared_ptr<MessageThread> rootThread;
if (threadIt != channel->threads().end() && !threadIt->second.expired())
if (threadIt != chan->threads().end() && !threadIt->second.expired())
{
// Thread already exists (has a reply)
auto thread = threadIt->second.lock();
@ -1035,7 +1037,7 @@ void IrcMessageHandler::addMessage(Communi::IrcMessage *message,
replyCtx.thread = newThread;
rootThread = newThread;
// Store weak reference to thread in channel
channel->addReplyThread(newThread);
chan->addReplyThread(newThread);
}
}
@ -1052,8 +1054,8 @@ void IrcMessageHandler::addMessage(Communi::IrcMessage *message,
}
else
{
auto parentThreadIt = channel->threads().find(parentID);
if (parentThreadIt != channel->threads().end())
auto parentThreadIt = chan->threads().find(parentID);
if (parentThreadIt != chan->threads().end())
{
auto thread = parentThreadIt->second.lock();
if (thread)
@ -1075,7 +1077,7 @@ void IrcMessageHandler::addMessage(Communi::IrcMessage *message,
args.allowIgnore = !isSub;
auto [msg, alert] = MessageBuilder::makeIrcMessage(
channel, message, args, content, messageOffset, replyCtx.thread,
chan, message, args, content, messageOffset, replyCtx.thread,
replyCtx.parent);
if (msg)
@ -1092,7 +1094,7 @@ void IrcMessageHandler::addMessage(Communi::IrcMessage *message,
(!getSettings()->hideSimilar &&
getSettings()->shownSimilarTriggerHighlights))
{
MessageBuilder::triggerHighlights(channel, alert);
MessageBuilder::triggerHighlights(chan, alert);
}
const auto highlighted = msg->flags.has(MessageFlag::Highlighted);
@ -1101,12 +1103,12 @@ void IrcMessageHandler::addMessage(Communi::IrcMessage *message,
if (highlighted && showInMentions &&
sink.sinkTraits().has(MessageSinkTrait::AddMentionsToGlobalChannel))
{
getApp()->getTwitch()->getMentionsChannel()->addMessage(
msg, MessageContext::Original);
twitch.getMentionsChannel()->addMessage(msg,
MessageContext::Original);
}
sink.addMessage(msg, MessageContext::Original);
channel->addRecentChatter(msg->displayName);
chan->addRecentChatter(msg->displayName);
}
}

View file

@ -60,9 +60,8 @@ public:
void handlePartMessage(Communi::IrcMessage *message);
static void addMessage(Communi::IrcMessage *message, MessageSink &sink,
TwitchChannel *channel,
const QString &originalContent, bool isSub,
bool isAction);
TwitchChannel *chan, const QString &originalContent,
ITwitchIrcServer &twitch, bool isSub, bool isAction);
private:
static float similarity(const MessagePtr &msg,

View file

@ -453,7 +453,7 @@ void TwitchChannel::addChannelPointReward(const ChannelPointReward &reward)
{
IrcMessageHandler::instance().addMessage(
msg.message.get(), *this, this, msg.originalContent,
false, false);
*server, false, false);
return true;
}
return false;