refactor: rename Badge to TwitchBadge (#6706)
this change is made to clarify that the previously-called Badge object is actually specialized for Twitch badges
This commit is contained in:
@@ -95,8 +95,8 @@ ContextMap buildContextMap(const MessagePtr &m, chatterino::Channel *channel)
|
||||
using MessageFlag = chatterino::MessageFlag;
|
||||
|
||||
QStringList badges;
|
||||
badges.reserve(m->badges.size());
|
||||
for (const auto &e : m->badges)
|
||||
badges.reserve(m->twitchBadges.size());
|
||||
for (const auto &e : m->twitchBadges)
|
||||
{
|
||||
badges << e.key_;
|
||||
}
|
||||
@@ -114,9 +114,9 @@ ContextMap buildContextMap(const MessagePtr &m, chatterino::Channel *channel)
|
||||
continue;
|
||||
}
|
||||
subscribed = true;
|
||||
if (m->badgeInfos.find(subBadge) != m->badgeInfos.end())
|
||||
if (m->twitchBadgeInfos.find(subBadge) != m->twitchBadgeInfos.end())
|
||||
{
|
||||
subLength = m->badgeInfos.at(subBadge).toInt();
|
||||
subLength = m->twitchBadgeInfos.at(subBadge).toInt();
|
||||
}
|
||||
}
|
||||
ContextMap vars = {
|
||||
|
||||
@@ -73,7 +73,7 @@ bool HighlightBadge::hasSound() const
|
||||
return this->hasSound_;
|
||||
}
|
||||
|
||||
bool HighlightBadge::isMatch(const Badge &badge) const
|
||||
bool HighlightBadge::isMatch(const TwitchBadge &badge) const
|
||||
{
|
||||
if (this->isMulti_)
|
||||
{
|
||||
@@ -92,7 +92,7 @@ bool HighlightBadge::isMatch(const Badge &badge) const
|
||||
}
|
||||
}
|
||||
|
||||
bool HighlightBadge::compare(const QString &id, const Badge &badge) const
|
||||
bool HighlightBadge::compare(const QString &id, const TwitchBadge &badge) const
|
||||
{
|
||||
if (this->hasVersions_)
|
||||
{
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
|
||||
namespace chatterino {
|
||||
|
||||
class Badge;
|
||||
class TwitchBadge;
|
||||
|
||||
class HighlightBadge
|
||||
{
|
||||
@@ -32,7 +32,7 @@ public:
|
||||
bool showInMentions() const;
|
||||
bool hasAlert() const;
|
||||
bool hasSound() const;
|
||||
bool isMatch(const Badge &badge) const;
|
||||
bool isMatch(const TwitchBadge &badge) const;
|
||||
|
||||
/**
|
||||
* @brief Check if this highlight phrase has a custom sound set.
|
||||
@@ -55,7 +55,7 @@ public:
|
||||
static QColor FALLBACK_HIGHLIGHT_COLOR;
|
||||
|
||||
private:
|
||||
bool compare(const QString &id, const Badge &badge) const;
|
||||
bool compare(const QString &id, const TwitchBadge &badge) const;
|
||||
|
||||
QString badgeName_;
|
||||
QString displayName_;
|
||||
|
||||
@@ -13,16 +13,17 @@ namespace chatterino {
|
||||
|
||||
struct HighlightResult;
|
||||
struct MessageParseArgs;
|
||||
class Badge;
|
||||
class TwitchBadge;
|
||||
|
||||
enum class MessageFlag : std::int64_t;
|
||||
using MessageFlags = FlagsEnum<MessageFlag>;
|
||||
|
||||
struct HighlightCheck {
|
||||
using Checker = std::function<std::optional<HighlightResult>(
|
||||
const MessageParseArgs &args, const std::vector<Badge> &badges,
|
||||
const QString &senderName, const QString &originalMessage,
|
||||
const MessageFlags &messageFlags, bool self)>;
|
||||
const MessageParseArgs &args,
|
||||
const std::vector<TwitchBadge> &twitchBadges, const QString &senderName,
|
||||
const QString &originalMessage, const MessageFlags &messageFlags,
|
||||
bool self)>;
|
||||
Checker cb;
|
||||
};
|
||||
|
||||
|
||||
@@ -21,14 +21,14 @@ using namespace chatterino;
|
||||
auto highlightPhraseCheck(const HighlightPhrase &highlight) -> HighlightCheck
|
||||
{
|
||||
return HighlightCheck{
|
||||
[highlight](const auto &args, const auto &badges,
|
||||
[highlight](const auto &args, const auto &twitchBadges,
|
||||
const auto &senderName, const auto &originalMessage,
|
||||
const auto &flags,
|
||||
const auto self) -> std::optional<HighlightResult> {
|
||||
(void)args; // unused
|
||||
(void)badges; // unused
|
||||
(void)senderName; // unused
|
||||
(void)flags; // unused
|
||||
(void)args; // unused
|
||||
(void)twitchBadges; // unused
|
||||
(void)senderName; // unused
|
||||
(void)flags; // unused
|
||||
|
||||
if (self)
|
||||
{
|
||||
@@ -72,10 +72,11 @@ void rebuildSubscriptionHighlights(Settings &settings,
|
||||
// The custom sub highlight color is handled in ColorProvider
|
||||
|
||||
checks.emplace_back(HighlightCheck{
|
||||
[=](const auto &args, const auto &badges, const auto &senderName,
|
||||
const auto &originalMessage, const auto &flags,
|
||||
[=](const auto &args, const auto &twitchBadges,
|
||||
const auto &senderName, const auto &originalMessage,
|
||||
const auto &flags,
|
||||
const auto self) -> std::optional<HighlightResult> {
|
||||
(void)badges; // unused
|
||||
(void)twitchBadges; // unused
|
||||
(void)senderName; // unused
|
||||
(void)originalMessage; // unused
|
||||
(void)flags; // unused
|
||||
@@ -118,10 +119,11 @@ void rebuildWhisperHighlights(Settings &settings,
|
||||
// The custom whisper highlight color is handled in ColorProvider
|
||||
|
||||
checks.emplace_back(HighlightCheck{
|
||||
[=](const auto &args, const auto &badges, const auto &senderName,
|
||||
const auto &originalMessage, const auto &flags,
|
||||
[=](const auto &args, const auto &twitchBadges,
|
||||
const auto &senderName, const auto &originalMessage,
|
||||
const auto &flags,
|
||||
const auto self) -> std::optional<HighlightResult> {
|
||||
(void)badges; // unused
|
||||
(void)twitchBadges; // unused
|
||||
(void)senderName; // unused
|
||||
(void)originalMessage; // unused
|
||||
(void)flags; // unused
|
||||
@@ -160,7 +162,7 @@ void rebuildReplyThreadHighlight(Settings &settings,
|
||||
auto highlightInMentions =
|
||||
settings.showThreadHighlightInMentions.getValue();
|
||||
checks.emplace_back(HighlightCheck{
|
||||
[=](const auto & /*args*/, const auto & /*badges*/,
|
||||
[=](const auto & /*args*/, const auto & /*twitchBadges*/,
|
||||
const auto & /*senderName*/, const auto & /*originalMessage*/,
|
||||
const auto &flags,
|
||||
const auto self) -> std::optional<HighlightResult> {
|
||||
@@ -218,7 +220,7 @@ void rebuildMessageHighlights(Settings &settings,
|
||||
ColorProvider::instance().color(ColorType::AutomodHighlight);
|
||||
|
||||
checks.emplace_back(HighlightCheck{
|
||||
[=](const auto & /*args*/, const auto & /*badges*/,
|
||||
[=](const auto & /*args*/, const auto & /*twitchBadges*/,
|
||||
const auto & /*senderName*/, const auto & /*originalMessage*/,
|
||||
const auto &flags,
|
||||
const auto /*self*/) -> std::optional<HighlightResult> {
|
||||
@@ -255,11 +257,12 @@ void rebuildUserHighlights(Settings &settings,
|
||||
|
||||
checks.emplace_back(HighlightCheck{
|
||||
[showInMentions](
|
||||
const auto &args, const auto &badges, const auto &senderName,
|
||||
const auto &originalMessage, const auto &flags,
|
||||
const auto &args, const auto &twitchBadges,
|
||||
const auto &senderName, const auto &originalMessage,
|
||||
const auto &flags,
|
||||
const auto self) -> std::optional<HighlightResult> {
|
||||
(void)args; //unused
|
||||
(void)badges; //unused
|
||||
(void)twitchBadges; //unused
|
||||
(void)senderName; //unused
|
||||
(void)flags; //unused
|
||||
(void)originalMessage; //unused
|
||||
@@ -281,12 +284,12 @@ void rebuildUserHighlights(Settings &settings,
|
||||
for (const auto &highlight : *userHighlights)
|
||||
{
|
||||
checks.emplace_back(HighlightCheck{
|
||||
[highlight](const auto &args, const auto &badges,
|
||||
[highlight](const auto &args, const auto &twitchBadges,
|
||||
const auto &senderName, const auto &originalMessage,
|
||||
const auto &flags,
|
||||
const auto self) -> std::optional<HighlightResult> {
|
||||
(void)args; // unused
|
||||
(void)badges; // unused
|
||||
(void)twitchBadges; // unused
|
||||
(void)originalMessage; // unused
|
||||
(void)flags; // unused
|
||||
(void)self; // unused
|
||||
@@ -321,7 +324,7 @@ void rebuildBadgeHighlights(Settings &settings,
|
||||
for (const auto &highlight : *badgeHighlights)
|
||||
{
|
||||
checks.emplace_back(HighlightCheck{
|
||||
[highlight](const auto &args, const auto &badges,
|
||||
[highlight](const auto &args, const auto &twitchBadges,
|
||||
const auto &senderName, const auto &originalMessage,
|
||||
const auto &flags,
|
||||
const auto self) -> std::optional<HighlightResult> {
|
||||
@@ -331,7 +334,7 @@ void rebuildBadgeHighlights(Settings &settings,
|
||||
(void)flags; // unused
|
||||
(void)self; // unused
|
||||
|
||||
for (const Badge &badge : badges)
|
||||
for (const TwitchBadge &badge : twitchBadges)
|
||||
{
|
||||
if (highlight.isMatch(badge))
|
||||
{
|
||||
@@ -460,7 +463,7 @@ void HighlightController::rebuildChecks(Settings &settings)
|
||||
}
|
||||
|
||||
std::pair<bool, HighlightResult> HighlightController::check(
|
||||
const MessageParseArgs &args, const std::vector<Badge> &badges,
|
||||
const MessageParseArgs &args, const std::vector<TwitchBadge> &twitchBadges,
|
||||
const QString &senderName, const QString &originalMessage,
|
||||
const MessageFlags &messageFlags) const
|
||||
{
|
||||
@@ -475,7 +478,7 @@ std::pair<bool, HighlightResult> HighlightController::check(
|
||||
|
||||
for (const auto &check : *checks)
|
||||
{
|
||||
if (auto checkResult = check.cb(args, badges, senderName,
|
||||
if (auto checkResult = check.cb(args, twitchBadges, senderName,
|
||||
originalMessage, messageFlags, self);
|
||||
checkResult)
|
||||
{
|
||||
|
||||
@@ -8,18 +8,17 @@
|
||||
#include <boost/signals2/connection.hpp>
|
||||
#include <pajlada/settings.hpp>
|
||||
#include <pajlada/settings/settinglistener.hpp>
|
||||
#include <pajlada/signals/signalholder.hpp>
|
||||
#include <QColor>
|
||||
#include <QUrl>
|
||||
|
||||
#include <cstdint>
|
||||
#include <functional>
|
||||
#include <memory>
|
||||
#include <optional>
|
||||
#include <utility>
|
||||
#include <vector>
|
||||
|
||||
namespace chatterino {
|
||||
|
||||
class Badge;
|
||||
class TwitchBadge;
|
||||
struct MessageParseArgs;
|
||||
class AccountController;
|
||||
enum class MessageFlag : std::int64_t;
|
||||
@@ -34,9 +33,9 @@ public:
|
||||
* @brief Checks the given message parameters if it matches our internal checks, and returns a result
|
||||
**/
|
||||
[[nodiscard]] std::pair<bool, HighlightResult> check(
|
||||
const MessageParseArgs &args, const std::vector<Badge> &badges,
|
||||
const QString &senderName, const QString &originalMessage,
|
||||
const MessageFlags &messageFlags) const;
|
||||
const MessageParseArgs &args,
|
||||
const std::vector<TwitchBadge> &twitchBadges, const QString &senderName,
|
||||
const QString &originalMessage, const MessageFlags &messageFlags) const;
|
||||
|
||||
private:
|
||||
/**
|
||||
|
||||
Reference in New Issue
Block a user