diff --git a/CHANGELOG.md b/CHANGELOG.md index 3a425bd6..b8d6fbb4 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -30,6 +30,7 @@ - Bugfix: Fixed some channels still not loading in rare cases. (#3219) - Bugfix: Fixed a bug with usernames or emotes completing from the wrong position. (#3229) - Bugfix: Fixed second chatterino icon appearing in the dock when restarting on a crash in macOS. (#3268) +- Bugfix: Fixed built-in Chatterino commands not working in whispers and mentions special channels (#3288) - Bugfix: Fixed `QCharRef with an index pointing outside the valid range of a QString` warning that was emitted on every Tab press. (#3234) - Dev: Renamed CMake's build option `USE_SYSTEM_QT5KEYCHAIN` to `USE_SYSTEM_QTKEYCHAIN`. (#3103) - Dev: Add benchmarks that can be compiled with the `BUILD_BENCHMARKS` CMake flag. Off by default. (#3038) diff --git a/src/controllers/commands/CommandController.cpp b/src/controllers/commands/CommandController.cpp index cf71b394..4ed22a4b 100644 --- a/src/controllers/commands/CommandController.cpp +++ b/src/controllers/commands/CommandController.cpp @@ -613,8 +613,11 @@ void CommandController::initialize(Settings &, Paths &paths) this->registerCommand("/marker", [](const QStringList &words, auto channel) { - if (!channel->isTwitchChannel()) + auto *twitchChannel = dynamic_cast(channel.get()); + if (twitchChannel == nullptr) { + channel->addMessage(makeSystemMessage( + "The /marker command only works in Twitch channels")); return ""; } @@ -626,8 +629,6 @@ void CommandController::initialize(Settings &, Paths &paths) return ""; } - auto *twitchChannel = dynamic_cast(channel.get()); - // Exact same message as in webchat if (!twitchChannel->isLive()) { @@ -935,7 +936,7 @@ QString CommandController::execCommand(const QString &textNoEmoji, } // works only in a valid twitch channel - if (!dryRun && twitchChannel != nullptr) + if (!dryRun && channel->isTwitchChannel()) { // check if command exists const auto it = this->commands_.find(commandName);