Fancy effects: additional check if enabled everywhere

This commit is contained in:
Alexey Andreyev
2021-02-08 21:26:58 +03:00
committed by Carl Schwan
parent 09dff4553a
commit 01f8c3b09f
3 changed files with 36 additions and 28 deletions

View File

@@ -477,6 +477,10 @@ ToolBar {
property var userAutocompleted: ({}) property var userAutocompleted: ({})
function checkForFancyEffectsReason() { function checkForFancyEffectsReason() {
if (!Config.showFancyEffects) {
return
}
var inputFieldText = inputField.text.trim() var inputFieldText = inputField.text.trim()
console.log(inputFieldText) console.log(inputFieldText)
if (inputFieldText.includes('\u{2744}')) { if (inputFieldText.includes('\u{2744}')) {

View File

@@ -616,6 +616,7 @@ Kirigami.ScrollablePage {
} }
Connections { Connections {
enabled: Config.showFancyEffects
target: messageEventModel target: messageEventModel
onFancyEffectsReasonFound: { onFancyEffectsReasonFound: {
fancyEffectsContainer.processFancyEffectsReason(fancyEffect) fancyEffectsContainer.processFancyEffectsReason(fancyEffect)
@@ -623,6 +624,7 @@ Kirigami.ScrollablePage {
} }
Connections { Connections {
enabled: Config.showFancyEffects
target: chatTextInput target: chatTextInput
onFancyEffectsReasonFound: { onFancyEffectsReasonFound: {
fancyEffectsContainer.processFancyEffectsReason(fancyEffect) fancyEffectsContainer.processFancyEffectsReason(fancyEffect)

View File

@@ -99,34 +99,36 @@ void MessageEventModel::setRoom(NeoChatRoom *room)
using namespace Quotient; using namespace Quotient;
connect(m_currentRoom, &Room::aboutToAddNewMessages, this, [=](RoomEventsRange events) { connect(m_currentRoom, &Room::aboutToAddNewMessages, this, [=](RoomEventsRange events) {
for (auto &event : events) { if (NeoChatConfig::self()->showFancyEffects()) {
RoomMessageEvent *message = dynamic_cast<RoomMessageEvent *>(event.get()); for (auto &event : events) {
if (message) { RoomMessageEvent *message = dynamic_cast<RoomMessageEvent *>(event.get());
QString planBody = message->plainBody(); if (message) {
// snowflake QString planBody = message->plainBody();
QString snowlakeEmoji = QString::fromUtf8("\xE2\x9D\x84"); // snowflake
if (planBody.contains(snowlakeEmoji)) { QString snowlakeEmoji = QString::fromUtf8("\xE2\x9D\x84");
Q_EMIT fancyEffectsReasonFound(QStringLiteral("snowflake")); if (planBody.contains(snowlakeEmoji)) {
} Q_EMIT fancyEffectsReasonFound(QStringLiteral("snowflake"));
// fireworks }
QString fireworksEmoji = QString::fromUtf8("\xF0\x9F\x8E\x86"); // fireworks
if (planBody.contains(fireworksEmoji)) { QString fireworksEmoji = QString::fromUtf8("\xF0\x9F\x8E\x86");
Q_EMIT fancyEffectsReasonFound(QStringLiteral("fireworks")); if (planBody.contains(fireworksEmoji)) {
} Q_EMIT fancyEffectsReasonFound(QStringLiteral("fireworks"));
// sparkler }
QString sparklerEmoji = QString::fromUtf8("\xF0\x9F\x8E\x87"); // sparkler
if (planBody.contains(sparklerEmoji)) { QString sparklerEmoji = QString::fromUtf8("\xF0\x9F\x8E\x87");
Q_EMIT fancyEffectsReasonFound(QStringLiteral("fireworks")); if (planBody.contains(sparklerEmoji)) {
} Q_EMIT fancyEffectsReasonFound(QStringLiteral("fireworks"));
// party pooper }
QString partyEmoji = QString::fromUtf8("\xF0\x9F\x8E\x89"); // party pooper
if (planBody.contains(partyEmoji)) { QString partyEmoji = QString::fromUtf8("\xF0\x9F\x8E\x89");
Q_EMIT fancyEffectsReasonFound(QStringLiteral("confetti")); if (planBody.contains(partyEmoji)) {
} Q_EMIT fancyEffectsReasonFound(QStringLiteral("confetti"));
// confetti ball }
QString confettiEmoji = QString::fromUtf8("\xF0\x9F\x8E\x8A"); // confetti ball
if (planBody.contains(confettiEmoji)) { QString confettiEmoji = QString::fromUtf8("\xF0\x9F\x8E\x8A");
Q_EMIT fancyEffectsReasonFound(QStringLiteral("confetti")); if (planBody.contains(confettiEmoji)) {
Q_EMIT fancyEffectsReasonFound(QStringLiteral("confetti"));
}
} }
} }
} }